Численное решение задачи Коши для системы обыкновенных дифференциальных уравнений, страница 7

Решение ЗК (2) можно найти аналитически и сравнить с приближенным в точках выдачи.

Литература

  1. Методические указания по вычислительному практикуму. Ч.3., Л. 1984
  2. Арушанян О.Б., Залеткин С.Ф. Численное решение ОДУ на Фортране., МГУ, 1990.

Тема 5. Численное решение задачи Коши (ЗК) для системы обыкновенных дифференциальных уравнений.

Задание 13

1. Привести общий вид безразностных формул экстраполяционного метода Адамса (ЭМА) для нахождения приближенного решения ЗК

,                      (1)

где  – искомая, а  – заданная вектор-функции, – заданный вектор.

Дать определения:

а) глобальной (методической) погрешности (ГП) ЭМА; б) порядка точности ЭМА.

Как связан порядок точности ЭМА с числом узлов в его формуле? Сформулировать правило Рунге для практической (апостериорной) оценки ГП ЭМА. На чем оно основывается и при каких условиях применимо?

2. Конкретизировать параметры и вид 5-шагового ЭМА, а также правило Рунге для оценки его ГП. Изложить алгоритм метода с автоматическим выбором постоянного шага интегрирования по заданной величине  глобальной погрешности. Для вычисления приближенного решения в начальных узлах использовать классический метод Рунге-Кутты (метод 5 из [1, стр. 9] или метод (22) из [2, стр. 62]).

3. Составить программу, реализующую алгоритм из п. 2.

Входные данные программы: , , , , , ;  – начальный шаг интегрирования;  – минимальный допустимый шаг сетки;  – число точек выдачи результатов; tr(1), tr(2), …, tr() – точки выдачи результатов.

Выходные результаты: ; tr(1), tr(2), …, tr(); yr(1), yr(2), …, yr() – приближенные значения искомого решения  в точках выдачи; hr – шаг, на котором получено решение с требуемой точностью .

4. С помощью составленной программы найти приближенное решение ЗК

,        ,         , , .    (2)

с точностью  = 10-6. Точки выдачи результатов tr(i) = 0.2i,   i = 1,…,10. Начальный шаг  = 0.2.

Указание

1) Для вычисления ГП метода в текущей точке сетки рекомендуется решать ЗК (1) параллельно с шагом  и /2 и возвращаться в начальную точку  сразу же, как только ГП в текущей точке сетки превышает , а не после прохождения отрезка [, T] до конца.

2) В качестве точек выдачи брать узлы сетки.

Литература

  1. Методические указания по вычислительному практикуму. Ч.3., Л. 1984
  2. Арушанян О.Б., Залёткин С.Ф. Численное решение ОДУ на Фортране., МГУ, 1990.

Тема 5. Численное решение задачи Коши (ЗК) для системы обыкновенных дифференциальных уравнений.

Задание 14

1. Привести формулу метода Мерсона (метод 8 в [1, стр. 9 и 23]) для нахождения приближенного решения ЗК

,                      (1)

где  – искомая, а  – заданная вектор-функции, – заданный вектор.

Дать определения:

а) глобальной (методической) погрешности (ГП) этого метода; б) локальной погрешности (ЛП) этого метода.

Указать его порядок точности и формулу для апостериорной оценки его ЛП (по терминологии [2] – формулу контрольного члена метода). Каковы свойства последней формулы?

2. Изложить алгоритм метода Мерсона с автоматическим выбором переменного шага интегрирования по заданной величине  локальной погрешности для численного решения ЗК (1).

3. Составить программу, реализующую алгоритм из п. 2.

Входные данные программы: , , , , , ;  – начальный шаг сетки;  – минимальный допустимый шаг сетки;  – число точек выдачи результатов; tr(1), tr(2), …, tr() – точки выдачи результатов.

Выходные результаты: ; tr(1), tr(2), …, tr(); yr(1), yr(2), …, yr() – приближенные значения искомого решения  в точках выдачи; NT – число узлов сетки, на которой получено приближенное решение с ЛП ;  – максимальное значение величины (нормы) глобальной погрешности. Глобальную погрешность вычислять в текущем узле, решая ЗК (1) методом Мерсона параллельно на сетке с вдвое меньшими шагами, т. е. заменяя каждый шаг исходной сетки двумя половинными шагами. В контролирующем методе локальную погрешность вычислять не нужно.

Приближенное значение решения в точке выдачи tr(i), не совпадающей с узлами сетки и расположенной, например, между соседними узлами сетки  и , вычислять с помощью интерполяционного полинома Эрмита (почему?), построенному по приближенным значениям , .