ПРОГРАММИРОВАНИЕ, 2014, No 2, с. 7585
КОМПЬЮТЕРНАЯ АЛГЕБРА
У V 004.421.6
РЕГУЛЯРНЫЕ РЕШЕНИЯ ЛИНЕЙНЫХ ДИФФЕРЕНЦИАЛЬНЫХ СИСТЕМ С КОЭФФИЦИЕНТАМИ В
ВИДЕ СТЕПЕННЫХ РЯДОВ *
© 2014 г. С. А. Абрамов, Д. Е. Хмельнов
Вычислительный центр РАН 119333 Москва, ул. Вавилова, 40 E-mail: sergeyabramov@mail.ru, dennis_khmelnov@mail.ru Поступила в редакцию 17.10.2013
Предлагается алгоритм решения следующей задачи: дана система линейных обыкновенных дифференциальных уравнений произвольного порядка, коэффициенты которой являются степенными рядами; выяснить, имеет ли эта система регулярные решения в точке 0 и если да, то найти их. Каждый степенной ряд, являющийся коэффициентом исходной системы, задается с помощью процедуры, вычисляющей коэффициент ряда по индексу этого коэффициента, при этом предполагается известным заранее, что исходная система имеет полный ранг, т.е. уравнения системы независимы. Алгоритм реализован в Мар1е.
1. ВВЕДЕНИЕ
В [9] был предложен алгоритм нахождения всех регулярных решений имеющей произвольный порядок линейной дифференциальной системы полного ранга с полиномиальными коэффициентами (см. также [1, разд. 7.4]). В настоящей статье мы будем основываться на более общих предположениях об исходной дифференциальной системе, считая, что ее коэффициенты являются степенными рядами.
Пусть К — числовое поле: Q С К С С. Для кольца полиномов и поля рациональных функций от х над К мы в дальнейшем используем обычные обозначения К [х] и К(х). Кольцо фор-
хК
ется через К[[х]], поле формальных лорановых К((х))
а(х) = ^ а»хг из К((х)) его валюация уа1Х а(х) определена равенством
valx a(x) = min {i : a = 0},
(1)
при этом уа1Х 0 = те. Валюация вектора или матрицы с компонентами-рядами, считается равной минимуму валюаций компонент.
Если Я — некоторое кольцо (в частности, поле), то Ма^(Я) обозначает кольцо квадратных матриц порядка т с элементами из Я. Через 1т обозначается единичная матрица порядка т. Обозначение МТ используется для матрицы, транспонированной к М.
Нам будет удобно записывать дифференциальные системы с помощью операции в = х вместо обычной операции дифференцирования (переход от одной формы записи к другой выполняется легко). Будут рассматриваться системы вида
Аг(х)вгу + Аг-1(х)вг-1у + ■ ■ ■ + Ао(х)у = 0, (2)
где у = (у1, у2,..., Ут)Т — вектор неизвестных х
A0(x), A1 (x),..., Ar(x)
(3)
*Частичная поддержка РФФИ, грант 13-01-00182-а.
предполагается, что АДх) € Ма^(К[[х]]), г = 0,1,..., г, при этом Аг(х) (ведущая матрица системы) являются ненулевой. Мы будем иметь дело с системами, уравнения которых независимы над К((х))[в], такие системы называются также системами полного ранга. Для систем полного ранга будет предложен алгоритм построения их
регулярных решений, т.е. решений вида
у(х) = хл-ш(х), (4)
где Л е К, -ш(х) е К((х))т[1пх], К - алгебраическое замыкание поля К. Каждое такое решение записывается более подробно как
к
хл£ 0в(х)1п" х, (5)
«=0
где к е N (т.е. к является неотрицательным целым) и д5(х) е К((х))т, 8 = 0,1,...,к. Если штк=0 уа1х д5(х) = 0, то Л называется показателем решения (4), в противном случае - его пока,-1Л
гулярного решения у(х) показателем по модулю
1, то мы будем говорить также, что у(х) допус-хл хл
множитель решения у(х). Очевидно, что если хл
вого регулярного решения, то хл будет допустимым множителем этого же решения если и только если Л — Л' е При переходе в (5) от хл к хл поменяются валюации рядов д5(х). Набор
хл1 ,хл2 ,...,хл (6)
назовем полным набором допустимых множителей регулярных решений системы если
- среди показателей степени элементов набора (6) нет различающихся на целое число,
- каждый элемент хл набора (6) является допустимым множителем для некоторого ненулевого регулярного решения системы
_ дЛЯ каЖдОГО ненулевого регулярного решения системы 5 среди (6) найдется допустимый для этого решения множитель.
Все регулярные решения заданной системы, допускающие один и тот же множитель, образуют линейное пространство над С. Наш алгоритм позволяет находить для данной системы допустимые множители (с точностью до целых слагаемых в показателях степени) и строить базисы соответствующих пространств решений. Чтобы уточнить задачу надо условиться, как задаются бесконечные ряды в исходной системе и в каком виде регулярные решения представлены в выдаваемых алгоритмом результатах. Относительно исходных данных мы будем основывать-
ся на достаточно универсальном подходе, считая, что каждый из степенных рядов, являющихся коэффициентами системы, задан алгоритмически: для любого элемента а(х) = ^°=о а^хг какой-либо матрицы из (3) известен некоторый алгоритм 2а, вычисляющий для г е N значение
2а(г) = а*. (7)
Из [5, предл. 2] следует, что при указанном представлении коэффициентов систем алгоритмически неразрешимы как задача проверки независимости уравнений над К[[х]] [0], так и задача проверки существования решения в К((х))т \ {0} (т.е. существования ненулевого лоранова решения). При этом легко видеть, что лорановы решения — это простейший вид регулярных решений. Но мы предполагаем известным заранее, что исходная система имеет полный ранг (т.е. что уравнения системы независимы над К[[х]][0]). Для этого случая в [4] приведен алгоритм построения лорановых решений. Этот алгоритм будет играть существенную роль в дальнейшем, о нем будет сказано в разделе 2.
Здесь добавим, что для дальнейшего несущественно, является ли 2а в (7) настоящим алгоритмом с доступным для нас описанием, или же это некоторая процедура ("черный ящик"), принцип работы которой неясен и скрыт от нас. Алгоритмически представляются не все мыслимые ряды, наш алгоритм работает и с другими рядами. Ниже мы не станем отвлекаться на это обстоятельство и будем говорить об алгоритмическом представлении рядов, но фактическая сторона дела такова, как она только что была обрисована.
Уточним представление регулярных решений, которые выдает алгоритм как результат своей работы. Начнем с введения понятия, важного для дальнейшего. Пусть I е 2 и {—го} и а(х) е К((х)). Определим ¡-усечение а^(х) как результат замены всех коэффициентов ряда а(х) при степенях х, больших или равных ¡, нулями; если I = —го, то а^(х) = 0. Таким образом, а^(х) -это всегда лоранов полином, т.е. элемент кольца
К[х,х-1]. Аналогично, мы будем говорить и о ¡
системы путем замены всех входящих в ее ко-
¡
через Ws(А) пространство регулярных решений системы S, допускающих множитель хл, и через wj^ (А) - пространство, получающееся из Ws(А) заменой каждого элемента вида (5) на
к
s=0
(таким образом, Ws(А) совпадает с
Ws (А + n)
при любом n G Z, но это, однако, нельзя гарантировать для W^>(А) и W^^ + n)). Ввиду конечномерности пространства Ws(А) очевидно, что валюации рядов gs(x) и gf>(x) ограничены снизу. При этом для всех достаточно больших l выполнено dim Ws(А) = dim W^1^).
Сформулируем теперь задачу построения регулярных решений, которая решается предлагаемым в статье алгоритмом. Мы назовем ее задачей Рд. Предполагается, что заданы система S вида (2) полного ранга и d G N.
Рд: Найти полный набор допустимых множите-
S
делить такое lo G Z, что для каждого хх из этого набора WS(А) = dim W^^) при всех l ^ lo, и найти базис пространства W|0+d> (А).
Имеет смысл напомнить, что в скалярном случае задача поиска регулярных решений может быть решена с помощью алгоритмов, известных из классической теории дифференциальных уравнений. Алгоритм Г. Фробениуса основан на исследовании корней определяющего уравнения ([2, гл. IV], [16], [19, гл. V]). При этом при построении решения учитываются не только значения корней определяющего уравнения, но и кратность корней, а также наличие корней, отличающихся на целое число. Алгоритм Л. Хефф-тера ([17, гл. II, VIII], [19, гл. V]) строит базис (возможно пустой) регулярных решений, допускающих множитель хл, не входя при этом в расА
А
целое число. Именно благодаря этому алгоритм Хеффтера оказывается более удобным для обобщения на системы произвольного порядка: алгебраическое уравнение, которое удается построить для дифференциальной системы как некоторый аналог уравнения, называемого в скалярном
случае определяющим, может, например, содержать лишние корни, не несущие информации о пространстве решений системы.
В [14] алгоритм Хеффтера был обобщен на случай систем первого порядка у'(ж) = А(ж)у(ж). Обобщение алгоритма Хеффтера для случая систем произвольного порядка с полиномиальными коэффициентами было предложено в [9]. Если ведущая матрица исходной дифференциальной системы невырождена, то для систем произвольного порядка может быть использован также алгоритм из [13], основанный на другом подходе. При этом в [14], [13] хотя и предполагается, что коэффициенты являются бесконечными рядами, но способ представления таких рядов не обсуждается (в тех примерах, которые даются в этих публикациях, в качестве коэффициентов выступают, в основном, рациональные функции). В этих работах считается, что для каждого ряда, будь то изначально заданный ряд или ряд, получившийся выполнением каких-то операций над другими рядами, можно проверить, равен ли он нулю.
В нашей статье мы следуем подходу Хеффтера, обобщая его на системы произвольного порядка с коэффициентами-рядами, заданными алгоритмически; в разделе 4 предлагается алгоритм решения задачи Рд, о его реализации в Мар1е ([20]) рассказывается в разделе 5.
2. ПОСТРОЕНИЕ ЛОРАНОВЫХ РЕШЕНИЙ
2.1. Усеченные лорановы решения
Обозначим через Vs пространство лорановых решений системы S и через Vg \ l G Z, простран-
l
ствующих элементов пространства Vs- Алгоритм из [4] позволяет решать задачу, которую мы назовем задачей Р^. Предполагается, что заданы система S вида (2) полного ранга и d G N.
Pl: Определить такое lo G Z, что dim Vs = dim vj° при всех l ^ lo, и найти базис пространства V^ >.
Алгоритм решения задачи Pl основывается на рассмотрении рекуррентной системы, которой
удовлетворяет последовательность коэффициентов любого лоранова решения исходной дифференциальной системы. Об этих рекуррентных системах будет сказано в п. 2.2. Рекуррентные система приводится к "удобно
Для дальнейшего прочтения статьи необходимо приобрести полный текст. Статьи высылаются в формате PDF на указанную при оплате почту. Время доставки составляет менее 10 минут. Стоимость одной статьи — 150 рублей.