Диссертация (1149672), страница 7
Текст из файла (страница 7)
Классmловием, что K ( x) mскалярных функций от x ( x1 ,..., xm ) определим ус-если можно найти какое-то число k скалярных функцийm 1 ( x),..., k ( x ) таких, чтоK ( x) P( 1 ,..., k , x) , r / xi r ,i ( 1 ,..., k , x) , r [1: k ] , i [1: m] ,причем все P, r ,i - алгебраические полиномы по x1,..., xm ,1,..., k . Другими словами,K ( x) mозначает, что K ( x) представима полиномом относительно 1( x),..., k ( x) ,x1 ,..., xm , где 1 ( x ),..., k ( x ) удовлетворяют какой-то, неавтономной вообще говоря,полной полиномиальной системе уравнений в частных производных.Классы функцийm. Классомm,( , m [1: ) ) назовем множество скалярныхфункций переменной x ( x1,..., xm ) , каждую из которых можно получить из x1,..., xm ,используя конечное число операций , , , / и конечное число функций 1,...,l иих суперпозиций.
Если в число упомянутых функций включить , определяемуюусловием (a) 1/ a , то в этом определении(так как a / b a (b) ).mможно не использовать операцию /38Предложение 2.1 (Бабаджанянц [12]) m, [1: ) m, [1: ) ms(mm , m [1: ) [m : ) )s(mm) , m [1: ) [m : ) m,s(m)s(m)2.2 Библиотеки функций и дифференциальных уравненийЗдесь в пункте 2.2.1 описывается кратко модель библиотеки программы “AVM”(см.
главу 4), а в пункте 2.2.2 приводим примеры библиотек.2.2.1 Библиотека программы “AVM”В программе библиотека представлена пополняемой (новыми строками) пользователем таблицей, состоящей из потенциально неограниченного числа строк и следующих одиннадцати столбцов (граф):«IDFun» - идентификатор функции (совпадает с ее именем в пакете Mathematica,если такая функция в этом пакете определена),«FName» - второе имя функции,«CNo» -текущий (current) порядковый номер функции в библиотеке,«ONo» - исходный (original) порядковый номер функции в главной библиотеке,«ENo» - порядковый номер функции в ее расширении (extention); так как расширение функции не единственно, то количество функций расширения и его состав зависят от составителя библиотеки,«FArgN» - количество аргументов функции; у различных функций, входящих в расширение, может быть различное количество аргументов, однако можно (и мы будем)считать, что аргументы (а значит и их количество) у функций расширения одинаковы, приняв, что производные функций по недостающим аргументам равны нулю;39«jENo» - порядковый номер аргумента, производной по которому соответствует данная строка: если, например, в текущей строке ENo =5, jENo=3, то эта строка содержит информацию о производной пятой функции по третьему аргументу,«FENoList» - cписок номеров «ONo» функций расширения данной функции,«RHSPoly» - полином - правая часть дифференциального уравнения для даннойфункции : число правых частей (а значит и строк с одним ENo и разными jENo)равно количеству FArgN аргументов p1 ,...
этой функции (переменные полинома –функции 1 ,2 ,... из ее списка расширения и их аргументы p1 ,... ),«LPartNo» - номер раздела библиотеки, содержащего функцию,«IVFun» - формат функции: задается в виде MyFunc[t1, p[par1, par2,...], t2,...]. Аргумент вида p[…1 является списком параметров функции, причем наименования параметров здесь должны быть те же, что и в графе RHSPoly.О зависимости коэффициентов полиномов от параметров. Коэффициенты полиномов (правых частей полиномиальных дифференциальных уравнений) в графе«RHSPoly» зависят, вообще говоря, от параметров, относительно которых предполагается, что во всех уравнениях для функций одного раздела библиотеки параметры, имеющие одно и то же обозначение, имеют тот же смысл.
Таким образомсохраняется возможность использовать одни и те же символы для разных или одинаковых по смыслу параметров в разных разделах. Из сказанного следует, что библиотеку целесообразно представлять разбитой на простые разделы.Разбиение библиотеки на разделы.
Для такого разбиения можно предложить различные алгоритмы, основанные на утверждении: если в списке расширения функции есть функция из некоторого раздела, то и сама функция принадлежит этому разделу. Кроме того, пользуясь этим утверждением, при пополнении библиотеки новыми функциями имевшуюся нумерацию разделов можно сохранить, а новым разделам (если появятся) присвоить новые номера (при этом старые разделы могут пополниться новыми функциями).40Образование подбиблиотеки.
Здесь обсудим, как из основной библиотеки выделить подбиблиотеку, содержащую все функции 1,..., k , в терминах которых записаны исходные функции и/или дифференциальные уравнения, причем желательно,чтобы полученная подбиблиотека содержала поменьше функций. Процесс выделения следующий:(a) находим все различные номера ONo из всех списков в графе «FENoList» дляфункций 1,..., k ,(b) образуем библиотеку той же структуры, в которую переписываем из исходнойбиблиотеки все строки с этими различными номерами.2.2.2 Примеры библиотекВ настоящем пункте приводится семь простых примеров подбиблиотек, кото-рыеобозначаем Пб1, …, Пб7 [15, 27]. Большое количество других подбиблиотек содержится в библиотеке программы “AVM”, там же можно посмотреть и все подробностизадания библиотек в табличной форме (см. главу 4).
Для каждой из подбиблиотек даются расширения составляющих ее функций и дифференциальную систему для функций расширения. Для одной из них (Пб7), приводится задача Коши. В связи с этимнапомним, что библиотеки содержат только наименования функций и дифференциальные системы для расширений. В то же время, в программе “AVM” можно задаватьи начальные данные в виде чисел или формул с параметрами, и это будет соответствующим образом учтено в результатах ее работы.
Функции будем обозначать ,1 ,... , а их аргументы p, p1 ,... .Пб1. Состоит из одной функции одного аргумента inv( p) p 1 ,которая удовлетворяет уравнениюd / dp 2 ,а расширение этой функции состоит из нее одной.41Пб2. Состоит из двух функций одного аргумента 1 ln p , 2 inv( p) ,которые удовлетворяют системеd1 / dp 2 , d2 / dp 22 ,причем расширение функции 1 состоит из функций 1,2 , а расширение функции 2состоит из нее одной (т.е.
совпадает с Пб1).Пб3. Состоит из двух функций одного аргумента 1 sin p , 2 cos p ,которые удовлетворяет системеd1 / dp 2 , d2 / dp 1 ,а расширение каждой из функций 1 , 2 состоит из функций 1,2 .Пб4. Состоит из двух функций одного аргумента 1 s h( p) , 2 c h( p) ,которые удовлетворяют системеd1 / dp 2 , d2 / dp 1 ,а расширение каждой из функций 1 , 2 состоит из функций 1,2 .Пб5. Состоит из четырех функций двух аргументов 1 EK ( p1, p2 ) E (e, M ) , где EK E - эксцентрическая аномалия, p1 e - эксцентриси-тет, p2 M - средняя аномалия (т.е.
E (e, M ) - решение уравнения Кеплера [1,34,57]),2 EKs( p1, p2 ) sin 1 , 3 EKc( p1, p2 ) cos 1 , 4 EKi( p1, p2 ) (1 p1 cos 1 ) 1 .Они, как можно проверить, удовлетворяют полиномиальной системе1 / p1 24 , 1 / p2 4 , 2 / p1 234 , 2 / p2 34 ,3 / p1 224 , 3 / p2 24 , 4 / p1 342 p12243 , 4 / p2 p1432 ,42причем расширение функции 1 состоит из 1 , 2 , 3 , 4 , а расширение каждой изфункций 2 , 3 , 4 состоит из всех этих трех функций.Пб6.
Состоит из двух функций 1 , 2 одного аргумента p , причем 1 - функцияпараболического цилиндра (функция ВебераDv[2, 36, 112]), а 2 - ее производная,которую обозначим здесь DV . Расширение каждой из функций 1,2 состоит из функций 1,2 , которые удовлетворяют дифференциальной системе:d1 / dp 2 , d2 / dp (ap 2 bp c)1 ,где a, b, c - параметры.Пб7. Состоит из двух функций 1 , 2 трех аргументов p1, p2 , p3 , введенных в [12].Напомним, что первая из них является решением уравнения17 ( p1, p2 , p3 ) p313 ( p1, p2 , p3 ) p212 ( p1, p2 , p3 ) p11( p1, p2 , p3 ) 1 0 ,при условии 1 (0,0,0) 1 , а вторая определяется равенством2 ( p1, p2 , p3 ) 716 ( p1, p2 , p3 ) 3 p312 ( p1, p2 , p3 ) 2 p21 ( p1, p2 , p3 ) p1 .1Следуя [12], будем называть здесь 1 , 2 функциями Гильберта и использовать дляних в библиотеке имена Hb и Hbi.
Они удовлетворяют задаче Коши1 / p j 1j 2 , 2 / p j 4215 6 p31 2 p2 1j 23 j1j 122 , j 1, 2,3,1 (0,0,0) 1, 2 (0,0,0) 1/ 7 ,причем расширение каждой из функций 1 , 2 состоит из функций 1,2 .2.3 Основы метода дополнительных переменныхРассматривается метод дополнительных переменных (МДП), сводящий системыфункций и полные системы дифференциальных уравнений в частных производных43к полиномиальной форме.
Отметим, что МДП для обыкновенных дифференциальных уравнений (ОДУ) восходит к А. Пуанкаре [53, 54, 115], а для полных системМДП был предложен в работе [12]. Там же были получены необходимые и достаточные условия применимости этого метода. В [15, 27] даны алгоритм и программа,реализующие МДП. Предлагаемые здесь в пунктах 2.3.1, 2.3.2, 2.3.3 варианты являются естественным обобщением упомянутых МДП. Рассматриваемая в настоящемпараграфе 2.3 конструкция МДП и рассмотренная в предыдущем параграфе 2.2 конструкция библиотек функций и дифференциальных уравнений – важнейшие инструменты построения (в параграфах 2.4, 2.5) алгоритмов символьного дифференцирования и сведения дифференциальных уравнений к полиномиальной форме.















