Вычисление корней многочлена p(x) = x6 + 5x5 – 7x4 + 3x3 – 6x2 + x +12 различными методами. Решение обыкновенных дифференциальных уравнений, страница 3

Сравним найденные корни с корнями, полученными с помощью стандартной функции Mathcad:

Возвращает все корни уравнения (с использованием метода ЛаГуэрре (LaGuerre))

Значения полинома при подстановки полученных корней

3. Решение обыкновенных дифференциальных уравнений (ОДУ)

3.1. Метод Адамса

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

(1)

Обозначим через  и заменим q(x) интерполяционным полиномом t(x), построенным по значениям t(x) в предыдущих точках. Степень полинома r выбирается из условия постоянства конечных разностей r-го порядка. Обычно уже разности третьего порядка практически постоянны.

В этом случае, применяя вторую интерполяционную формулу Ньютона, можно на отрезке  с узлами интерполяции  построить интерполяционный полином::

,

(2)

где

Преобразуем формулу (1), произведя замену переменной на основе (2):

Подставив эту формулу в выражение для и произведя интегрирование, окончательно получим:

Эта формула называется экстраполяционной формулой Адамса, она применяется для предсказания значения . Полученное значение  следует еще уточнить по формуле «коррекции», называемой интерполяционной формулой Адамса:

Для системы дифференциальных уравнений второго порядка с постоянными коэффициентами

найти приближённое решение методами:

- Адамса

- Адамса-Крылова

на отрезке [1;3].

Проанализировать влияние шага Dx  решения ОДУ на точность решения

Начальное значение:

Отрезок:

Вычисления будем проводить для двух различных шагов сетки:

Вычислим число узлов сетки для шагов h и h/2:

Решим задачу Коши встроенной функцией rkfixed

rkfixed -встроенная функция;

входные параметры:

y - вектор начальных значений;

t0- начальная точка отрезка;

T - конечная точка отрезка;

N - число узлов сетки;

f - функция правой части.

Запрограммируем метод Адамса:

Сравнение значений, полученных методом Рунге-Кутта для разных шагов

Решим по описанному методу задачу Коши с шагом h:

вектор начальных значений функции:

с шагом h:

с шагом h/2:

Построим графики решений:

Сравнение значений, полученных методом Адамса для разных шагов


Сравнение значений, полученных методом Адамса и методом Рунге-Кутта для разных шагов


3.2. Метод Адамса – Крылова

Применение метода Адамса предполагает наличие четырех начальных значений искомой функции. В случае, если правая часть уравнений  задана аналитически, то необходимые начальные значения можно найти с помощью известных приближенных методов (метод Пикара, последовательного дифференцирования, метод Рунге-Кутта и др.). Но если правая часть уравнения  задана таблично, то эти методы неприменимы. В этом случае очень удобным является метод «последовательных сближений», предложенный А. Н. Крыловым и модифицированный Милном. Сущность метода заключается в следующем. Обозначим как и прежде:

;   ;

;      (i = 0, 1, 2, …)

Задача заключается в построении таблицы:

Табл. I.

n

x

y

Dy

q

Dq

D2q

D3q

0

x0

y0

Dy0

Dy1

Dy2

q0

Dq0

Dq1

Dq2

D3q0

1

x1

y1

q1

D2q0

2

x2

y2

q2

D2q1

3

x3

y3

q3

Для решения задачи достаточно вычислить величины Dy0, Dy1, Dy2 (первые разности).

В основе метода лежит итерационная обработка узлов с помощью формул Эйлера и Адамса. Проще всего вычисления разностей можно осуществить на основе преобразования «прогнозирующей» формулы Адамса:

(3)

Полагая в этой формуле постоянными третьи разности, т. е.:

.

Заменим в формуле (3) разности  на . Тогда имеем:

(4)

Так как , то подставив это выражение в (4) и снова заменяя номер третьей разности, получим

(5)

В свою очередь, т. к.  и , то после замены третьей разности  на , приведем (5) к виду:

(6)

Полагая в формуле (6) соответственно, n = 0, 1, 2, получим формулы:

(7)