Реферат: Численные методы решения обыкновенных дифференциальных уравнений
Название: Численные методы решения обыкновенных дифференциальных уравнений Раздел: Рефераты по математике Тип: реферат | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Лабораторная работа 1 Численные методы решения обыкновенных дифференциальных уравнений (4 часа) При решении многих физических и геометрических задач приходится искать неизвестную функцию по данному соотношению между неизвестной функцией, ее производными и независимыми переменными. Такое соотношение называется дифференциальным уравнением , а отыскание функции, удовлетворяющей дифференциальному уравнению, называется решением дифференциального уравнения. Обыкновенным дифференциальным уравнением называется равенство
в котором Число Задача заключается в нахождении функции y, удовлетворяющей равенству (1). Более того, не оговаривая это отдельно, будем предполагать, что искомое решение обладает той или иной степенью гладкости, необходимой для построения и «законного» применения того или иного метода. Различают два типа обыкновенных дифференциальных уравнений - уравнения без начальных условий - уравнения с начальными условиями. Уравнения без начальных условий - это уравнение вида (1). Уравнение с начальными условиями
- это уравнение вида (1), в котором требуется найти такую функцию
т.е. в точке Задачи Коши При изучении способов решения дифференциальных уравнений приближенными методами основной задачей считается задача Коши. Рассмотрим наиболее популярный метод решения задачи Коши – метод Рунге-Кутта. Этот метод позволяет строить формулы расчета приближенного решения практически любого порядка точности. Выведем формулы метода Рунге-Кутта второго порядка точности. Для этого решение представим куском ряда Тейлора, отбрасывая члены с порядком выше второго. Тогда приближенное значение искомой функции в точке x 1 можно записать в виде:
Вторую производную y "( x 0 ) можно выразить через производную функции f ( x , y ) , однако в методе Рунге-Кутта вместо производной используют разность соответственно подбирая значения параметров Тогда (2) можно переписать в виде: y 1 = y 0 + h [ β f ( x 0 , y 0 ) + α f ( x 0 + γh , y 0 + δh )], (3) где α , β , γ и δ – некоторые параметры. Рассматривая правую часть (3) как функцию аргумента h , разложим ее по степеням h : y 1 = y 0 +( α + β ) h f ( x 0 , y 0 ) + αh 2 [ γ fx ( x 0 , y 0 ) + δ fy ( x 0 , y 0 )], и выберем параметры α , β , γ и δ так, чтобы это разложение было близко к (2). Отсюда следует, что α + β =1, αγ =0,5, α δ =0,5 f ( x 0 , y 0 ). С помощью этих уравнений выразим β , γ и δ через параметры α , получим y
1
=
y
0
+
h
[(1 -
α
)
f
(
x
0
,
y
0
) +
α
f
(
x
0
+ 0 < α ≤ 1. Теперь, если вместо (x 0 , y 0 ) в (4) подставить (x 1 , y 1 ), получим формулу для вычисления y 2 – приближенного значения искомой функции в точке x 2 . В общем случае метод Рунге-Кутта применяется на произвольном разбиении отрезка [ x 0 , X ] на n частей, т.е. с переменным шагом x0 , x1 , …,xn ; hi = xi+1 – xi , xn = X. (5) Параметры α выбирают равными 1 или 0,5. Запишем окончательно расчетные формулы метода Рунге-Кутта второго порядка с переменным шагом для α =1: yi+1
=yi
+hi
f(xi
+
i = 0, 1,…, n -1. и α =0,5: yi+1
=yi
+ i = 0, 1,…, n -1. Наиболее употребляемые формулы метода Рунге-Кутта – формулы четвертого порядка точности: yi+1
=yi
+
k1
=f(xi
, yi
), k2
= f(xi
+
k3
= f(xi
+
Для метода Рунге-Кутта применимо правило Рунге для оценки погрешности. Пусть y ( x ; h ) – приближенное значение решения в точке x , полученное по формулам (6.1), (6.2) или (7) с шагом h , а p – порядок точности соответствующей формулы. Тогда погрешность R ( h ) значения y ( x ; h ) можно оценить, используя приближенное значение y ( x ; 2 h ) решения в точке x , полученное с шагом 2 h :
где p =2 для формул (6.1) и (6.2) и p =4 для (7). Уточненное решение пишем в виде
В алгоритмах с автоматическим выбором шага предварительно задают погрешность в виде положительного параметра ε, и на каждом этапе вычисления следующего значения yi +1 подбирают такой шаг h , при котором выполняется неравенство
Метод Рунге-Кутта применим и к задаче Коши для системы m дифференциальных уравнений первого порядка с m неизвестными функциями
y1 (x0 )=y1,0 , y2 (x0 )=y2,0 ,…, ym (x0 )=ym,0 . (12)
Приведем для задачи (11), (12) расчетные формулы метода Рунге-Кутта четвертого порядка. Пусть требуется найти систему m функций y 1 ( x ), y 2 ( x ),…, ym ( x ), удовлетворяющих в интервале ( x 0 , X ) дифференциальным уравнениям (11), а в точке x 0 – начальным условиям (12). Предположим, что отрезок [ x 0 , X ] разбит на N частей: xi
=
x
0
+
i
hi
, Тогда каждую l -ю функцию yl ( x ) можно приближенно вычислять в точках xi +1 по формулам Рунге-Кутта Kl,1 =fl (xi , y1,i , y2,i ,…,ym,i ), i=1, 2, …, m, Kl,2
=fl
(xi
+ Kl,3
=fl
(xi
+ Kl,4 =fl (xi + h, y1,i + hK1,3 , y2,i + hK2,3 ,…,ym,i + hKm,3 ), i=1, 2, …, m, Yl,i+1
= yl,i
+ Здесь через yl , i обозначается приближенное значение функции yl ( x ) в точке xi . Обратите внимание на порядок вычислений по формулам (13). На каждом шаге сначала вычисляются коэффициенты Kl , i в следующем порядке: K1,1 , K2 ,1 ,…, Km,1 , K1,2 , K2 ,2 ,…, Km,2 , K 1,3 , K 2 ,3 ,…, Km ,3 , K 1,4 , K 2 ,4 ,…, Km ,4 , и лишь затем приближенные значения функций y 1, i +1 , y 2, i +1 ,…, ym , i +1 . Задачи Коши для дифференциальных уравнений n -го порядка y(n)
=f(x, y, y', …, y(n-1)
), x y(x0 )=y0 , y'(x0 )=y1,0 , …, y(n-1) (x0 )=yn-1,0 (15) сводятся к задаче Коши для системы дифференциальных уравнений первого порядка с помощью замены переменных z 0 = y , z 1 = y ',… , zn-1 = y(n-1) . (16) Учитывая (16), из уравнения (14) получим систему дифференциальных уравнений
Начальные условия (15) для функций zl переписываются в виде z0 (x0 )= y0 , z1 (x0 )= y1,0 ,…, zn-1 (x0 )= y п -1,0 . (18) Запишем для полученной системы метод Рунге-Кутта: zl,i+1
= zl,i
+
i =0, 1, …, N , l =0, 1, …, n -1. Для вычисления коэффициентов Kl ,1 , Kl ,2 , Kl ,3 и Kl ,4 имеем следующие формулы: K 0,1 = z 1, i , K1 ,1 = z2 , i, ………… Kn-1,1 = f(xi , z0,i , z1,i ,…, zn-1,i ,), K
0,2
=
z
1,
i
+
K1
,2
=
z2
,
i
+
………………… Kn-1,2
= f(xi
+ K0,3
= z
1,
i
+
K1,3
= z2,i
+ …………………… Kn-1,3
= f(xi
+ K0,4 = z1,i + hK1,3 , K1,4 = z2,i + hK2,3 , …………………… Kn-1,4 = f(xi + h, z0,i + hK0,2 , z1,i + hK1,2 ,…, zn-1,i + hKn-1,2 ).
Задания лабораторной работы 1 1. Написать файл-функции для решения поставленных далее задач. 2. Сохранить их в отдельных m-файлах (среда Матлаб) 3. Выполнить и оформить в виде отчета поставленные далее задачи. Задача № 1 . Решить задачу Коши на отрезке [x0 ,X] методом Рунге-Кутта четвертого порядка, применяя деление отрезка на N частей. Оценить погрешность. Варианты заданий в табл.1. Табл.1.
Задача № 2 . Решить задачу Коши для дифференциального уравнения сведением к задачи Коши для системы уравнений первого порядка. Табл.2.
Задача № 3 . Найти методом Рунге-Кутта с точностью ε = 10-8 решение задачи Коши y '( x )=2 x (1+ y 2 ), y (0)=0 в точке x =1 . (Точным решением является функция y ( x )= tg ( x 2 ) ) Задача № 4 . Решить методом Эйлера на отрезке [1, 2] задачу Коши y
'(
x
)=
(Точным решением данной задачи является функция y
(
x
)=
tg
(
ln
Контрольные вопросы: 1. Какое уравнение называется обыкновенным дифференциальным уравнением? 2. Какие методы решения задач для дифференциальных уравнений вы знаете? 3. В каком случае решение дифференциального уравнения единственно? 4. Рассказать правило Рунге для оценки погрешности. |