<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.3 20210610//EN" "JATS-journalpublishing1-3.dtd">
<article article-type="research-article" dtd-version="1.3" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xml:lang="ru"><front><journal-meta><journal-id journal-id-type="publisher-id">donstu</journal-id><journal-title-group><journal-title xml:lang="ru">Advanced Engineering Research (Rostov-on-Don)</journal-title><trans-title-group xml:lang="en"><trans-title>Advanced Engineering Research (Rostov-on-Don)</trans-title></trans-title-group></journal-title-group><issn pub-type="epub">2687-1653</issn><publisher><publisher-name>Don State Technical University</publisher-name></publisher></journal-meta><article-meta><article-id pub-id-type="doi">10.23947/2687-1653-2023-23-2-121-129</article-id><article-id custom-type="elpub" pub-id-type="custom">donstu-2031</article-id><article-categories><subj-group subj-group-type="heading"><subject>Research Article</subject></subj-group><subj-group subj-group-type="section-heading" xml:lang="ru"><subject>МЕХАНИКА</subject></subj-group><subj-group subj-group-type="section-heading" xml:lang="en"><subject>MECHANICS</subject></subj-group></article-categories><title-group><article-title>Реализация базовых операций для разреженных матриц в контексте решения обобщенной задачи на собственные значения в комплексе ACELAN-COMPOS</article-title><trans-title-group xml:lang="en"><trans-title>Implementation of Basic Operations for Sparse Matrices when Solving a Generalized Eigenvalue Problem in the ACELAN-COMPOS Complex</trans-title></trans-title-group></title-group><contrib-group><contrib contrib-type="author" corresp="yes"><contrib-id contrib-id-type="orcid">https://orcid.org/0000-0003-2311-7562</contrib-id><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Оганесян</surname><given-names>П. А.</given-names></name><name name-style="western" xml:lang="en"><surname>Oganesyan</surname><given-names>P. A.</given-names></name></name-alternatives><bio xml:lang="ru"><p>Павел Артурович Оганесян, кандидат физико-математических наук, доцент кафедры математического моделирования Института математики, механики и компьютерных наук</p><p>344006, РФ, г. Ростов-на-Дону, ул. Большая Садовая, 105/42</p></bio><bio xml:lang="en"><p>Pavel A. Oganesyan, Cand.Sci. (Phys.-Math.), associate professor of the Mathematical Modeling Department, Vorovich Institute for Mathematics, Mechanics, and Computer Science</p><p>105/42, Bolshaya Sadovaya St., Rostov-on-Don, 344006, RF</p></bio><email xlink:type="simple">poganesyan@sfedu.ru</email><xref ref-type="aff" rid="aff-1"/></contrib><contrib contrib-type="author" corresp="yes"><contrib-id contrib-id-type="orcid">https://orcid.org/0000-0003-1702-065X</contrib-id><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Штейн</surname><given-names>О. О.</given-names></name><name name-style="western" xml:lang="en"><surname>Shtein</surname><given-names>O. O.</given-names></name></name-alternatives><bio xml:lang="ru"><p>Ольга Олеговна Штейн, ассистент кафедры прикладной математики и программирования Института математики, механики и компьютерных наук</p><p>344006, РФ, г. Ростов-на-Дону, ул. Большая Садовая, 105/42</p></bio><bio xml:lang="en"><p>Olga O. Shtein, teaching assistant of the Applied Mathematics and Programming Department, Vorovich Institute for Mathematics, Mechanics, and Computer Science</p><p>105/42, Bolshaya Sadovaya St., Rostov-on-Don, 344006, RF</p></bio><email xlink:type="simple">shteyn@sfedu.ru</email><xref ref-type="aff" rid="aff-1"/></contrib></contrib-group><aff-alternatives id="aff-1"><aff xml:lang="ru"><institution>Южный федеральный университет</institution><country>Россия</country></aff><aff xml:lang="en"><institution>Southern Federal University</institution><country>Russian Federation</country></aff></aff-alternatives><pub-date pub-type="collection"><year>2023</year></pub-date><pub-date pub-type="epub"><day>14</day><month>07</month><year>2023</year></pub-date><volume>23</volume><issue>2</issue><fpage>121</fpage><lpage>129</lpage><permissions><copyright-statement>Copyright &amp;#x00A9; Оганесян П.А., Штейн О.О., 2023</copyright-statement><copyright-year>2023</copyright-year><copyright-holder xml:lang="ru">Оганесян П.А., Штейн О.О.</copyright-holder><copyright-holder xml:lang="en">Oganesyan P.A., Shtein O.O.</copyright-holder><license license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by/4.0/" xlink:type="simple"><license-p>This work is licensed under a Creative Commons Attribution 4.0 License.</license-p></license></permissions><self-uri xlink:href="https://www.vestnik-donstu.ru/jour/article/view/2031">https://www.vestnik-donstu.ru/jour/article/view/2031</self-uri><abstract><sec><title>Введение</title><p>Введение. Широкое использование пьезоматериалов в различных отраслях стимулирует изучение их физических характеристик и обусловливает актуальность таких изысканий. В рассматриваемом случае модальный анализ позволяет определить рабочую частоту и коэффициент электромеханической связи пьезоэлементов различных устройств. Эти индикаторы представляют серьезный теоретический и прикладной интерес. Цель исследования — разработка численных методов для решения задачи определения частот резонанса в системе упругих тел. Для достижения цели нужны новые подходы к дискретизации задачи на основе метода конечных элементов и выполнение программной реализации выбранного метода на языке С# на платформе .net. Актуальные решения созданы в контексте библиотеки классов комплекса ACELAN-COMPOS. Основанные на обращении матриц известные методы решения обобщенной задачи на собственные значения неприменимы к матрицам большой размерности. Для преодоления этого ограничения в представленной научной работе реализована логика построения матриц масс и созданы программные интерфейсы для обмена данными о задачах на собственные значения с модулями пре- и постпроцессинга.</p></sec><sec><title>Материалы и методы</title><p>Материалы и методы. Для реализации численных методов задействовали платформу .net и язык программирования C#. Валидация результатов исследования проводилась путем сравнения найденных значений с решениями, полученными в известных CAЕ-пакетах (англ. computer-aided engineering — компьютеризированная инженерия). Созданные подпрограммы оценивались с точки зрения производительности и применимости для задач большой размерности. Проводились численные эксперименты с целью валидации новых алгоритмов в задачах малой размерности, которые решаются известными методами в MATLAB. Далее подход тестировали на задачах с большим числом неизвестных и с учетом распараллеливания отдельных операций. Чтобы избежать нахождения обратной матрицы, программно реализовали модифицированный метод Ланцоша. Рассмотрели форматы хранения матриц в оперативной памяти: триплеты, CSR, СSC, SKyline. Для решения системы линейных алгебраических уравнений (СЛАУ) задействовали итерационный симметричный метод LQ, адаптированный к этим форматам хранения.</p></sec><sec><title>Результаты исследования</title><p>Результаты исследования. Разработаны новые расчетные модули, интегрированные в библиотеку классов комплекса ACELAN-COMPOS. Проведены расчеты для определения применимости различных форматов хранения разреженных матриц в оперативной памяти и различных методов реализации операций с разреженными матрицами. Графически визуализирована структура матриц жесткости, построенных для одной и той же задачи, но с различной перенумерацией узлов конечноэлементной сетки. Применительно к задаче теории электроупругости обобщены и представлены в виде таблицы данные о времени, необходимом на выполнение базовых операций с матрицами жесткости в различных форматах хранения. Установлено, что перенумерация узлов сетки дает существенный прирост производительности даже без изменения внутренней структуры матрицы в памяти. С учетом поставленных задач исследования названы преимущества и слабые стороны известных форматов хранения матриц. Так, CSR оптимален при умножении матрицы на вектор, SKS — при обращении матрицы. В задачах с числом неизвестных порядка 103 выигрывают в скорости итерационные методы решения обобщенной задачи на собственные значения. Оценивалась производительность программной реализации метода Ланцоша. Измерялся вклад всех операций в общее время решения. Выяснилось, что операция решения СЛАУ занимает до 95 % от общего времени работы алгоритма. При решении СЛАУ симметричным методом LQ наибольшие вычислительные затраты нужны для умножения матрицы на вектор. Для увеличения производительности алгоритма прибегли к распараллеливанию с общей памятью. При использовании восьми потоков производительность выросла на 40–50 %.</p></sec><sec><title>Обсуждение и заключение</title><p>Обсуждение и заключение. Полученные в рамках научной работы программные модули были внедрены в пакет ACELAN-COMPOS. Оценена их производительность для модельных задач с квазирегулярными конечноэлементными сетками. С учетом особенностей структур матриц жесткости и масс, получаемых при решении обобщенной задачи на собственные значения для электроупругого тела, определены предпочтительные методы для их обработки.</p></sec></abstract><trans-abstract xml:lang="en"><sec><title>Introduction</title><p>Introduction. The widespread use of piezoelectric materials in various industries stimulates the study of their physical characteristics and determines the urgency of such research. In this case, modal analysis makes it possible to determine the operating frequency and the coefficient of electromechanical coupling of piezoelectric elements of various devices. These indicators are of serious theoretical and applied interest. The study was aimed at the development of numerical methods for solving the problem of determining resonance frequencies in a system of elastic bodies. To achieve this goal, we needed new approaches to the discretization of the problem based on the finite element method and the execution of the software implementation of the selected method in C# on the .net platform. Current solutions were created in the context of the ACELAN-COMPOS class library. The known methods of solving the generalized eigenvalue problem based on matrix inversion are not applicable to large-dimensional matrices. To overcome this limitation, the presented scientific work implemented the logic of constructing mass matrices and created software interfaces for exchanging data on eigenvalue problems with pre- and postprocessing modules.</p></sec><sec><title>Materials and Methods</title><p>Materials and Methods. A platform was used to implement numerical methods .net and the C# programming language. Validation of the research results was carried out through comparing the values found with solutions obtained in well-known SAE packages (computer-aided engineering). The created routines were evaluated in terms of performance and applicability for large-scale tasks. Numerical experiments were carried out to validate new algorithms in small-dimensional problems that were solved by known methods in MATLAB. Next, the approach was tested on tasks with a large number of unknowns and taking into account the parallelization of individual operations. To avoid finding the inverse matrix, a modified Lanczos method was programmatically implemented. We examined the formats for storing matrices in RAM: triplets, CSR, СSC, Skyline. To solve a system of linear algebraic equations (SLAE), an iterative symmetric LQ method adapted to these storage formats was used.</p></sec><sec><title>Results</title><p>Results. New calculation modules integrated into the class library of the ACELAN-COMPOS complex were developed. Calculations were carried out to determine the applicability of various formats for storing sparse matrices in RAM and various methods for implementing operations with sparse matrices. The structure of stiffness matrices constructed for the same task, but with different renumbering of nodes of a finite element grid, was graphically visualized. In relation to the problem of the theory of electroelasticity, data on the time required to perform basic operations with stiffness matrices in various storage formats were summarized and presented in the form of a table. It has been established that the renumbering of grid nodes gives a significant increase in performance even without changing the internal structure of the matrix in memory. Taking into account the objectives of the study, the advantages and weaknesses of known matrix storage formats were named. Thus, CSR was optimal when multiplying a matrix by a vector, SKS was optimal when inverting a matrix. In problems with the number of unknowns of the order of 103, iterative methods for solving a generalized eigenvalue problem won in speed. The performance of the software implementation of the Lanczos method was evaluated. The contribution of all operations to the total solution time was measured. It has been found that the operation of solving SLAE takes up to 95% of the total time of the algorithm. When solving the SLAE by symmetric LQ method, the greatest computational costs were needed to multiply the matrix by a vector. To increase the performance of the algorithm, parallelization with shared memory was resorted to. When using eight threads, the performance gain increased by 40–50%.</p><p>Discussion and Conclusion. The software modules obtained as part of the scientific work were implemented in the ACELAN-COMPOS package. Their performance for model problems with quasi-regular finite element grids was estimated. Taking into account the features of the structures of the stiffness and mass matrices obtained through solving the generalized eigenvalue problem for an electroelastic body, the preferred methods for their processing were determined.</p></sec></trans-abstract><kwd-group xml:lang="ru"><kwd>пьезоматериалы</kwd><kwd>метод конечных элементов</kwd><kwd>разреженные матрицы</kwd><kwd>обобщенная задача на собственные значения</kwd><kwd>метод Ланцоша</kwd><kwd>подпространство Крылова</kwd><kwd>модуль препроцессинга</kwd><kwd>модуль постпроцессинга</kwd><kwd>триплеты</kwd><kwd>координатный формат хранения</kwd><kwd>сжатый разреженный ряд</kwd><kwd>CSR</kwd><kwd>сжатый разреженный столбец</kwd><kwd>CSC</kwd><kwd>SKyline</kwd></kwd-group><kwd-group xml:lang="en"><kwd>piezoelectric materials</kwd><kwd>finite element method</kwd><kwd>sparse matrices</kwd><kwd>generalized eigenvalue problem</kwd><kwd>Lanczos method</kwd><kwd>Krylov subspace</kwd><kwd>preprocessing module</kwd><kwd>postprocessing module</kwd><kwd>triplets</kwd><kwd>coordinate storage format</kwd><kwd>compressed sparse row</kwd><kwd>CSR</kwd><kwd>compressed sparse column</kwd><kwd>CSC</kwd><kwd>Skyline</kwd></kwd-group><funding-group><funding-statement xml:lang="ru">авторы выражают благодарность А.Н. Соловьеву и Т.С. Мартыновой за помощь в разработке численных методов и Российскому научному фонду за финансовую поддержку исследования грантом № 22–21–00318, https://rscf.ru/project/22-21-00318</funding-statement><funding-statement xml:lang="en">the authors would like to thank AN Solovyov and TS Martynova for their assistance in the development of numerical methods. Thanks are extended to the Russian Scientific Foundation for financial support of the research with grant no. 22–21–00318, https://rscf.ru/project/22-21-00318</funding-statement></funding-group></article-meta></front><body><p>Введение. Устройства из пьезоматериалов широко используются, давно активно изучаются и совершенствуются. Отдельно следует отметить медицинские ультразвуковые приборы (оборудование для диагностики, ультразвуковые скальпели) [1–4] и мобильные генераторы энергии [<xref ref-type="bibr" rid="cit5">5</xref>]. Исследование [<xref ref-type="bibr" rid="cit6">6</xref>] описывает комбинирование фото- и пьезоэлектрического эффектов для создания действенных компактных источников энергии. В науке и промышленности изучаются новые материалы, рассчитанные на эксплуатацию в специфических условиях. В [<xref ref-type="bibr" rid="cit7">7</xref>] рассматривается создание бессвинцового пьезоактивного состава, подходящего для эксплуатации при различных температурах.</p><p>В исследовании пьезоэлементов важную роль играет этап модального анализа, позволяющий установить частоты резонанса и антирезонанса устройства. Эти данные:</p><p>Цель исследования — создание численных методов решения задачи определения частот резонанса для системы упругих тел. Достижение заявленной цели требует решения двух задач. Первая: разработать методы дискретизации задачи на основе метода конечных элементов (МКЭ). Вторая: провести программную реализацию выбранного метода на языке С# на платформе .net. Все известные программы учитывают контекст библиотеки классов комплекса ACELAN-COMPOS [<xref ref-type="bibr" rid="cit8">8</xref>]. При решении обобщенной задачи на собственные значения широко применяются методы, основанные на обращении матриц. Однако они неприменимы к матрицам большой размерности. В представленной научной работе это ограничение преодолевается следующим образом:</p><p>Материалы и методы. В первую очередь предлагаемый подход призван решать статические задачи электроупругости при реализации метода осреднения [<xref ref-type="bibr" rid="cit9">9</xref>], который задействуют для расчета эффективных свойств пьезокомпозитов. В связи с этим на этапе построения глобальных матриц МКЭ представлены только матрицы жесткости. В данном исследовании дополнительно реализовали логику построения матриц масс и разработали программные интерфейсы (application programming interface, API, англ. — интерфейс прикладного программирования) для обмена данными о задачах на собственные значения с модулями пре- и постпроцессинга. Разработанные подпрограммы оценивались с точки зрения производительности и применимости для задач большой размерности. Проводились численные эксперименты с целью валидации созданных алгоритмов для таких задач малой размерности, которые позволяют получить решение общими методами в вычислительном пакете MATLAB. Далее выполнялось тестирование на задачах с большим числом неизвестных и с учетом распараллеливания отдельных операций.</p><p>Математическая модель решаемой задачи состоит из определяющих соотношений [<xref ref-type="bibr" rid="cit9">9</xref>]:</p><p>,,(1)</p><p>, , (2)</p><p>, (3)</p><p>Здесь σ — тензор напряжений; ρj — плотность тела; ε — тензор деформаций; u — вектор перемещений; D — вектор электрической индукции; E — вектор напряженности электрического поля;  — вектор массовых сил;  — электрический потенциал; , ,  — коэффициенты демпфирования; , ,  — тензоры упругих констант, пьезомодулей и диэлектрических проницаемостей; индекс j — номер тела в модели.</p><p>Дискретизация выполняется заменой:</p><p>Здесь  — матрица функций формы для поля перемещений;</p><p>Nϕ — вектор функций формы для электрического потенциала;</p><p> — глобальные векторы соответствующих узловых степеней свободы.</p><p>В таком случае исходная задача (1–3) приобретает вид:</p><p>. (4)</p><p>Здесь матрицы  и  являются глобальными матрицами масс и жесткости соответственно, а вектор представляет собой общий вектор неизвестных:</p><p>a = [U, Ф].</p><p>В задаче теории электроупругости:</p><p>(5)</p><p>Матрицы ,  и — симметричные. В случае гармонических колебаний на собственной частоте  можно записать:</p><p>, обозначив через  соответствующий собственный вектор.</p><p>Рассмотрим свободные колебания если . В этом случае задача (4) представляется в виде:</p><p>. (6)</p><p>Таким образом, исходная задача сводится к обобщенной задаче на собственные значения (6). Для ненулевого vi неравенство (6) решается нахождением матрицы, обратной K. Однако при этом разреженная матрица становится заполненной, то есть метод непригоден для матриц больших размеров. Поэтому нужно использовать другие методы, не требующие нахождения обратной матрицы. Для решения этой задачи в данной работе программно реализован модифицированный метод Ланцоша [<xref ref-type="bibr" rid="cit10">10</xref>]. Автор этой модификации — Т.С. Мартынова. Описание разработки в данной статье не приводится. Из используемых в методе операций наиболее затратной с точки зрения вычислительных ресурсов оказалось решение системы линейных алгебраических уравнений (СЛАУ), необходимое для выполнения спектральной трансформации.</p><p>Матрицы  и  — разреженные, с небольшим числом ненулевых элементов. Для хранения таких матриц в оперативной памяти используются несколько форматов:</p><p>Координатный формат предполагает хранение троек (триплетов) значений (i, j, k), представляющих собой координаты (i, j) и значения (k) ненулевых элементов. CSR иногда называют CRS или Йельским форматом. Он предполагает хранение разреженной матрицы в виде трех массивов. Рассмотрим матрицу размера  с  ненулевыми элементами. Опишем возможную организацию ее хранения. Все ненулевые элементы нужно разместить в одном массиве размера. Позиции этих элементов в столбцах разместить в другом массиве размера , а третий массив размера  использовать для хранения индексов первых элементов строк. Аналогично реализуется хранение в формате CSC.</p><p>Формат SKS предполагает хранение ленты матрицы переменной ширины, включающей в себя все ненулевые элементы. В этом случае допускается хранение нулей. Эффективность этого формата зависит от перенумерации строк матрицы. Методы сокращения размера ленты описаны в [<xref ref-type="bibr" rid="cit11">11</xref>], однако требует отдельного исследования их применимость к матрице жесткости, получаемой при решении трехмерной задачи с использованием МКЭ.</p><p>Для решения СЛАУ задействовали итерационный симметричный метод LQ (Symmetric LQ Method, SYMMLQ [<xref ref-type="bibr" rid="cit12">12</xref>]), адаптированный к перечисленным выше форматам хранения.</p><p>Результаты исследования. В начале исследования выбрали оптимальный формат хранения для разреженных матриц. Координатный формат позволяет быстро добавлять и изменять элемент матрицы. Эти операции необходимы на этапе сборки глобальной матрицы и при учете граничных условий. Кроме того, для плохо обусловленных матриц, к которым относится K, часто применяют предварительное преобразование для нормирования. Его также удобно выполнять в координатном формате. Однако такой формат неэффективен, если речь идет об алгебраических операциях.</p><p>CSR плохо приспособлен для изменения структуры матрицы: добавляя ненулевой элемент, нужно выполнять вставку в два массива. При этом матрица умножается на вектор очень просто и эффективно.</p><p>SKS имеет аналогичные проблемы с добавлением ненулевых элементов и сильно зависит от перенумерации неизвестных в задаче. Остановимся на примере квазирегулярной сетки, которая используется в пакете ACELAN-COMPOS для работы с представительными объемами композитов. Ширина ленты, содержащей все ненулевые элементы, может быть определена заранее и зависит от числа узлов и типа конечного элемента. В общем случае произвольной конечноэлементной сетки сложно заранее оценить размер ленты.</p><p>В численных экспериментах использовали четыре способа нумерации неизвестных. На рис. 1 представлена структура матриц жесткости, построенных для одной и той же задачи, но с различной перенумерацией узлов конечноэлементной сетки.</p><fig id="fig-1"><caption><p>Рис. 1. Структура матриц жесткости при различных методах нумерации узлов:а — неизвестные упорядочены по узлам;б — сначала упорядочены по узлам перемещения, затем потенциалы; в — узлы отсортированы по слоям КЭ-сетки, а неизвестные — по узлам; б, г — узлы отсортированы по слоям КЭ-сетки, а неизвестные — как в примере</p></caption><graphic xlink:href="donstu-23-2-g001.jpeg"><uri content-type="original_file">https://cdn.elpub.ru/assets/journals/donstu/2023/2/3gmy5IlOa4V9QTNR6UBkBkRspzHepS478HBKG85c.jpeg</uri></graphic></fig><p>Итак, сетка представляла собой куб с регулярным разбиением восьмиузловыми конечными элементами. Для иллюстраций использовалась модельная матрица из 500 строк. Матрицы, представленные на рис. 1 а и 1 б, не подвергались дополнительной перенумерации узлов и отличаются только нумерацией степеней свободы. В 1 а:</p><p>.</p><p>В 1 б неизвестные, отвечающие за распределение потенциала, собраны в конце вектора:</p><p>.</p><p>Неизвестные в матрицах 1 в и 1 г занумерованы аналогично, но узлы конечноэлементной сетки предварительно перенумерованы согласно их координатам путем поочередной сортировки всех узлов по каждой из координат. Такой прием широко используется для построения более эффективных модулей решения СЛАУ, так как позволяет работать с матрицей в специальном ленточном формате, удобном для распараллеливания. Для комплекса ACELAN-COMPOS реализованы подобные внешние модули [13–15], однако в данной работе использовались только форматы хранения разреженных матриц общего вида.</p><p>В таблице 1 сведены данные о времени, необходимом на выполнение базовых операций с матрицами в различных форматах.</p><table-wrap id="table-1"><caption><p>Таблица 1</p><p>Время для выполнения базовых операций с матрицей жесткости в задаче теории электроупругости.</p><p>19 652 строки</p></caption><table><tbody><tr><td>Формат хранения</td><td>Операция</td><td>Затраченное время, мс</td></tr><tr><td>1 а</td><td>1 б</td><td>1 в</td><td>1 г</td></tr><tr><td>CSR</td><td>Конвертация из координатного формата</td><td>123</td><td>132</td><td>97</td><td>117</td></tr><tr><td>CSR</td><td>Умножение на вектор, 100 операций</td><td>260</td><td>260</td><td>260</td><td>260</td></tr><tr><td>SKS</td><td>Конвертация из координатного формата</td><td>690</td><td>703</td><td>124</td><td>268</td></tr><tr><td>SKS</td><td>Умножение на вектор, 100 операций</td><td>60 558</td><td>61 450</td><td>7 616</td><td>22 113</td></tr></tbody></table></table-wrap><p>Результаты экспериментов показали, что операция преобразования из координатного формата хранения в компактные занимает мало времени. При этом перенумерация узлов сетки для формирования блочно-ленточной матрицы позволяет получить заметный прирост производительности даже без изменения внутренней структуры матрицы в памяти. Формат CSR оказался оптимальным с точки зрения эффективности операции умножения матрицы на вектор. При обращении матрицы формат SKS более эффективен, однако для задач с числом неизвестных порядка 103 заметно быстрее работают итерационные методы решения обобщенной задачи на собственные значения.
Далее экспериментально оценили производительность программной реализации метода Ланцоша. Измерили вклад всех операций в общее время решения. В результате установили, что операция решения СЛАУ занимает до 95 % от общего времени работы алгоритма. В ходе работы алгоритма строится подпространство Крылова, и в зависимости от его размерности меняется число СЛАУ, которые необходимо решать. Отметим, что размерность подпространства Крылова выбиралась на основе эвристик относительно числа искомых собственных значений. При этом СЛАУ отличаются только правой частью, благодаря чему требования к выделяемой памяти остаются невысокими. Среди базовых операций, применяемых в ходе решения СЛАУ методом SYMMLQ, наибольшие вычислительные затраты нужны для умножения матрицы на вектор.
Для увеличения производительности алгоритма реализовано простейшее распараллеливание с общей памятью. Для формата CRS выделялись блоки строк. Они передавались в отдельные потоки, которые вычисляли соответствующие компоненты результирующего вектора. Прирост производительности составил 40–50 % при использовании 8 потоков. При этом для матриц порядка 103 элементов прирост был около 40 %, а для матриц порядка 104 — около 50 %.
</p><p>Обсуждение и заключение. В рамках данной работы реализован метод решения обобщенной задачи на собственные значения для матриц, получаемых при моделировании электроупругих тел. Созданы программные модули на языке C# для построения матриц масс методом конечных элементов и выполнения вспомогательных операций в рамках метода Ланцоша (работа с векторами подпространства Крылова, переортогонализация, нахождение собственных векторов). Вычислительная сложность обусловлена в основном операциями умножения разреженных матриц на вектор. В связи с этим проводились численные эксперименты по определению оптимальных форматов хранения матриц, оптимальной структуры матрицы, получаемой в результате перенумерации узлов КЭ-сетки и степеней свободы в узлах. Разработана версия итерационного алгоритма SYMMLQ с использованием параллельных вычислений. Итоговая схема работы включает три пункта. Во-первых, строятся глобальные матрицы в координатном формате с алгоритмом перенумерации (рис. 1 в). Во-вторых, данные преобразуются в формат CRS. В-третьих, данные обрабатываются методом Ланцоша, который включает метод SYMMLQ для решения СЛАУ. Результаты работы включили в программный пакет ACELAN-COMPOS.</p></body><back><ref-list><title>References</title><ref id="cit1"><label>1</label><citation-alternatives><mixed-citation xml:lang="ru">Lisong Deng, Mingxiang Ling. Design and Integrated Stroke Sensing of a High-Response Piezoelectric Direct Drive Valve Enhanced by Push-Pull Compliant Mechanisms. Review of Scientific Instruments. 2022;93(3):035008. https://doi.org/10.1063/5.0067483</mixed-citation><mixed-citation xml:lang="en">Lisong Deng, Mingxiang Ling. Design and Integrated Stroke Sensing of a High-Response Piezoelectric Direct Drive Valve Enhanced by Push-Pull Compliant Mechanisms. Review of Scientific Instruments. 2022;93(3):035008. https://doi.org/10.1063/5.0067483</mixed-citation></citation-alternatives></ref><ref id="cit2"><label>2</label><citation-alternatives><mixed-citation xml:lang="ru">Urtnasan Erdenebayar, Jong-Uk Park, Pilsoo Jeong, et al. Obstructive Sleep Apnea Screening Using a Piezo-Electric Sensor. Journal of Korean Medical Science. 2017;32(6):893–899. https://doi.org/10.3346/jkms.2017.32.6.893</mixed-citation><mixed-citation xml:lang="en">Urtnasan Erdenebayar, Jong-Uk Park, Pilsoo Jeong, et al. Obstructive Sleep Apnea Screening Using a Piezo-Electric Sensor. Journal of Korean Medical Science. 2017;32(6):893–899. https://doi.org/10.3346/jkms.2017.32.6.893 3. Skaliukh AS, Gerasimenko TE, Oganesyan PA, Solovieva AA. Effect of Geometric and Physical Parameters on Resonant Frequencies of Ultrasonic Vibrations of Elastic and Piezoelectric Element System. Vestnik of Don State Technical University. 2017;17(4):5–13. https://doi.org/10.23947/1992-5980-2017-17-4-5-13</mixed-citation></citation-alternatives></ref><ref id="cit3"><label>3</label><citation-alternatives><mixed-citation xml:lang="ru">Скалиух А.С., Герасименко Т.Е., Оганесян П.А., Соловьева А.А. Влияние геометрических и физических параметров на резонансные частоты ультразвуковых колебаний системы упругих и пьезоэлектрических элементов. Вестник Донского государственного технического университета. 2017;17(4):5–13. https://doi.org/10.23947/1992-5980-2017-17-4-5-13</mixed-citation><mixed-citation xml:lang="en">Bulletti A, Capineri L, Floridia D. Automatic System to Measure the Impedance of Piezoelectric Actuators Used in Ultrasonic Scalpels. In book: Sensors and Microsystems. Cham: Springer; 2014. Vol. 268. P. 71–74. https://doi.org/10.1007/978-3-319-00684-0_14</mixed-citation></citation-alternatives></ref><ref id="cit4"><label>4</label><citation-alternatives><mixed-citation xml:lang="ru">Bulletti A., Capineri L., Floridia D. Automatic System to Measure the Impedance of Piezoelectric Actuators Used in Ultrasonic Scalpels. In book: Sensors and Microsystems. Cham: Springer; 2014. Vol. 268. P. 71–74. https://doi.org/10.1007/978-3-319-00684-0_14</mixed-citation><mixed-citation xml:lang="en">Keli Li, Qisheng He, Jiachou Wang, et al. Wearable Energy Harvesters Generating Electricity from Low-Frequency Human Limb Movement. Microsystems &amp; Nanoengineering. 2018;4:24. https://doi.org/10.1038/s41378-018-0024-3</mixed-citation></citation-alternatives></ref><ref id="cit5"><label>5</label><citation-alternatives><mixed-citation xml:lang="ru">Keli Li, Qisheng He, Jiachou Wang, et al. Wearable Energy Harvesters Generating Electricity from Low-Frequency Human Limb Movement. Microsystems &amp; Nanoengineering. 2018;4:24. https://doi.org/10.1038/s41378-018-0024-3</mixed-citation><mixed-citation xml:lang="en">Wenbo Peng, Chenhong Wang, Fangpei Li, et al. Piezo- and Photo-Voltage Field-Effect Transistor. Nano Energy. 2022;105:108025. https://doi.org/10.1016/j.nanoen.2022.108025</mixed-citation></citation-alternatives></ref><ref id="cit6"><label>6</label><citation-alternatives><mixed-citation xml:lang="ru">Wenbo Peng, Chenhong Wang, Fangpei Li, et al. Piezo- and Photo-Voltage Field-Effect Transistor. Nano Energy. 2022;105:108025. https://doi.org/10.1016/j.nanoen.2022.108025</mixed-citation><mixed-citation xml:lang="en">Tangyuan Li, Chang Liu, Peng Shi, et al. High-Performance Strain of Lead-Free Relaxor-Ferroelectric Piezoceramics by the Morphotropic Phase Boundary Modification. Advanced Functional Materials. 2022;32(32):2202307. https://doi.org/10.1002/adfm.202270184</mixed-citation></citation-alternatives></ref><ref id="cit7"><label>7</label><citation-alternatives><mixed-citation xml:lang="ru">Tangyuan Li, Chang Liu, Peng Shi, et al. High-Performance Strain of Lead-Free Relaxor-Ferroelectric Piezoceramics by the Morphotropic Phase Boundary Modification. Advanced Functional Materials. 2022;32(32):2202307. https://doi.org/10.1002/adfm.202270184</mixed-citation><mixed-citation xml:lang="en">Kurbatova NV, Nadolin DK, Nasedkin AV, et al. Finite Element Approach for Composite Magneto-Piezoelectric Materials Modeling in ACELAN-COMPOS Package. In book: Analysis and Modelling of Advanced Structures and Smart Systems. Singapore: Springer; 2018. Vol. 81. P. 69–88. https://doi.org/10.1007/978-981-10-6895-9_5</mixed-citation></citation-alternatives></ref><ref id="cit8"><label>8</label><citation-alternatives><mixed-citation xml:lang="ru">Kurbatova N.V., Nadolin D.K., Nasedkin A.V., et al. Finite Element Approach for Composite Magneto-Piezoelectric Materials Modeling in ACELAN-COMPOS Package. In book: Analysis and Modelling of Advanced Structures and Smart Systems. Singapore: Springer; 2018. Vol. 81. P. 69–88. https://doi.org/10.1007/978-981-10-6895-9_5</mixed-citation><mixed-citation xml:lang="en">Belokon AV, Nasedkin AV, Soloviev AN. Novye skhemy konechnoehlementnogo dinamicheskogo analiza p'ezoehlektricheskikh ustroistv. Journal of Applied Mathematics and Mechanics. 2002;66(3):491–501. (In Russ.)</mixed-citation></citation-alternatives></ref><ref id="cit9"><label>9</label><citation-alternatives><mixed-citation xml:lang="ru">Белоконь А.В., Наседкин А.В., Соловьев А.Н. Новые схемы конечноэлементного динамического анализа пьезоэлектрических устройств. Прикладная математика и механика. 2002;66(3):491–501.</mixed-citation><mixed-citation xml:lang="en">Zhongming Teng, Lei-Hong Zhang. A Block Lanczos Method for the Linear Response Eigenvalue Problem. Electronic Transactions on Numerical Analysis. 2017;46:505–523. https://doi.org/10.13140/RG.2.2.16369.68962</mixed-citation></citation-alternatives></ref><ref id="cit10"><label>10</label><citation-alternatives><mixed-citation xml:lang="ru">Zhongming Teng, Lei-Hong Zhang. A Block Lanczos Method for the Linear Response Eigenvalue Problem. Electronic Transactions on Numerical Analysis. 2017;46:505–523. https://doi.org/10.13140/RG.2.2.16369.68962</mixed-citation><mixed-citation xml:lang="en">Chagas G, Oliveira SLGD. Metaheuristic-Based Heuristics for Symmetric-Matrix Bandwidth Reduction: A Systematic Review. Procedia Computer Science. 2015;51:211–220. https://doi.org/10.1016/j.procs.2015.05.229</mixed-citation></citation-alternatives></ref><ref id="cit11"><label>11</label><citation-alternatives><mixed-citation xml:lang="ru">Chagas G., Oliveira S.L.G.D. Metaheuristic-Based Heuristics for Symmetric-Matrix Bandwidth Reduction: A Systematic Review. Procedia Computer Science. 2015;51:211–220. https://doi.org/10.1016/j.procs.2015.05.229</mixed-citation><mixed-citation xml:lang="en">Paige CC, Saunders MA. Solution of Sparse Indefinite Systems of Linear Equations. SIAM Journal on Numerical Analysis. 1975;12(4):617–629. https://doi.org/10.1137/0712047</mixed-citation></citation-alternatives></ref><ref id="cit12"><label>12</label><citation-alternatives><mixed-citation xml:lang="ru">Paige C.C., Saunders M.A. Solution of Sparse Indefinite Systems of Linear Equations. SIAM Journal on Numerical Analysis. 1975;12(4):617–629. https://doi.org/10.1137/0712047</mixed-citation><mixed-citation xml:lang="en">Fassbender H, Ikramov K. SYMMLQ-like Procedure of Ax = b where A is a Special Normal Matrix. Calcolo. 2006;43(1):17–37. https://doi.org/10.1007/s10092-006-0112-x</mixed-citation></citation-alternatives></ref><ref id="cit13"><label>13</label><citation-alternatives><mixed-citation xml:lang="ru">Fassbender H., Ikramov K. SYMMLQ-like Procedure of Ax = b where A is a Special Normal Matrix. Calcolo. 2006;43(1):17–37. https://doi.org/10.1007/s10092-006-0112-x</mixed-citation><mixed-citation xml:lang="en">Vasilenko A, Veselovskiy V, Metelitsa E, et al. Precompiler for the ACELAN-COMPOS Package Solvers. In: Proc. 16th Int. Conf.: Parallel Computing Technologies. Cham: Springer; 2021. Vol. 12942. P. 103–116. https://doi.org/10.1007/978-3-030-86359-3_8 15. Steinberg BYa, Vasilenko AA, Veselovskiy VV, et al. Solvers for Systems of Linear Algebraic Equations with Block-Band Matrices. Bulletin of the South Ural State University. Series “Mathematical Modeling, Programming &amp; Computer Software”. 2021;14(3):106–112. https://doi.org/10.14529/mmp210309</mixed-citation></citation-alternatives></ref><ref id="cit14"><label>14</label><citation-alternatives><mixed-citation xml:lang="ru">Vasilenko A., Veselovskiy V., Metelitsa E., et al. Precompiler for the ACELAN-COMPOS Package Solvers. In: Proc. 16th Int. Conf.: Parallel Computing Technologies. Cham: Springer; 2021. Vol. 12942. P. 103–116. https://doi.org/10.1007/978-3-030-86359-3_8</mixed-citation><mixed-citation xml:lang="en">Vasilenko A., Veselovskiy V., Metelitsa E., et al. Precompiler for the ACELAN-COMPOS Package Solvers. In: Proc. 16th Int. Conf.: Parallel Computing Technologies. Cham: Springer; 2021. Vol. 12942. P. 103–116. https://doi.org/10.1007/978-3-030-86359-3_8</mixed-citation></citation-alternatives></ref><ref id="cit15"><label>15</label><citation-alternatives><mixed-citation xml:lang="ru">Штейнберг Б.Я., Василенко А.А., Веселовский В.В. и др. Решатели СЛАУ с блочно-ленточными матрицами. Вестник Южно-Уральского государственного университета. Серия «Математическое моделирование и программирование». 2021;14(3):106–112. https://doi.org/10.14529/mmp210309</mixed-citation><mixed-citation xml:lang="en">Штейнберг Б.Я., Василенко А.А., Веселовский В.В. и др. Решатели СЛАУ с блочно-ленточными матрицами. Вестник Южно-Уральского государственного университета. Серия «Математическое моделирование и программирование». 2021;14(3):106–112. https://doi.org/10.14529/mmp210309</mixed-citation></citation-alternatives></ref></ref-list><fn-group><fn fn-type="conflict"><p>The authors declare that there are no conflicts of interest present.</p></fn></fn-group></back></article>
