Дифференциальные уравнения высшего порядка 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Дифференциальные уравнения высшего порядка



(4.3)

где (п) — порядок уравнения, могут быть сведены к системам уравнений с помощью следующих преобразований:

; ;; ; (4.4)

Следовательно, решение (4.3) сводится к решению системы дифференциальных уравнений первого порядка(4.4).

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

(4.5)

где h — шаг интегрирования (приращение переменной х). Этот метод обладает большой погрешностью и имеет систематическое накопление ошибок. Погрешность метода R~(h2), т. е. пропорциональна h2.

Метод Эйлера — Коши с итерациями за­ключается в вычислении на каждом шаге начального значения

(4.6)

Затем с помощью итерационной формулы

(4.7)

решение уточняется. Итерации проводят до тех пор, пока не совпадает заданное число цифр результата на двух последних шагах итераций. Погрешность метода R ~ (h3). Обычно число итераций не должно превы­шать 3—4, иначе нужно уменьшить шаг h.

Модифицированный метод Эйлера второго порядка реализуется следующими рекур­рентными формулами:

, (4.8)

где .

Метод дает погрешность R~(h3) и имеет меньшее время вычислений, поскольку вместо нескольких итераций производится вычисление только одного значения

Метод трапеций — одна из модификаций метода Эйлера второго порядка. Он реализуется применением на каждом шаге формулы

(4.9)

где , , и дает погрешность R~(h3). Этот ме­тод относится к общим методам Рунге - Кутта.

Метод Рунге — Кутта четвертого порядка является наиболее распространенным методом решения систем (4.4) при шаге h = const. Его достоинством является высокая точность — погрешность R~(h5) — и меньшая склонность к возникновению неустойчивости решения. Алгоритм реализации метода Рунге — Кутта заключается в циклических вычислениях Yj(i+1) на каждом i+1 шаге по следующим формулам:

; ;

; ;

(4.10)

При переходе от одной формулы к другой задаются или вычисляются соответствую­щие значения х и Yj и находятся по под­программе значения функций Fj (х, Yj,). Решение одного дифференциального уравнения методом Рунге — Кутта производится по приведенным формулам, если в них опустить индекс j, а из алгоритма исключить циклы.. Последнее резко упрощает программу и позволяет получить минимально возможное время счета.

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

Метод Рунге — Кутта для дифферен­циального уравнения второго порядка вида

, (4.11)

имеющий погрешность R~(h5), реализуется с помощью следующих формул:

;

;

;

; (4.12)

;

.

Перед началом вычислений надо задать шаг h и начальные значения хо, у(хо)=уо и у' (х0) =y0′.

Автоматическое изменение шага в ходе решения систем дифференциальных уравнений необходимо, если решение требуется получить с заданной точностью. При высокой точности (погрешность ε = E = 10-3) и решении в виде кривых с сильно разли­чающейся крутизной автоматическое изменение шага обеспечивает уменьшение общего числа шагов в несколько раз, резко уменьшает вероятность возникновения числовой неустойчивости, дает более равномерное расположение точек графика кривых (решений) при их выводе на печать.

Метод Рунге — Кутта с автоматическим изменением шага заключается в том, что после вычисления yj ( i +1) с шагом h все вы­числения проводятся повторно с шагом h/2. Полученный результат y*j ( i +1) сравнивается с yj ( i +1). Если с | yj ( i +1) ̶ y*j ( i +1)|< е, вычис­ления продолжают с шагом h, в противном случае шаг уменьшают. Если это неравен­ство слишком сильное, шаг, напротив, увели­чивают. При той же погрешности R~(hs ) лучшие результаты дает описанный ниже метод.

Метод Рунге — КуттаМерсона с авто­матическим изменением шага обеспечивает приближенную оценку погрешности на каж­дом шаге интегрирования. Погрешность интегрирования имеет порядок п5. Этот метод реализуется следующим алго­ритмом.

1. Задается число уравнений N, погрешность ε= Е. начальный шаг интегрирования h = H и начальное значение х=х0, у1 (x0)=у0, y20)=y2, …, yN(x0)=yN

2. С помощью 5 циклов с управляющей переменной j = 1, 2,...., N вычисляются коэффициенты:

;

3. Находятся (в последнем цикле) зна­чение

и погрешность

4. Проверяется выполнение условий

Если первое условие не выполняется, де­лится шаг h на 2 и повторяются вычисления с п. 2, восстановив начальные значения Yji. Если это условие выполняется и выполняется второе условие, значения xi+1=xi+h выводятся на печать. Если второе условие не выполняется, шаг h увеличивается вдвое и вычисления опять повторяются с п. 2.

Таким образом, Yj(i+1) выводится на печать только при одновременном выполнении условий этого пункта.

Как отмечалось, погрешность Rj(i+1) на каждом шаге метода Рунге — Кутта — Мер­сона оценивается приближенно. При решении нелинейных дифференциальных уравнений истинная погрешность может отличаться в несколько раз от заданной E.

Метод Рунге — Кутта — Фельберга с ав­томатическим изменением шага дает более точную оценку погрешности на каждом шаге и реализуется последовательным цикличе­ским вычислением по следующим формулам:

;

Погрешность

в этом методе — разность приращений Yj(i+1) , вычисленных по двум формулам: порядка n = 4 и порядка n+1. Последняя формула не приводится, но использована для вычисления Rj(i+1) Если Rj(i+1) > E, шаг n уменьшается вдвое, если Rj(i+1) < E /20, он увеличивается вдвое. Этот метод имеет четвер­тый порядок.

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

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

Методы прогноза и коррекции — разно­видности многошаговых методов, при кото­рых решение вначале проводится по формуле прогноза, а затем уточняется по формуле коррекции.

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

Задание на лабораторную работу

 

Индивидуальные варианты для выполнения лабораторной работы приведены на листе «Задания». Ввести свой номер варианта в окно «Вариант» на листе «Исходные данные»

В соответствии с вариантом задания подготовить аналитическое решение дифференциального уравнения для дальнейшей оценки погрешности численных методов. Решение дифференциального уравнения (4.2) для начальных условий имеет вид:

,

где ,

Вариант решения уравнения приведен на рис. 4.2.

 

Рис. 4.2 Аналитическое решение дифференциального

уравнения

 

Последовательно для различных численных методов составить алгоритмы численного решения дифференциального уравнения в соответствии с формулами. Используя средства таблиц Microsoft Excel или VBA Microsoft Excel, подготовить процедуры решения. Вычислить по разработанным процедурам значения u2(t). Построить таблицы решения и графики. Сравнить результаты с аналитическим решением.

 



Поделиться:


Последнее изменение этой страницы: 2017-02-05; просмотров: 941; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.118.120.204 (0.014 с.)