Научная статья на тему 'Конкретные реализации симплектических численных методов'

Конкретные реализации симплектических численных методов Текст научной статьи по специальности «Математика»

CC BY
315
83
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
СИМПЛЕКТИЧЕСКИЕ ЧИСЛЕННЫЕ МЕТОДЫ / РАЗДЕЛЬНЫЙ МЕТОД РУНГЕ–КУТТЫ / МЕТОД РУНГЕ–КУТТЫ–НЮСТРЁМА / ТЕНЗОРНЫЕ ОБОЗНАЧЕНИЯ / PARTITIONED RUNGE–KUTTA METHOD / RUNGE–KUTTA–NYSTR̈OM METHOD / SYMPLECTIC NUMERICAL METHODS / TENSOR NOTATION

Аннотация научной статьи по математике, автор научной работы — Геворкян Мигран Нельсонович

В статье продемонстрировано использование тензорной нотации для записи симплектических численных схем. Приведены условия симплектичности для раздельного метода Рунге–Кутты и для метода Рунге–Кутты–Нюстрёма. Дан обзор конкретных реализаций симплектических численных методов до 6-го порядка точности включительно.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Specific Implementations of Symplectic Numerical Methods

The paper illustrates the use of the tensor notation for writing symplectic numerical schemes. Symplectic conditions are given for the partitioned Runge–Kutta and Runge–Kutta–Nystr̈om methods. The specific implementations of symplectic numerical methods are reviewed.

Текст научной работы на тему «Конкретные реализации симплектических численных методов»

Численные методы и их приложения

УДК 517.958

Конкретные реализации симплектических численных

методов

М. Н. Геворкян

Кафедра систем телекоммуникаций Российский университет дружбы народов ул. Миклухо-Маклая, д. 6, Москва, Россия, 117198

В статье продемонстрировано использование тензорной нотации для записи симплектических численных схем. Приведены условия симплектичности для раздельного метода Рунге—Кутты и для метода Рунге—Кутты—Нюстрёма. Дан обзор конкретных реализаций симплектических численных методов до 6-го порядка точности включительно.

Ключевые слова: симплектические численные методы, раздельный метод Рунге— Кутты, метод Рунге—Кутты—Нюстрёма, тензорные обозначения.

Введение

Данная статья преследует следующие цели:

1. Дать обзор конкретных реализаций существующих симплектических численных методов, в том числе и высоких порядков (третьего, четвёртого и пятого). Общедоступная литература на русском языке, известная автору, по этой теме ограничивается статьями [1—3]. Обзор численных схем с вычисленными коэффициентами представляется полезным для практических применений.

2. Проиллюстрировать преимущество обозначений Эйнштейна для численных схем. Можно выдвинуть два тезиса для обоснования использования таких нетипичных для области вычислительной математики обозначений. Во-первых, ввиду того, что понятие симплектической формы относится к дифференциальной геометрии, где общеприняты тензорные обозначения, использование таких же обозначений при записи численных методом унифицирует изложение и не принуждает переключаться с одного стиля индексов на другой. Во-вторых, правило суммирования Эйнштейна упрощает выкладки (например, доказательство условий симплектичности становятся технически проще). Это особенно сказывается в многомерном случае.

3. Продемонстрировать алгоритмы, позволяющие программно реализовать сим-плектический раздельный метод Рунге-Кутты и симплектический метод Рун-ге-Кутты-Нюстрёма.

Заметим, что от читателя предполагается знакомство с методом Рунге-Кутты, раздельным методом Рунге-Кутты и с методом Рунге-Кутты-Нюстрёма. Необходимую информацию по данным вопросам можно найти, например, в книге [4].

1. Использование тензорной нотации при записи

численных схем

1.1. Задача Коши для ОДУ и систем ОДУ

Сформулируем в общем виде задачу Коши, к которой будут применяться рассматриваемые в работе численные методы. Начнём с задачи для одного обыкновенного дифференциального уравнения (ОДУ), а затем перейдём к системе.

Рассмотрим функцию у(х): К ^ К, определённую на отрезке [ж0,Х] € К и принадлежащую классу Ск[х0,Х] достаточно гладких функций, где к меняется в

Статья поступила в редакцию 2 октября 2012 г.

зависимости от задачи. Аналогично функция /(х, у(х)): К ^ К также принадлежит к классу достаточно гладких функций. Задача Коши записывается следующим образом:

(y'(х) = f(х, У(х)),

I У(хо) = У о

Рассмотрим функцию у(х): К ^ , где по-прежнему х € [хо, X] € К. Анало-

гично Г(х, у(х)) € Ск[хо,Х]. Известно, что множество гладких на отрезке функ-

ций образует конечномерное (размерность N) линейное пространство над полем К. Кроме того, из того факта, что любое конечномерное линейное пространство изоморфно пространству вектор-столбцов V• (контравариантных векторов) (или же вектор-строк V» — ковариантных векторов), следует изоморфизм: Ск[хо,Х] =

V • = V,.

В дальнейшем при работе с симплектической формой нам придётся учитывать различие между контравариантными векторами (или короче векторами) и ковариантными векторами (или короче ковекторами). Поэтому удобнее перейти к принятой в дифференциальной геометрии системе обозначений. Будем обозначать:

уа(х)

/у1(х)\

V yN (х)/

— вектор, уа = (у 1(х),..., yN (х)) — ковектор.

Заметим, что под уа(х) и уа подразумеваются не отдельные компоненты, а сам вектор и ковектор. В случае формулировки задачи Коши для системы из N уравнений удобно воспользоваться вышевведёнными обозначениями: Обычная запись Тензорная нотация

Г // Л / ^ ( Уа(х) = Г(х, у13 (х)),

(у' (х) = Г (х, у(х)), у ^

\У(г))=У, {уа(х°)=у°, {у(хо) = у= =

Под записью /а(х, у13(х)) подразумевается /а(х, у1(х),..., yN(х)). Выбор в качестве индексов греческих букв а, ... будет пояснён далее.

1.2. Сеточная функция

Начнём изложение с одномерного случая. Будем считать, что функция у(х) — точное решение задачи Коши 1. Возникает вопрос об аппроксимации этой функции.

На [хо,Х] зададим упорядоченный набор точек хо < х1 < х2 < ... < хп-\ < хп = Х, который называют сеткой; х{+1 — Xi = hi+i — переменный шаг сетки, г = 0,... ,п — 1. Для упрощения обозначений часто будем предполагать, что сетка равномерная и х^+1 — х» = h = const, V = 1,... ,п.

Пусть каждой точке х1 сетки по некоторому правилу (численной схеме, применяемой к ОДУ) ставится в соответствие число yi. Ковектор y = {yi,..., уп}, i = 1,... ,п называют сеточной функцией; y представляет собой элемент конечномерного линейного пространства V», элементы которого — векторы-строки. Сеточную функцию используют для аппроксимации функции ( х).

Важно заметить, что значение функции у(х) в точке х^ и значение сеточной функции в этой же точке не обязательно равны у(хi) = у^. Более того, из сказанного выше видно, что у(х) и y принадлежат разным пространствам. Естественным образом возникает необходимость свести у(х) и y в одно пространство, для того чтобы иметь возможность ввести норму и оценить погрешность аппроксимации е. Существуют два способа сделать это [5]:

— построить с помощью интерполяционных методов функцию непрерывного аргумента, используя для интерполяции значения уо,...,уп. Построенную непрерывную функцию уже можно сравнить с у(х);

— с помощью у(х) задать сеточную функцию у(хг) и сравнить у(хг) с уг. Тогда погрешность аппроксимации можно получить, воспользовавшись какой-нибудь нормой конечномерного линейного пространства, например,

£= 1 у{х) - у^.

О^г^п

В [5] указывается, что наиболее последовательным является первый метод, но наиболее используемым второй, так как он проще.

Для записи численной схемы в многомерном случае удобно также использовать тензорную нотацию. Можно выдвинуть два тезиса для обоснования использования таких нетипичных для области вычислительной математики обозначений. Во-первых, ввиду того, что понятие симплектической формы относится к дифференциальной геометрии, использование похожих обозначений при записи численных методов унифицирует изложение и не принуждает переключаться с одного стиля индексов на другой. Во-вторых, правило суммирования Эйнштейна упрощает выкладки — упрощается их техническое выполнение и уменьшается громоздкость. Например, доказательство условий симплектичности становится технически проще. Таким образом, тензорная нотация, применительно к численным схемам, является удобным техническим приёмом.

Рассмотрим функцию у?(х), которую необходимо аппроксимировать. На отрезке [хо,Х] строится сетка и вводится сеточная функция

у? = (у ?,..., у?) =

(у\ ... у2\

1 N

У 2 ... У 2

\У~П ... Уп)

Иными словами, аппроксимация проводится для каждой компоненты в отдельности. Все алгоритмы будем записывать для первого шага итерации, поэтому в дальнейшем будем работать с у?. Заметим, что для индексов, относящихся к численной схеме, будут использоваться латинские буквы %,'},к,1,т,.... Это позволяет не путать их с индексами из системы ОДУ.

Теперь на примере классического метода Рунге-Кутты проиллюстрируем индексные обозначения Эйнштейна. Особенно удобны они в многомерном случае. Заметим, что в зависимости от задачи, значения функций у(х) и Г(х, у) могут образовывать как вектор-столбец, так и вектор-строку. В общем случае будем записывать у(х) как вектор-столбец:

Обычная запись Правило суммирования Эйнштейна

Г // Л / ^ ( Уа(х) = Г(х, у13 (х)),

Г у'(х) = Г (х, у(х)), у V ; J к к ;;>

У((х)) = у( , { У?(хо) = У?,

Под записью /?(х, у3(х)) подразумевается /?(х, у2(х),..., у2(х)). Греческие буквы используются для обозначения индексов, относящихся к системе ОДУ. Это позволяет не смешивать их с латинскими (г, к, I и т.д.) индексами численной схемы.

Теперь схема Рунге-Кутты будет выглядеть так:

Обычная запись Правило суммирования Эйнштейна

k = f I У о + ajк,х0 + hCi\ , ( k? = fa(yß + hajkß,Xo + hCi),

^ s 3=1 ' \ У? = Уо +hVk?,

У1 = Уо + h ^Ьгкг; i,j = 1,...s, 1где iJ = 1,...s, a,ß = 1,...,N.

=1

Иными словами, bj — контравариантный вектор (вектор), принадлежащий s-мерному линейному пространству V* векторов-столбцов, Cj — ковариантный вектор (ковектор), принадлежащий сопряжённому V* s-мерному пространству векторов-строк V,; aj £ V• <8> V. — тензор 1 раз контравариантный и 1 раз ковариантный (говоря проще — матрица s х s).

2. Условия симплектичности методов семейства

Рунге—Кутты

Далее используются следующие обозначения: qa = (q1,..., qN )Т — обобщённые координаты (вектор), ра = (рi,...,Pn) — обобщённый импульс (ковектор), Qa и Pa — некоторые промежуточные величины, вычисляемые на каждой итерации метода, Н(ра, qa) — функция Гамильтона.

Нас будут интересовать явные симплектические численные схемы. Такие схемы можно сформулировать для раздельных методов Рунге-Кутты и для методов Рунге-Кутты-Нюстрёма.

2.1. Условие симплектичности раздельного метода Рунге—Кутты

Рассмотрим систему уравнений Гамильтона вида:

Ра(t) = fa(pß, qß, t), qa(t) = ga(pß, qß, t), a,ß = 1,...,N

и запишем для неё раздельный метод Рунге-Кутты:

' Pia = Роа + hajfa(to + Cih, Pjß, Qß),

Q? = q? + hajga(to + ah, Pjß, Qß),

Pia =Р0 а + h blfa(to + Cih, Piß ,Qß ),

1 ? = ? ß

qа = q? + hЪгдa(t0 + ah, P%ß, Qß), J,j = 1,..., s; a, ß = 1,..., N.

Сформулируем условия симплектичности раздельного метода Рунге-Кутты.

Теорема 1 (см. [1]). Для гладкого гамильтониана Н(ра, qa) раздельный метод Рунге-Кутты является симплектическим при выполнении следующих тождеств:

Ьг = Ьг V = 1,..., з;

Ъга\ + Ъа^ — ЬгЪ° = 0, V,] = 1,..., в (суммирования нет).

Для гамильтониана вида Н(ра, qa) = Т(ра) + и(да) раздельный метод Рунге-Кутты изначально является симплектическим.

2.2. Условие симплектичности метода Рунге—Кутты—Нюстрёма

Рассмотрим гамильтониан вида:

Н (ра, да, I) = 1»а3РаРз + и (да), а,р = !,..., М

где ^а3 — компоненты симметричной матрицы М-1 (матрица масс). Канонические уравнения для этого гамильтониана выглядят следующим образом:

Г ра(г) = и(д3 (г)), \ да(г) = »а3Рз(г),

ввиду того, что:

!Н = Га13{+ Р< Ш) = ^ (5> +5Ы = ^ + ^

дд< дд< = ).

Для упрощения выражения немые индексы можно переобозначить, а также использовать симметричность матрицы М-1:

\^]3РЗ + = 2 (ма3+/а) Р, = [№3 = ^ ]] = ^ Р, .

Метод Рунге-Кутты-Нюстрёма для этой системы запишется как:

= д< + к Сфа3р0з + !12а{»а3/з (Я]),

д< = д< + 3р0 з + Ъ21>г^а31з (Я]),

Р1а = РО а + к Ьг!а( Я3 ).

Теорема 2 (см. [6]). Чтобы метод Рунге-Кутты-Нюстрёма, применённый к каноническим уравнениям с гамильтонианом вида:

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Н(ра, да, 1) = 2^а3РаРз + и(да), с симметричной матрицей ^а3, необходимо выполнение условий:

Ьг = Ьг(1 - сг), Ьг(Ь^ -а\) = Ь^(Ьг - а)), г,] = !,... ,в. 3. Явные симплектические схемы

3.1. Явные симплектические раздельные методы Рунге—Кутты.

Конкретные реализации

Согласно условию симплектичности раздельного метода Рунге-Кутты, для гамильтониана вида Н(ра, да) = Т(ра) + и(да) («распадающийся» гамильтониан) метод изначально симплектичен. Однако наибольший интерес в практическом плане представляет явная численная схема. Для её построения рассмотрим раздельный метод Рунге-Кутты с коэффициентами вида:

а^ =0, У < ] (диагонально неявный),

а1 =0, У < ] (явный).

BU

Pia =р0а - haj -J— (Qß),

dq • ВТ

Qa = qa + haj q^ (Piß),

В U

Pia =Р0а - Ы)г (Qß)

q a = qa + h bг ^ (Piß),

- a

J,j = 1,..., s; a,ß = 1,...,N. Заметим, что из условий (2) следует:

Vi ^ aj = 0 и aj = 0, Vi <j ^ a{ = 0 и aj = 0.

(3)

Условия симплектичности раздельного метода Рунге-Кутты с учётом (2) и (3) упрощаются:

Vaj + baj - Ьг¥ =0 ^

'Vi ^ tfaj = Ь>Ьг ^ aj = bj,

Vi >j ^ vaj = vü ^ aj = ьг,

а таблица Батчера записывается в виде:

Ь1 0 Ь1 Ь2

0

b1 b2 b3

0

1 1

2 2

3 3

1 2 3

0

b1 0

b1 2 0

bs-i 0 b1 2 3 . . . 0 0

bs-i s b1 2 3 . . . bs-1 0

bs-i bs b1 2 3 . . . bs-1 s

в более компактном виде (в две строки)

b1 b2 s

b1 b2 s

Схема принимает простой вид:

Ргa =Р 0a - hbj (Q ),

-Bu

Bq a - Т

Qa = qa + ш j Qfa (Pjß),

BU

Pia =P0a - hbг (Qß)

q a = qa + h bг BB^ (Piß),

J,j = 1,..., s; a, ß = 1,..

N

и легко записывается в виде алгоритма:

Роа ^ РОа

QO ^ Qo

for г = 1 —у s do

Рга ^ Ра,г-1 - hbг ^ (QO )

QO+1 ^ QO + hV ^ (Рга)

end for

р1а ^ Psa

qi ^ QO+1

Перейдём к рассмотрению конкретных численных реализаций. Начнём с известных методов малых порядков.

Пример 1 (Первый порядок точности). Рассмотрим случай в = 1 ,р = 1

(одностадийный раздельный метод Рунге-Кутты) и два варианта матрицы Бат-чера:

ъ1 0 0 ь1

ь1 ъ1 ь1 ь1

В случае Ь1 = 1 и Ь1 = 1 получим:

1 0 и 0 1

1 1 1 1

Р1а

После упрощения:

Р1а

{ QO = qO,

Р1а =РОа - (Qß ),

"а =?а + Ьщ! (Р1"

, ди ß Р°а - hTT~ (Qß).

dq O

Р h dU (аß)

дТ

q° = q° + hdp- (Р 1ß).

QO = qO + hdd- (Р1а),

Р1 а = а,

= 1° + "д^ (p1ß

P1o =P0O - hд^(Qß).

P1O =Р0O - "|O(,ß),

дТ

qO = $ + hdp- (p0 ß).

Первый метод — явно-неявный метод Эйлера, а второй — присоединённый к нему.

и

и

Пример 2 (Второй порядок точности). Рассмотрим случай в = 2, р =

2 (двустадийный раздельный метод Рунге-Кутты) и опять таки два варианта матрицы Батчера:

0 0 1 0 1/2 0 1/2 0 и 1/2 0 1/2 0 0 0 1 0

1 0 1/2 1/2 1/2 1/2 1 0

Распишем для наглядности шаги алгоритма для метода с первой таблицей Батчера:

Да = РОа, ЯХ = Яо,

Pl

la

ñU h ñT

P a - ^ = Q + 2 ñS (P1ß

qa ñ U

P2a =Pla - h^ (Qß ), Яа = Qa,

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Pía = P2a, qa = Qa.

После некоторых преобразований угадывается метод Штёрмера-Верле:

ñ U

Pl

l a

qa

Pa - h^(qß),

qa+ñpr¿P»

ñU

ñ U

Pía = PO a - h TT— (qß) + (Qß )

ñ

ñ a

Пример 3 (Третий порядок точности). Рассмотрим случай р = 3,в = 3.

Сочетая условия порядка для раздельных методов Рунге-Кутты и условия сим-плектичности, получим следующие уравнения:

Ь1 + Ь2 + Ь3 = 1, Ь1 + Ь2 + Ь3 = 1, Ь2Ь1 + Ь3( Ь1 + Ь2)2 = 1/2, Ь2(Ь1)2 + Ь3(Ь1 + Ь2) = 1/3, Ь\Ь1)2 + Ь2(Ь1 + Ь2)2 + Ь3(Ь1 + Ъ2 + Ь3)2 = 1/3.

Простое решение предложил Рут [7]:

bi 7/24 3/4 -1/24

ьг 2/33 -2/3 1

P0a = P0a i Qa = qo 7hñU

Pl a = P a

P2a = Pía —

l a

2h ñT

2idqa (Qg), Qa = Я + Tñ£ (Píg)i

3h ñU (Qg), Я? = Q? - Pß),

P3a = P2a +

4 ñqa h ñU

(Qg), Qa = Qa + (P3ß)

3 ñpa ñ T

24 ñq

Pía = P3a1 ql = Qa.

ñ a

Санс-Серна в работе [8] вычислил другой набор коэффициентов для этого же метода:

bi 0, 268330 -0,187992 0,919662

Ьг 0, 919662 -0,187992 0, 268330

Пример 4 (Четвёртый порядок точности). Перейдём к рассмотрению методов 4-го порядка р = 4. Форест и Рут (Forest, Ruth) в работе [9, стр. 11] путём решения условий порядка нашли аналитические выражения для коэффициентов 4-стадийного метода:

b1 = 0

b2 = 1 (1 + $2 + 1/ $2) b3 = 11 (1 -$2 - 1/$2) 64 = 1 (1 + $2 + 1/ $2)

b1 = 1 (1 + $2 + 1/ $2) b2 = 1 (1 - $2 - 1/$2) b3 = 1 (1 - $2 - 1/$2) b4 = ± (1 + $2 + 1/ $2)

В след за ними похожие коэффициенты (также для 4-стадийного метода) аналитически вычислили Кэнди и Расмус (Candy, Razmus) в работе [10]:

Ь1 = 1 (2+ $2 + 1/ $2) Ъ2 = 1 (1 - $2 - 1/$2) б3 = 6 (1 - $2 - 1/$2) Ь4 = 1 (2+ $2 + 1/ $2)

Ь1 = 0

Ь2 = (2 - $2)-1 Ь3 = (1 - $4)-1 Ь4 = (2 - $2)-1

Следующие две реализации метода 4-го порядка, но уже 6-й стадийности, были найдены Окунбором и Скилом (ОкипЬог, Якее!) в работе [6]:

bi 7/48 3/8 -1/48 -1/48 3/8 7/48

ьг 1/3 -1/3 1 -1/3 1/3 0

и Санс-Серной (Sanz-Serna) в работе [8]:

bi 0,134165 -0, 093996 0,459831 0,459831 -0,093996 0,134165

ьг 0,459831 -0, 093996 0, 268330 -0, 093996 0,459831 0

Стадийность, равная шести, объясняется тем, что коэффициенты находились не путём решения условий порядка, а композицией базовых симплектических методов более низкого порядка.

Методы порядка р > 4 относятся к методам Рунге-Кутты-Нюстрёма, к рассмотрению которых мы и перейдём.

3.2. Явные методы Рунге—Кутты—Нюстрёма. Конкретные

реализации.

Естественно, что особый интерес представляют явные методы Рунге-Кутты-Нюстрёма. Положим

а^ = 0, V < г,] = 1,..., в

В этом случае из условий симплектичности метода Рунге-Кутты-Нюстрёма следует:

ка - ьщ = ь? а,

ьЩ = ъ1а> - ъ?а = иъ? {а - Cj), Щ = У - с,-).

Теорема 3 (см. [11]). Для того, чтобы явный метод Рунге-Кутты-Нюстрёма был симплектическим, необходимо и достаточно, чтобы выполнялись следующие соотношения для коэффициентов (суммирования нет):

Ьг = Ьг(1 - а),

aj = b° (Ci - Cj) для i > j для остальных а^ = 0 hj = 1,...,s.

Таким образом, достаточно задать коэффициенты Ьг и q. Положив а = Q-1, запишем явный метод Рунге-Кутты-Нюстрёма в виде алгоритма:

Qo ^ <?о

Р0а ^ Р0а

for г = 1... ,s do Qi ^ Q?-1 + h(сг - сг-1)!ла3Ррг-1 Рга ^ Раг-1 + h6%(Qf) end for

g? ^ Q? + h(1 - cs)na3PsP

p1a. ^ Psa

Перейдём к рассмотрению конкретных численных реализаций.

Пример 5 (Первый порядок точности). Наиболее простой метод получается для одной стадии: = 1. В этом случае = 1, а 1 выбирается произвольно.

В [11] указанно значение с1 = 1/2:

1

Qi = ?о + ^ h^p op,

1

q'_? = qg + h^po^ + 2 hV^ (Q7) „P1a = P0a + h fa(Q3), a,/3,1 =1,..

Пример 6 (Второй порядок точности). Для случая p = 2 и s = 2:

0 0 0

1 1/2 0

1/2 0

1/2 1/2

Пример 7 (Третий порядок точности). Для в = 3 Окунбор и Скил [6] нашли точные коэффициенты:

1

= 1 - * = 6(2 + ^ + $?) ■

2=

Коэффициенты Ь1, Ь2 и б3 находятся из первых трёх условий порядка:

Ь1 + б2 + б3 = 1, 6^1 + 62С2 + 63сз = 1/2, 61с2 + Ь2с2 + 63с2 = 1/3.

Пример 8 (Четвёртый порядок точности). Для 8 = 5 и р = 4 Калво и Санс-Серной [12-14] численно вычислили коэффициенты:

ci =0 б1 = 0,0617588581356263250

С2 = 0, 2051776615422863869 Ь2 = 0,3389780265536433551

с3 = 0, 6081989431465009739 Ъ3 = 0,6147913071755775662

с4 = 0,4872780668075869657 б4 = -0,1405480146593733802

СБ = 1 ЬБ = 0,1250198227945261338

Пример 9 (Порядок точности выше четвёртого). Калво и Санс-Серна [15] получили метод с 8 = 13, р = 7 и метод с 8 = 28, р = 8. Йошида (УовЫёа) [16] нашёл метод с 8 = 16, р = 8 с помощью композиции базовых методов (см. далее). Окунбор и Скил в работах [17,18] предприняли численный поиск коэффициентов для методов высоких порядков (р = 5, р = 6 и р = 8). Рассмотрим полученные ими методы подробнее.

— Для метода р = 5, 8 = 5 существует 10 условий порядка для 10 коэффициентов. Найдены 4 решения этих условий [19].

— Для метода р = 6, 8 = 6 решений найти не удалось. Решения искались для симметричного метода. Окунбор и Скил высказали предположение, что симметричного симплектического метода с р = 6, 8 = 6 не существует [17].

— Для метода р = 6, 8 = 7 численно найдено 8 решений условий порядка [17].

— Для метода р = 8, 8 = 17 численно найдено 1 решение условий порядка [18].

Интересен метод 8 = 5 и р = 5. Он имеет высокий порядок точности и вместе с тем небольшую стадийность, что положительно сказывается на скорости вычислений. Приведём здесь несколько вариантов коэффициентов этого метода:

1 2

ъ1 -1, 67080892327314312060 0,22116193442417902970

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

ь2 1,22143909230997538270 1,00218471521051766260

ъ3 0, 08849515813253908125 0,20420286893045538901

ь4 0, 95997088013770159876 -0, 82437756359543068463

ъ5 0,40090379269297793385 0,39682804503028051846

С1 0, 69491389107017931259 0, 77070344943939539384

С2 0, 63707199676998338411 0,24564166478370674795

С3 -0,02055756998211598005 0,87295101556657583863

С4 0,79586189634575355001 0,13352418017438366649

Сб 0,30116624272377778837 0,03827009985427366062

3 4

Ь1 0,40090379269664777606 0,39682804502748120212

ь2 0,95997088013412390506 -0,82437756359000080586

ъ3 0,08849515812721633901 0,20420286893142899909

ъ4 1,22143909234910252870 1,00218471520794616400

ъб -1, 67080892330709041000 0,22116193442314432960

С1 0, 69883375727544694289 0,96172990014637649292

С2 0, 20413810365459889029 0,86647581982605526019

С3 1,02055757000418534370 0,12704898443392728669

С4 0,36292800323075291580 0,75435833521637640775

Сб 0,30508610893167564804 0,22929655056040595951

Заключение

В статье рассмотрено использование тензорной нотации при записи численных схем. Показано, что использование таких обозначений не приводит к противоречию, но унифицирует изложение и упрощает выкладки. К сожалению, ввиду ограничения места не удалось показать полезность тензорной нотации при доказательстве условий симплектичности методов семейства Рунге-Кутты.

При обзоре известных симплектических численных схем особое внимание было уделено конкретным реализациям этих схем ввиду их практической значимости.

Литература

1. Сурис Ю. Б. Гамильтоновы методы типа Рунге-Кутты и их вариационная трактовка // Математическое моделирование. — 1990. — Т. 2, № 4. — С. 7887. [Suris, Yu. B. Hamiltonian Runge-Kutta Type Methods and Their Variational Interpretation Mat. Model. — 1990. — No 2. — P. 78-87 ]

2. Сурис Ю. Б. О некоторых свойствах методов численного интегрирования систем вида X = f(x) // Журнал вычислительной математики и математической физики. — 1987. — Т. 27, № 10. — С. 1504-1515. [Suris Yu. B. The Canonicity of Mappings Generated by Runge-Kutta Type Methods when Integrating the Systems X = f(x) // Computational Mathematics and Mathematical Physics. — 1989. — Vol. 29, No 2. — P. 202-211 ]

3. Ракитский Ю. В. О некоторых свойствах решений систем обыкновенных дифференциальных уравнений одношаговыми методами численного интегрирования. // Журнал вычислительной математики и математической физики. — 1961. — Т. 1, № 6. — С. 947-962. — http://mi.mathnet.ru/ zvmmf7998. [Rakitskii Yu. V. Some Properties of the Solutions of Systems of Ordinary Differential Equations by One-Step Methods of Numerical Integration // Computational Mathematics and Mathematical Physics. — 1961. — Vol. 1, No. 6. — P. 947-962 ]

4. Хайрер Э., Нёрсетт С., Ваннер Г. Решение обыкновенных дифференциальных уравнений. Нежесткие задачи / под ред. С. С. Филиппова. — 1 издание. — М.: Мир, 1990. — ISBN 5-03-001179-Х, С. 512. [Hairer E. and Norsett S. P. and Wanner G. Solving Ordinary Differential Equations I, 1990. — 512 p. ]

5. Костомаров Д. П., Фаворский А. П. Вводные лекции по численным методам. — 1 издание. — М.: Логос, 2004. — С. 184. [Kostomarov D. P., Favorskiy A. P. Introductory Lectures on Numerical Methods. — Logos, 2004 ]

6. Okunbor D. I., Skeel R. D. Explicit Canonical Methods for Hamiltonian Systems // Mathematics of Computation. — 1992. — Vol. 59. — Pp. 439-455.

7. Ruth R. D. A Canonical Integration Technique // IEEE Transactions on Nuclear Science. — 1983. — Vol. 30, No 4. — Pp. 2669-2671. — ISSN 0018-9499. — http: //dx.doi.org/10.1109/TNS.1983.4332919.

8. Sanz-Serna J. M. The Numerical Integration of Hamiltonian Systems // Computational Ordinary Differential Equations / Ed. by J. R. Cash, I. Gladwell. — Clarendon Press, Oxford, 1992. — Pp. 81-106.

9. Forest E., Ruth R. D. Fourth-Order Symplectic Integration // Physica D Nonlinear Phenomena. — 1990. — Vol. 43. — Pp. 105-117.

10. Candy J., Rozmus W. A Symplectic Integration Algorithm for Separable Hamiltonian Functions // Journal of Computational Physics. — 1991. — Vol. 92, No 1. — Pp. 230-256.

11. Hairer E., Norsett S. P., Wanner G. Solving Ordinary Differential Equations I. — 2 edition. — Berlin: Springer, 2008. — ISBN 978-3-540-56670-0, P. 528.

12. Calvo M. P., Sanz-Serna J. M. Order Conditions for Canonical Runge-Kutta-Nystrom Methods // BIT. — 1992. — Vol. 32. — Pp. 131-142.

13. Calvo M. P., Sanz-Serna J. M. High-Order Symplectic Runge-Kutta-Nystrom Methods // SIAM J. Sci. Comput. — 1993. — Vol. 114. — Pp. 1237-1252.

14. Calvo M. P., Sanz-Serna J. M. Reasons for Failure. The Integration of the Two-Body Problem with a Symplectic Runge-Kutta-Nystrom Code with Stepchanging Facilities // Equadiff 91 / Ed. by C. Perello, C. Simo, J. Sola-Morales. — World Scientific, Singapore, 1993. — Pp. 34-48.

15. Calvo M., Sanz-Serna J. The Development of Variable-Step Symplectic Integrators, with Application to the Two-Body Problem // SIAM Journal on Scientific Computing. — 1993. — Vol. 14, No 4. — Pp. 936-952.

16. Yoshida H. Construction of higher order symplectic integrators // Physics Letters A. — 1990. — Vol. 150, No 5-7. — Pp. 262-268. — http://linkinghub.elsevier. com/retrieve/pii/0375960190900923.

17. Okunbor D. I., Lu E. J. Eighth-Order Explicit Symplectic Runge-Kutta-Nystrom Integrators. — 1994.

18. Okunbor D., Skeel R. D. Canonical Runge-Kutta-Nystrom Methods of Orders 5 and 6 // J. Comput. Appl. Math. — 1994. — Vol. 51, No 3. — Pp. 375-382.

19. Hairer E, Lubich C., Wanner G. Geometric numerical integration: structure-preserving algorithms for ordinary differential equations. Springer series in computational mathematics. — Springer, 2006. — ISBN 9783540306634. — http: //books.google.ru/books?id=T1TaNRLmZv8C.

UDC 517.958

Specific Implementations of Symplectic Numerical Methods

M. N. Gevorkyan

Telecommunication Systems Department Peoples' Friendship University of Russia 6, Miklukho-Maklaya str., Moscow, 117198, Russia

The paper illustrates the use of the tensor notation for writing symplectic numerical schemes. Symplectic conditions are given for the partitioned Runge-Kutta and Runge-Kutta-Nystrom methods. The specific implementations of symplectic numerical methods are reviewed.

Key words and phrases: symplectic numerical methods, partitioned Runge-Kutta method, Runge-Kutta-Nystrom method, tensor notation.

i Надоели баннеры? Вы всегда можете отключить рекламу.