ФИЗИКО-МАТЕМАТИЧЕСКИЕ НАУКИ
АЛГОРИТМЫ ОПРЕДЕЛЕНИЯ КОМПЛЕКСНЫХ РЕШЕНИЙ БСЛАУ С ТРЁХДИАГОНАЛЬНОЙ МАТРИЦЕЙ Шмойлов В.И.1, Коровин Я.С.2, Иванов Д.Я.3 Em ail: [email protected]
'Шмойлов Владимир Ильич — научный сотрудник;
2Коровин Яков Сергеевич — кандидат технических наук;
3Иванов Донат Яковлевич — кандидат технических наук, старший научный сотрудник, НИИ многопроцессорных вычислительных систем Южный федеральный университет, г. Таганрог
Аннотация: в статье рассматриваются расходящиеся бесконечные системы линейных алгебраических уравнений (БСЛАУ) и приводятся примеры решения таких систем. Использование r/ф-алгоритма позволяет найти комплексные решения БСЛАУ, если они имеются, что не обеспечивают известные алгоритмы решения систем. Даётся сравнительный анализ эффективности двух алгоритмов решения расходящихся БСЛАУ — алгоритма, основанного на процедуре редукции, и алгоритма, обеспечивающего быстрые вычисления серии подходящих дробей, необходимых при реализации r/ф-алгоритма. Ключевые слова: бесконечные системы линейных алгебраических уравнений, расходящиеся непрерывные дроби, r/ф-алгоритм.
ALGORITHMS FOR THE DETERMINATION OF COMPLEX SOLUTIONS OF ISLAE WITH A THREE-DIAGONAL MATRIX Shmoylov V.I.1, Korovin Ya.S.2, Ivanov D.Ya.3
'Shmoylov Vladimir Ilyich — Research Fellow; 2Korovin Yakov Sergeevich — Candidate of Technical Sciences;
3Ivanov Donat Yakovlevich — Candidate of Technical Sciences, Senior Researcher, RESEARCH INSTITUTE OF MULTIPROCESSOR COMPUTING SYSTEMS SOUTH FEDERAL UNIVERSITY, TAGANROG
Abstract: the article deals with divergent infinite systems of linear algebraic equations (ISLAE) and gives examples of solutions of such systems. The use of r/p-algorithm allows to find complex solutions of ISLAE, if they exist, that do not provide known algorithms for solving systems. We give a comparative analysis of the effectiveness of two algorithms for solving divergent ISLAE, an algorithm based on the reduction procedure, and an algorithm providing fast calculations of a series of suitable fractions necessary for the realization of the r/^-algorithm.
Keywords: infinite systems of linear algebraic equations, divergent continuous fractions, r/ф-algorithm.
УДК 517.524
Введение
Известно, что при решении систем линейных алгебраических уравнений встречаются принципиальные трудности. В [1] отмечается: «Уже в самых простых случаях, даже при решении линейных уравнений с постоянными коэффициентами, часто бывает, что, казалось бы, разумная разностная схема имеет решение, не сходящееся при измельчении сетки к истинному решению дифференциального уравнения».
Разработанный способ суммирования расходящихся в традиционном смысле непрерывных дробей, так называемый, r/ф-алгоритм [2-5], помог понять природу этих парадоксов, ставящих в тупик даже специалистов. Удивительно, но за долгую историю СЛАУ вопросы о комплексных решениях систем с вещественными матрицами, насколько известно, не поднимались.
Возможность и неизбежность комплексных решений СЛАУ стала очевидной c появлением r/ф-алгоритма. В самом деле, решения СЛАУ с трехдиагональными матрицами записываются по формулам Крамера отношениями определителей, которые несложными преобразованиями
приводятся к отношению трёхдиагональных определителей (п + 1)-го и п-го порядков, представляющих, как известно, непрерывные дроби. Эти непрерывные дроби могут быть как сходящимися, так и расходящимися, в зависимости от коэффициентов вещественной матрицы СЛАУ. Суммирование г/ф-алгоритмом расходящихся непрерывных дробей показывало, что расходящиеся в классическом смысле непрерывные дроби имеют комплексные значения. Оказывалось, что непрерывные дроби с вещественными элементами могут иметь как вещественные, так и комплексные значения. Подходящие дроби для сходящихся и расходящихся непрерывных дробей с вещественными элементами, естественно, вещественные, но г/ф-алгоритм по этим подходящим дробям, или «отсчётам», устанавливал значения непрерывных дробей, которые могли быть как вещественными, так и комплексными.
Возвращаясь к формулам Крамера, можно сказать, что эти формулы следует рассматривать как аналог подходящих дробей, если речь идёт о решении БСЛАУ с использованием процедуры редукции, то есть о решении последовательности СЛАУ увеличивающихся размерностей. Но по значению одной подходящей дроби нельзя судить, даже приближённо, о значении непрерывной дроби, если заранее неизвестно, что непрерывная дробь сходится в классическом смысле. Как уже отмечалось, непрерывная дробь может иметь комплексное значение, которое устанавливается именно по последовательности вещественных подходящих дробей.
Здесь надо уточнить, что комплексные решения для конечных СЛАУ, если они имеют такие решения, будут приближёнными, стремясь к точным в пределе, то есть при решении БСЛАУ. Ситуация аналогичная той, которая случается при определении квадратного корня из числа М, -за конечное число операций точное значение корня, в общем случае, установить нельзя.
Решения БСЛАУ с трёхдиагональной вещественной матрицей могут представляться как сходящимися цепными дробями, так и расходящимися, имеющими комплексные значения. Суммирование расходящихся непрерывных дробей оказалось вне поля зрения даже специалистов, занимающихся сходимостью непрерывных дробей [6, 7]. Естественно, что без учёта комплексных решений общая теория БСЛАУ создана не была, да и не могла быть создана. Статьи, касающиеся тех или иных аспектов решения БСЛАУ, появляются регулярно уже более столетия [8, 9]. Недавно была опубликована монография по бесконечным системам линейных алгебраических уравнений [10].
1. О решении расходящихся БСЛАУ
Довольно часто возникает следующая ситуация: решения системы существуют, но при измельчении шага сетки значения решений системы изменяются, причем, скачкообразно, то есть с ростом размерности СЛАУ не могут быть найдены пределы, к которым бы эти решения стремились. В этом случае говорят, что система является «расходящейся» и решения не могут быть записаны. Возникает вопрос: что это означает для рассматриваемой БСЛАУ? Ответ состоит в следующем: если решаемая система «расходится», то возможно существование комплексных решений БСЛАУ, которые традиционными методами решения не могут быть установлены [11].
Процесс нахождения решения бесконечных систем линейных алгебраических уравнений (БСЛАУ) при помощи г/ф-алгоритма состоит из двух этапов.
Рассмотрим БСЛАУ
АХ=В,
(1)
(<
А =
ал
\
Х = [*1,
х
-„,-]Т , В = [¿1,Ь2,ь3,...,ъп,..],
где А - матрица коэффициентов, Х - вектор искомых решений, В - правая часть системы линейных алгебраических уравнений.
Чтобы узнать, «расходится» данная система или нет, решаем одним из классических методов системы смежных порядков, то есть реализуем известную процедуру редукции, и
строим последовательности, состоящие из этих решений {х^}, то есть последовательности вида
а
12
а
а
а
21
22
а
а
а
и1
п2
Х(3) Х(»))(Х(2) Х(3) Х(4) Х(")!
Х1 , ••• ,Х1 У 1X2 ,Х2 , Х2 , ••• ,Х2 > •••
{Х^, Х^, (2)
? "П э-^п п
Если эти последовательности стремятся к пределам с ростом размерности т системы, то
т ) (т) (т) ~~ (т) V
последовательность корней X Х^ , Х3 ,•••, Х^ т —> да, будет являться искомым
решением рассматриваемой БСЛАУ. В случае, если пределы последовательностей (2) отсутствуют, требуется использовать уже упомянутый выше г/ф-алгоритм, что составляет следующий этап решения расходящихся БСЛАУ. Следует отметить, что при решении расходящихся БСЛАУ т>>п, что обусловлено особенностями г/ф-алгоритма, требующим для определения комплексного числа большого количества вещественных «отсчетов». Этот алгоритм позволяет использовать полученные в общем случае «по Гауссу» вещественные решения расширяющейся системы (1) для получения комплексных решений исходной системы, если они имеются.
Отметим, что термин "расширяющиеся СЛАУ" уже встречался в литературе. Например, известна работа: "О решении последовательности расширяющихся систем линейных алгебраических уравнений" [12]. С термином "расширяющиеся СЛАУ" связаны выражения: "измельчение шагов сетки", "сгущение сетки", "дробление сетки" и другие подобные словосочетания.
При решении расходящихся БСЛАУ модуль г комплексного корня X^ находится по формуле
I т
(3)
г = НтТ П Х(т) , ' = 1,2
»И-^(П II I I
^(т) V
где л> - значение вещественного корня Хг- , полученное «стандартным» алгоритмом
решения СЛАУ размерности т.
Модуль аргумента ф1 комплексного корня Хг- БСЛАУ определяется следующим образом:
к(т)
\щ \ = 7 Кш
т
(4)
где
к
(т)
- количество отрицательных значений X¿ , полученных «стандартным»
алгоритмом решения СЛАУ, из общего количества т значений X^ , найденных из «расширяющейся» системы.
Таким образом, значения г1 и |и| комплексных решений Хг = определяются
формулами:
г (1) = Г1 =
г (2) = Г1 =
г (3) = Г1 =
V 1
Х(1)- Х(2)
■X
г (1) = г2 =
г (2) = г2 =
г (з) = г2 =
х2)
V
31
Х (2) • Х (з) Х2 Х2
Х^ Х(3)- Х(4)
222
И1! = 7к|1),
)\ = 7к{2) /2,
Н(3^ = 7к(3)/3 ,
И211=тк21),
|И2)| = 7к22) /2, И23! = тк23)/3,
Рассматриваемый способ суммирования, то есть г/ф-алгоритм, выходит за рамки традиционных методов, ибо позволяет по последовательности вещественных подходящих
т=1
1
дробей установить некое комплексное число, которое, собственно, и представлено последовательностью подходящих дробей. Признаком комплексности служат перемены знаков элементов последовательности, причем, эти перемены знаков происходят сколь угодно много
раз. Модуль Т1 и аргумент ф1 комплексного числа ге'р , могут быть определены г/ф-
алгоритмом, в данном случае определяемом формулами (3) и (4). 2. Первый алгоритм решения БСЛАУ
Рассмотрим решение расходящейся бесконечной системы с трехдиагональной матрицей (5).
(1 3 0 0 0 0 ^ х1 1
3 1 3 0 0 0 ■■■ х2 1
0 3 1 3 0 0 ■■■ х3 1
0 0 3 1 3 0 ■■■ х4 = 1
0 0 0 3 1 3 ■■■ х5 1
0 0 0 0 3 1 ■■■ х6 1
V ■■■ ■ ■■ ■ ■■) ■■■) V)
При решении БСЛАУ (5) будут использованы два алгоритма, отличающиеся по числу операций, необходимых для получения массивов «подходящих дробей», или «отсчётов», используемых при нахождении комплексных решений БСЛАУ.
Первый метод решения БСЛАУ назовём «методом редукции», так как определение каждого «отчёта» для х1 связано с решением БСЛАУ увеличивающейся размерности, то есть с построением последовательности (2). Неизвестные «расширяющихся» систем (5) определялись стандартной программой, реализующей «прогонку», то есть, классический алгоритм решения СЛАУ с трехдиагональной матрицей. К найденным вещественным решениям СЛАУ увеличивающейся размерности применяется г/ф-алгоритм, который позволяет приближённо находить комплексные решения системы.
В табл. 1-3 приведены результаты решения системы (5), полученные методом редукции с использованием г/ф-алгоритма, который в случае конечных систем описывается модифицированными формулами (3) и (4).
В первой колонке таблиц указана размерность решаемых систем. Во второй колонке
помещены значения X^ (( = 1, 1024, 2048), полученные по методу «прогонки» при решении
СЛАУ различной размерности. Как видно из таблиц, значения X^ , найденные «прогонкой» для расходящихся систем, не стремятся к каким-либо пределам. В то же время, в колонках 3 и 4 табл. 1 - 3 с ростом размерности системы (5) при помощи г/ф-алгоритма устанавливаются значения, соответственно, модулей и аргументов комплексных решений х1 системы (5).
Таблица 1. Определение комплексного значения х1 системы (5)
Размерность системы Значения X ) по методу прогонки Модуль комплексного ъ(т) числа, Г Аргумент комплексного *Лт) числа, (
1 1,0000000000Е+00
2 2,5000000000Е-01 5,0000000000Е-01 0,0000000000Е+00
3 1,1764705882Е-01 3,0867895949Е-01 0,0000000000Е+00
4 -2,0000000000Е-01 2,7694132751Е-01 7,8539816339Е-01
7 5,5118110236Е-02 2,2222649568Е-01 4,4879895051Е-01
8 -4,2500000000Е+0 3,2136233507Е-01 7,8539816339Е-01
15 -4,3165946125Е-01 2,5863181643Е-01 8,3775804095Е-01
16 3,5668263670Е-01 2,6388028905Е-01 7,8539816339Е-01
31 2,3688076606Е-01 2,3380623079Е-01 7,0939188952Е-01
512 2,0210420904Е-01 2,1906592508Е-01 7,0563116242Е-01
1023 -1,4685330261Е-02 2,1913239976Е-01 7,0632092895Е-01
1024 8,3164069729Е-01 2,1941799804Е-01 7,0563116242Е-01
2047 7,1823 829674Е-01 2,1848422394Е-01 7,0290641687Е-01
2048 2,3499458823Е-01 2,1849199570Е-01 7,0256320085Е-01
4095 8,9702766331Е-02 2,1849969174Е-01 7,0273476695Е-01
4096 -5,2252240256Е-01 2,1854620700Е-01 7,0333019129Е-01
Размернос ть системы Значения Х^^ по методу прогонки Модуль комплексногочисла, г(т) '1024 Аргумент комплексного числа, р1024
1024 8,3164069729Е-01
2047 7,2020603926Е-01 2,2566978569Е-01 6,6267970036Е-01
2048 2,4534750764Е-01 2,2568819290Е-01 6,6203318358Е-01
4095 1,0257676901Е-01 2,2576556168Е-01 6,6165704650Е-01
4096 -4,9902515480Е-01 2,2582384062Е-01 6,6246405451Е-01
Таблица 3. Определение комплексного значения х2048 системы (5)
Размерность системы Значения х2о48 по методу прогонки Модуль комплексного г(т) числа, '2048 Аргумент комплексного лт) числа, р2048
2048 2,3499458823Е-01
4095 3,0564794855Е-01 2,7682774964Е-01 -2,4543692606Е-01
4096 6,0336439872Е-01 2,7693303255Е-01 -2,4531714230Е-01
— (т)
На рис. 1 показаны вещественные значения Х^ , полученные алгоритмом прогонки из
—(т)
решения «расширяющейся» системы (5). Как видно из графика, значения Х1 с расширением
~\г(т )
системы (5) не стремятся к пределу, а осциллируют. Для Х^ приведены значения последних 150 «подходящих», полученных из расширяющейся СЛАУ.
1, 1,|| llll.ll 1,1, 1. 1,|| 1,||. 1, 1,1, 1. ||, || 1,1., 1,1,1, 1,||.1, 1,1. 1> 1, |[ 1,1, 1.1 I. 1. 1 ■. 1. 1,
1 1 ' 1 1 1 1 1 1 ' 1
3946
4096
Рис. 1. Значения Х(т)расширяющейся системы (5) (т)
На рис. 2 показаны значения модуля ' комплексного хь полученные при решении «расширяющейся» системы (5) с использованием формулы (3) г/ф-алгоритма.
(т) (т)
Рис. 2. Значения модуля ' комплексного X системы (5)
По «отсчетам», приведенным во вторых колонках табл. 1 - 3, можно, помимо модулей,
найти аргументы ( комплексных х1 расширяющейся системы (5). Для этого надо использовать формулу (4) г/ф-алгоритма. Знак аргумента комплексного числа определяется из
) ГЛ1
динамики распределения отсчетов х> ' [13].
Значения аргумента ф1 комплексного х1 БСЛАУ (5) приведены на рис. 3.
!7$(%%!'(W****)$&&&&&&+)%%%)$&& ! !%%("!!'**+*
3946 4096
Рис. 3. Значения аргумента ф1 комплексного х1 системы (5)
Приведём значения х1 (¿=1,2,..., 2048) системы (5), которые получены при помощи г/ф-алгоритма:
X = 0.218546е
¿0.703330
= 0.228523е~
х2 = 0.282089е х4 = 0.094043е
¿0.165710 ¿1.238062 ¿0.902756
х128
= 0.275002е
¿0.279410
= 0.151392е
-¿1.010936
х8 = 0.177653е
„¿0.232482
х512
= 0.256909е~
х16 = 0.278352е х32 = 0.127645е
х1024 = 0.225 8232е
¿0.662464
¿1.106706
х2048
= 0.276933е
¿0.245317
На рис. 4 показано размещение в комплексной плоскости значений х1 (г = 1, 2, бесконечной системы (5).
,2048)
0,16
-0,16
V 2043 1 2047 . ■•" " ЗГ "•■ •.
4 у
2046 * XV 1 2044 • ': х
\ ---------- \Урз -- ■0,32
• \ Г3 ф 2048
2042 2041 «3 • 2045 .■•■' " —•—''
Рис. 4. Расположение х, БСЛАУ (5) на комплексной плоскости
Для комплексных х1, х2 и х3 на рис. 4 показаны их модули и аргументы. Все значения х1 (I = 1, 2, ..., 2048) системы (5) расположены на окружности, что имеет место для х систем с трехдиагональной матрицей, содержащей одинаковые элементы по диагоналям и с постоянной правой частью. Если смотреть на процесс размещения х из центра этой окружности, то можно заметить, что х1 укладываются на окружности, двигаясь по часовой стрелке с постоянным «шагом», несколько превышающим угол п/2.
В табл. 4 приведены результаты проверки решения расходящейся бесконечной системы (5), полученного методом редукции с использованием г/ф-алгоритма. В первой колонке табл. 4 указаны номера строк системы (5), по которым проводилась проверка. Во второй колонке приведены значения проверяемых строк системы (5) после подстановки найденных комплексных х из системы (5) размерностью 4096. В третьей колонке даны значения правой части системы (5), в четвертой -абсолютные погрешности, допущенные при решении системы (5).
¿0.644988
х
64
х
256
¿0.453931
0
Номер строки, п Значения левой части системы Значения правой части Абсолютная погрешность
1 1,001299Е+00 + Ц,762678Е-03 1 1,299469Е-03 + Ц/762678Е-03
2 1,001615Е+00 + Ц,823158Е-03 1 1,615385Е-03 + И,823158Е-03
4 1,001420Е+00 + Ц,786263Е-03 1 1,420584Е-03 + Ц/786263Е-03
8 1,000966Е+00 + Ц,224856Е-03 1 9,668878Е-04 + Ц,224856Е-03
16 1,001094Е+00 + Ц,078635Е-03 1 1,094874Е-03 + Ц,078635Е-03
32 1,001217Е+00 + Ц,378751Е-03 1 1,217090Е-03 + 11,378751Е-03
64 1,000939Е+00 + ¡9,321736Е-04 1 9,398733Е-04 + 19,321736Е-04
128 1,001321Е+00 + ¡3,972567Е-04 1 1,321599Е-03 + 13,972567Е-04
256 1,000792Е+00 + Ц,707477Е-03 1 7,928668Е-04 + Ц,707477Е-03
512 1,001030Е+00 + Ц,250966Е-03 1 1,030405Е-03 + П,250966Е-03
1024 1,000587Е+00 + 12,199988Е-03 1 5,876379Е-04 + 12,199988Е-03
2048 1,000849Е+00 + ¡4,776958Е-03 1 8,494535Е-04 + 14,776958Е-03
Из табл. 4 можно заключить, что погрешности, допущенные при решении системы (5)
методом редукции с использованием г/ф-алгоритма, весьма невелики ( Е — 10 3 —10 "4).
Сделаем некоторые замечания к рассмотренному алгоритму решения БСЛАУ, который назван методом редукции. На первом этапе решения БСЛАУ (5) использовалась процедура редукции, как известно, состоящая в определении вещественных решений СЛАУ увеличивающейся размерности. Эти вещественные решения «расширяющихся» СЛАУ определялись стандартной программой решения СЛАУ, в качестве которой была выбрана программа, реализующая известный алгоритм «прогонки». Этот алгоритм представляет модификацию алгоритма Гаусса, ориентированную на решение СЛАУ с трехдиагональной матрицей. Процедура редукции, когда для получения очередного «отсчёта» решается заново система увеличивающейся размерности, - весьма затратный алгоритм при решении БСЛАУ. Это обстоятельство не позволяет получить значительного числа «отсчётов», то есть вещественных значений х, из решений СЛАУ увеличивающейся размерности, что необходимо при реализации второго этапа решения БСЛАУ, когда используется г/ф-алгоритм, определяющий по вещественным «отчётам», или «подходящим», комплексные решения системы.
Как следует из таблиц 1 - 3, метод редукции получения «отчётов» ограничил размерность матрицы решаемых СЛАУ (5) весьма скромными величинами: 2048x2048.
3. Второй алгоритм решения БСЛАУ
Рассмотрим второй алгоритм решения БСЛАУ, который назовём А-методом. Название второго метода решения БСЛАУ связано с названием алгоритма вычисления значений цепных дробей.
Представим решение конечной трехдиагональной системы алгебраических уравнений
АХ - В, (6)
(
А -
«11 «12 0 . . 0 0 1
а21 «22 «23 . . 0 0
0 «32 «33 .
0 0 0 . . « , , п—1,п—1 « , п —1, п
0 0 0 . . « , «
Х -[ Хп]Г , В — [^ г»!,..., Ьп]Т
в виде цепных дробей, частными числителями и знаменателями которых есть некоторые выражения из элементов исходной матрицы А.
Как показано в [14], решение системы алгебраических уравнений (6) с трёхдиагональной матрицей может быть представлено цепными дробями:
X,
X2 =
X3 =
PL S2
Yi + t2 +. ..+ tn
Sn.
Y 2 +13 +.. + tn '
P1 Si Sn.
Y3 + t4 +.
(7)
(8) (9)
Где Yi = aii Yn = ann---
Pi = bi, Pn = bn ~Pn-i
an-l,n Y n—1 P
Yn-i a,„ „
Yn
(10) (11)
n—1
sn =
Pn-1
t = Y
n / n
a
n—1,n
Pn
Pn-1
(12)
(13)
Уже отмечалось, что для достижения высокой точности при определении модуля и аргумента комплексного числа по «подходящим» необходимо брать значительное число вещественных «отсчётов». Классические алгоритмы, - обратный рекуррентный алгоритм (BR-алгоритм) и прямой рекуррентный алгоритм (FR-алгоритм), оказываются неэффективными при вычислении значений длинных серий подходящих дробей. BR-алгоритм требует недопустимо больших затрат машинного времени.
Обратный рекуррентный алгоритм (Backward Recurence Algorithm), или BR-алгоритм, -самый естественный способ вычисления конечной цепной дроби, где операции последовательно выполняются «снизу вверх».
Запишем цепную дробь, имеющую n звеньев:
и a1 bo +■ 1
a
a
a
(14)
Ъ + Ъ +... + Ъп_! + ъп
Чтобы определить значение цепной дроби (14), надо выполнить всего 2п + 1 операций. БЯ-алгоритм - эффективный алгоритм, если речь идет о «разовом» вычислении конечной цепной дроби. Но если будет поставлена задача,- определить все п подходящих цепной дроби (14), то станут очевидны недостатки этого алгоритма.
Запишем подходящие цепной дроби (6):
p = b p = b + ol p = ь + a1 - = bo, = bo + » , bo + Ql b1 Q2
a
Q
P = b + ai
an
a„
Qn
b2 + b2 +... + bn
bi + b2 (15)
Следовательно, в BR-методе при определении очередной подходящей вычисления приходится производить заново. Серия из п подходящих дробей вычисляется при выполнении п(п + 1) арифметических операций.
Рекуррентный алгоритм Валлиса, или FR-алгоритм, неэффективен при вычислении большого числа подходящих по иной причине. FR-алгоритм, который используется при вычислении значений непрерывных дробей (14), описывается рекуррентными формулами второго порядка:
1
Р=ЬР,+аР„
п п п-1 п п-2'
О = Ь О а О ~ (16)
при начальных условиях
Р-1 = 1, Р0 = Ьо, О-1 = 0, Оо = 1.
При вычислении длинных серий подходящих дробей использование FR-алгоритма, как видно из рекуррентной формулы (16), достаточно быстро приводит или к переполнению разрядной сетки, или к появлению «машинного нуля».
В [15] были рассмотрены алгоритмы, эффективные при вычислении значений длинных последовательностей подходящих цепных дробей. Опишем, так называемый, Д-алгоритм и определим число операций, необходимых при нахождении значений подходящей дроби Д-алгоритмом.
Используя формулу
д/ = /_/ -1_(-1)П+1 аа ••• ап
у п у п у п-1
Оп Оп-1 Оп-Оп
можно записать:
/ = -= ^ - 1, (рп = Оп/Оп_1, А/п-1 Оп Рп
а
Рп = Ьп , Р= Ь1, п = 1Д...
Рп-1
Следовательно,
(17)
Г и ^
К -!
Ь ...а.
А/п = 1 А п-1, ^ 1 и
Ы ) Ь1
(18)
Так как = Уп-1 + , то применяя формулы (17) и (18), найдём значение очередной подходящей дроби, выполняя всего 6 операций: 3 операции сложения, 1 операцию умножения и 2 операции деления.
В табл. 5 приведены характеристики алгоритмов вычисления значений цепных дробей.
Таблица 5. Характеристики алгоритмов вычисления цепных дробей
№ Алгоритм Число операций при вычислении и-звенной дроби Число операций при вычислении серии {Р/О}
Сложение Умножение Деление Кол-во
1 BR-алгоритм п п 2п п(п+1)
2 FR-алгоритм 2п 4п 1 6п+1 7п
3 Д-алгоритм 3п п 2п 6п 7п
Из табл. 5 следует, что количество операций при вычислении серии подходящих дробей, то есть цепных дробей, отличающихся по длине на одно звено, для А-алгоритма определяется формулой N = 7п, где п - число звеньев, в то время как для классического BR-алгоритма определения значений цепных дробей, то есть последовательного вычисления цепной дроби «снизу-вверх», число необходимых операции при вычислении серии подходящих значительно больше: N = п(п + 1).
В табл. 6-8 показаны результаты решения уже рассматривавшейся бесконечной системы линейных алгебраических уравнений (5) А-методом, дополненным г/р-алгоритмом.
Номер XI Значение х1 по методу прогонки Модуль комплексного числа г1 Аргумент комплексного числа ф Абсолютная погрешность
1 -0.52252240 0.21854620 0.70333019 -0.00129946+Ю .00176267
2 0.50750746 0.28206924 -0.16571038 -0.00161538+10.00182315
3 0.68668658 0.14569091 -1.03440813 -0.00122044+Ю .00184069
4 -0.40306966 0.09404301 1.23806228 -0.00142058+10.00178626
8 -0.57024502 0.17765337 0.90275650 -0.00096688+10.00122485
16 -0.04111062 0.27835232 0.23248247 -0.00109487+10.00107863
32 0.61500702 0.12764513 -1.10670619 -0.00121709+10.00137875
64 0.85414209 0.22852366 -0.64498852 -0.00093987+10.00093211
128 -0.10591301 0.27500201 0.27941098 -0.00132159+10.00039725
256 0.70783973 0.15139271 -1.01093687 -0.00079286+10.00170747
512 0.78250195 0.25690936 -0.45393165 -0.00103040+10.00125096
1024 -0.49902515 0.22582384 0.66246405 -0.00058763+10.00219998
2048 0.60336439 0.27693303 -0.24531714 -0.00084945+10.00477695
Комплексные х^хго^, приведённые в табл. 6, находились при решении СЛАУ (5) с размерностью матрицы 4096х4096. Следовательно, при определении комплексного значения хь использовались 4096 подходящих цепной дроби (7), а при нахождении комплексной величины х2048-всего 2048 подходящих.
Сравнивая результаты определения комплексных значений хь х1024 и х2048, имеющихся в табл. 1 - 3 ив табл. 6, можно отметить, что значения комплексных корней системы (5), определённые разными алгоритмами, - методом редукции и А-алгоритмом, оказались близкими.
Приведённые в табл. 7 комплексные значения х1 находились при решении СЛАУ (5) с
размерностью матрицы 131072x131072. Так как при определение комплексных х1
использовались от 65536 до 131072 подходящих, то комплексные значения х1 системы (5) были
установлены с высокой точностью, о чём свидетельствуют «невязки», приведённые в пятой
колонке табл. 7, которые по вещественной и мнимой частям имеют величины порядка 10-5 - 107
Таблица 7. Определение комплексных корней системы. (5) с матрицей размерностью 131072x131072
Номер XI Значение х по методу прогонки Модуль комплексного числа г1 Аргумент комплексного числа ф1 Абсолютная погрешность
1 -0.1596570660 0.2182241350 0.7017003366 -2.523282е-005+ 12.761448е-005
2 0.3865523553 0.2817249568 -0.1674208992 -3.207682е-005+ 12.976090е-005
3 0.3641396143 0.1454826517 -1.0365314282 -2.371975е-005+ 12.937320е-005
4 -0.1745988934 0.0939086127 1.2359374344 -2.835903е-005+ 12.481125е-005
8 -0.2120254255 0.1773852976 0.9010461178 -2.492728е-005+ 12.439858е-005
16 0.1230665364 0.2781171662 0.2312261286 -2.916267е-005+ 12.612304е-005
32 0.3211384425 0.1274669642 -1.1083475398 -3.229473е-005+ П.687929е-005
64 0.5003496227 0.2281577226 -0.6459246289 -2.549413е-005+ 18.826276е-006
128 0.0888820396 0.2746841691 0.2788794761 -4.613959е-005-16.703580е-006
256 0.3773018981 0.1512353540 -1.0129599220 -9.903217е-006+ 13.212419е-005
512 0.4918609282 0.2566303662 -0.4551857616 -1.780837е-005+ И.394101е-005
1024 -0.1424562066 0.2256499825 0.6604280044 -1.953590е-005+ 14.724385е-005
2048 0.4269081121 0.2768342350 -0.2499638843 -1.939896е-005+ 16.999124е-005
4096 -0.2128238193 0.1369974583 1.0707596404 -1.119005е-005+ И.425280е-005
Номер XI Значение х по методу прогонки Модуль комплексного числа г Аргумент комплексного числа Абсолютная погрешность
8192 -0.0985559870 0.2404402976 0.5707640399 5.843553Ь-007+ Ю.0001008274
16384 0.4867585609 0.2597751404 -0.4294286987 -1.510346-005+ i3.8076941e-005
32768 -0.1635845788 0.2163390111 0.7119196332 -3.942164-005+ i6.8758476e-005
65536 0.3755388215 0.2826232908 -0.1469243554 2.8879149^-006+ Ю.0001726
С ещё большей точностью установлены комплексные корни бесконечной системы (5), когда они находились из СЛАУ, матрица элементов которой имела размерность 16777216x16777216. «Невязки», которые были зафиксированы после подстановки в строки системы (5) комплексных х, оказались чрезвычайно малы и составляли по вещественной и мнимой части величины порядка 10-7 - 10-10.
Таблица 8. Определение комплексных корней системы. (5) с матрицей размерностью 16777216x16777216
Номер XI Значение х по методу прогонки Модуль комплексного числа г Аргумент комплексного числа щ Абсолютная погрешность
1 0.014139828 0.2182179307 0.7016743084 -2.759947e-007+ i3.190287e-007
2 0.328620057 0.2817181594 -0.1674477199 -3.259888e-007+ i2.534880e-007
3 0.209653485 0.1454786322 -1.0365698519 -2.635064e-007+ i3.681419e-007
4 -0.065171218 0.0939060532 1.2359005661 -3.069290e-007+ i2.989374e-007
8 -0.040453639 0.1773781001 0.9010043648 -2.00370^-007+ i2.034016e-007
16 0.201700336 0.2781113171 0.2312118578 -1.783699e-007+ i2.614442e-007
32 0.180388028 0.1274624017 -1.1083726382 -2.775439e-007+ i2.466862e-007
64 0.330898240 0.2281510516 -0.6459493391 -1.956294e-007+ i1.177706e-007
128 0.182180494 0.2746742743 0.2788971206 -3.717569e-007- i4.022715e-010
256 0.218988486 0.1512332333 -1.0130014812 -1.5598^-007+ i3.459538e-007
512 0.352656371 0.2566202140 -0.4552072631 -1.151767e-005- i1.258251e-006
1 024 0.028324988 0.2256452465 0.6603815456 -1.194954e-007+ i2.629307e-007
2 048 0.342393137 0.2768297831 -0.2500332352 -1.768510e-007+ i1.649151e-007
524288 0.133911492 0.2638151737 0.3940735707 -4.018794e-007+ i3.587309e-007
1 048576 0.298330526 0.2025851242 -0.7826491321 -5.164477e-007+ i4.676948e-007
2097152 0.284005038 0.2857102137 0.0054977628 -8.915857e-007+ i1.018107e-006
4194304 0.003435555 0.0031410494 -1.5598014255 -1.051912e-006+ i9.469696e-007
8 388608 0.006938512 0.0062817183 -1.5488062129 -9.103438e-007+ i2.240314e-006
На рис. 5 показано расположение на комплексной плоскости корней XI + х4096 системы (5), полученных А-методом с использованием г/р-алгоритма. Из сравнения рис. 1 и рис. 5 можно заключить, что графики комплексных решений системы (5), полученные разными алгоритмами, идентичны.
Рис. 5. Расположение на комплексной плоскости корней х1-х4096 системы (5)
Заключение
Метод решения расходящихся БСЛАУ, основанный на процедуре редукции, то есть на многократном пересчёте алгоритмом «прогонки» расширяющихся СЛАУ, оказался неэффективным, так как требует недопустимо больших временных затрат на получение серии отсчётов для определения комплексных решений БСЛАУ. Получение значения очередного
V (т)
«отсчёта», то есть вещественного значения из решения СЛАУ размерности тхт, влечет
необходимость решать «расширяющуюся» СЛАУ заново. Второй метод, то есть А-метод, который использует рассмотренный выше А-алгоритм, реализует вычисление очередной подходящей дроби всего за 6 операций и поэтому обеспечивает решение с высокой точностью БСЛАУ с трёхдиагональной матрицей.
Рассмотренный А-алгоритм решения БСЛАУ может использоваться при решении как сходящихся БСЛАУ, так и расходящихся. Как установлено, расходящиеся в классическом смысле БСЛАУ могут иметь комплексные решения. Без учёта комплексных решений сколь-нибудь завершённая теория БСЛАУ состояться не может в принципе, как не была бы создана теория алгебраических уравнений, если бы ограничились только вещественными корнями. Эти замечания вполне справедливы и для конечных СЛАУ, которые могут иметь комплексные решения, определяемые приближённо со всё большей точностью с ростом размерности СЛАУ.
Работа выполнена при финансовой поддержке Российского научного фонда, проект № 15-19-00196.
Список литературы / References
1. Годунов С.К., Рябенький В.С. Разностные схемы. М.: Наука, 1977. 440 с.
2. Шмойлов В.И. Непрерывные дроби в 3-х т. Т. 2. Расходящиеся непрерывные дроби. / Нац. акад. наук Украины. Ин-т приклад. проблем механики и математики. Львов: Меркатор, 2004. 558 с.
3. Кириченко Г.А. Шмойлов В.И. Алгоритм суммирования расходящихся непрерывных дробей и некоторые его применения // Ж. вычисл. мат. и мат. Физики, 2015. Т. 55. №4. С.559-572.
4. Гузик В.Ф., Ляпунцова Е.В., Шмойлов В.И. Непрерывные дроби и их применение. М.: Физматлит, 2015. 298 с.
5. Шмойлов В.И. Коровин Я.С. Решение систем линейных алгебраических уравнений непрерывными дробями. Ростов-на-Дону: Изд-во ЮФУ, 2017. 383 с.
6. Джоунс У., Трон В. Непрерывные дроби. Аналитическая теория и приложения. М.: Мир, 1985. 414 с.
7. Шмойлов В.И., Коровин Я.С. Непрерывные дроби. Библиографический указатель. Ростов-на-Дону: Из-во ЮФУ, 2017. 382 с.
8. Коялович Б.М. Исследование о бесконечных системах линейных уравнений // Известия Физико-математического института им. В.А. Стеклова, 1930. Т. III. С. 41-167.
9. Иванов О.Ф., Павлов Н.Н., Федоров Ф.М. О главных и строго частных решениях бесконечных систем // Ж. вычисл. матем. и мат физики, 56:3 (2016). С. 351-362.
10. Фёдоров В.М. Бесконечные системы линейных алгебраических уравнений и их приложения. Новосибирск: Наука, 2011. 311 с.
11. Самарский А.А., Николаев Е.С. Методы решения сеточных уравнений. М.: Наука, 1978. 592 с.
12. Горох О.В. О решении последовательности расширяющихся систем линейных алгебраических уравнений. // Теория и методы автоматиз. научн. исслед. Минск, 1985. С. 3-5.
13. ШмойловВ.И.Непрерывные дроби и r/^-алгоритм. Ростов-на-Дону: Изд-во ЮФУ, 2012. 608 с.
14. Шмойлов В.И. Расходящиеся системы линейных алгебраических уравнений. Таганрог: Изд-во ТТИ ЮФУ, 2010. 205 с.
15. Качмар В.С., Русын Б.П., Шмойлов, В.И. Алгоритмы вычисления значений цепных дробей. // Ж. вычисл. мат. и мат. физики, 1998. Т. 38. № 9. С. 1936-1451.
РЕШЕНИЕ РАСХОДЯЩИХСЯ СИСТЕМ ЛИНЕЙНЫХ АЛГЕБРАИЧЕСКИХ УРАВНЕНИЙ Шмойлов В.И.1, Коровин Я.С.2, Иванов Д.Я.3 Em ail: [email protected]
'Шмойлов Владимир Ильич — научный сотрудник;
2Коровин Яков Сергеевич — кандидат технических наук;
3Иванов Донат Яковлевич — кандидат технических наук, старший научный сотрудник, НИИ многопроцессорных вычислительных систем Южный федеральный университет, г. Таганрог
Аннотация: рассматривается метод определения комплексных решений СЛАУ с трёхдиагональной вещественной матрицей. Для получения «отсчётов» используется процедура редукции, то есть решение СЛАУ увеличивающейся размерности. Комплексные значения решений СЛАУ устанавливаются г/(-алгоритмом. Рассматриваемый способ суммирования, то есть r/ф-алгоритм, выходит за рамки традиционных методов, ибо позволяет по последовательности вещественных подходящих дробей установить некое комплексное число, которое, собственно, и представлено последовательностью подходящих дробей. Признаком комплексности служат перемены знаков элементов последовательности, причем, эти перемены знаков происходят сколь угодно много раз. Ключевые слова: комплексные решения СЛАУ, г/(алгоритм, непрерывные дроби.
SOLUTION OF DIVERGENT SYSTEMS OF LINEAR ALGEBRAIC
EQUATIONS Shmoylov V.I.1, Korovin Ya.S.2, Ivanov D.Ya.3
'Shmoylov Vladimir Ilyich — Research Fellow;
2Korovin Yakov Sergeevich — Candidate of Technical Sciences;
3Ivanov Donat Yakovlevich — Candidate of technical sciences, Senior Researcher, RESEARCH INSTITUTE OF MULTIPROCESSOR COMPUTING SYSTEMS SOUTH FEDERAL UNIVERSITY, TAGANROG
Abstract: the method of determination of complex solutions of linear equations with real tridiagonal matrix. To obtain "counts", the reduction procedure is used, that is, the solution of the SLAE increasing dimension. Integrated value solutions SLAE set r/(p-algorithm. The considered method of summation, that is, r/^-algorithm, goes beyond the traditional methods, because it allows for the sequence of real suitable fractions to establish a complex number, which, in fact, is represented by a sequence of suitable fractions. A sign of complexity is the change of the signs of the elements of the sequence, and these changes of signs occur arbitrarily many times. Keywords: complex solutions of SLAE, r/(algorithm, continuous fractions.
УДК 517.524