Метод Эйлера

реклама
Приближенное решение
обыкновенных
дифференциальных уравнений:
Метод Эйлера
ЛЕКЦИЯ
Постановка задачи
Дифференциальные
уравнения
устанавливают
связь
между
независимыми переменными, искомыми
функциями и их производными. Если
искомая функция зависит от одной
переменной,
то
дифференциальное
уравнение называется обыкновенным.
Постановка задачи
Например, структура движения потока в
реакторе идеального перемешивания
описывается обыкновенным
дифференциальным уравнением:
dC 1
 (C0  C ).
dt 
Здесь искомая функция (концентрация
вещества) С(t) зависит от одной переменной t
(времени).
Постановка задачи
В том случае, если искомая функция зависит от
нескольких переменных, дифференциальное уравнение
будет уравнением в частных производных.
Например, структуру потока в реакторе идеального
вытеснения можно описать уравнением в частных
производных:
C
C
 U
t
l
В этом уравнении функция С(t,l) зависит от времени
(t) и длины аппарата (l).
Постановка задачи
Обыкновенными дифференциальными уравнениями
(ОДУ) называются уравнения, которые содержат одну или
несколько производных от искомой функции y = y(x):
F ( x, y, y,..., y ( n ) )  0 ,
где x – независимая переменная.
Наивысший порядок n, входящей в уравнение
производной, называется порядком дифференциального
уравнения.
Например:
F ( x, y, y ' )  0  уравнение первого порядка;
F ( x, y, y ' , y" )  0  уравнение второго порядка
Постановка задачи
Из общей записи дифференциального уравнения
можно выразить производную в явном виде:
y '  f ( x, y ),
y"  f ( x, y, y ' )
Уравнение для производных имеет бесконечное
множество решений. Для получения единственного
решения необходимо указать дополнительные
условия, которым должны удовлетворять искомые
решения.
Постановка задачи
В зависимости от вида таких условий
рассматривают три типа задач, для которых доказано
существование и единственность решений.
Первый тип – это задачи с начальными
условиями.
Для
таких
задач
кроме
исходного
дифференциального уравнения в некоторой точке
x0 должны быть заданы начальные условия, т.е.
значения функции y (x) и её производных: y (x0) = y0
y' (x0) = y'0 , . . . , y(n-1) (x0) = yn-10 .
Постановка задачи
Второй тип задач – это, так называемые,
граничные, или краевые, в которых
дополнительные условия задаются в виде
функциональных
соотношений
между
искомыми решениями.
Третий тип задач для обыкновенных
дифференциальных уравнений – это задачи
на собственные значения.
Постановка задачи
Сформулируем задачу Коши.
Дано обыкновенное дифференциальное уравнение
(ОДУ) первого порядка, разрешенное относительно
производной
y '  f ( x, y ),
удовлетворяющее начальному условию
y ( x0 )  y0
Постановка задачи
Необходимо найти на отрезке [x0,xn] такую
непрерывную функцию
y = y(x), которая
удовлетворяет дифференциальному уравнению
y '  f ( x, y ), и начальному условию y ( x )  y
0
0
т.е.
найти
решение
дифференциального
уравнения. Нахождение такого решения называют
решением задачи Коши. Численное решение этой
задачи состоит в построении таблицы приближенных
значений y1,y2,...,yn решения уравнения y(x) в точках
x1,x2,...,xn с некоторым шагом h.
xi  x0  i  h,
i=1,2,...,n.
Методы Рунге-Кутта
Методы Рунге-Кутта обладают следующими
отличительными свойствами:
• являются одноступенчатыми: чтобы найти
значение функции в точке yi+1 нужна информация
только о предыдущей точке (yi,xi);
• согласуются с рядом Тейлора вплоть до членов
порядка hk, где степень k определяет порядок
метода;
• не требуют вычисления производных от f(x,y),
а требуют вычисления самой функции.
Метод Эйлера
(метод Рунге-Кутта первого
порядка)
Простейшим из численных методов
решения
дифференциальных
уравнений является метод Эйлера. Это
один из самых старых и широко
известных
и применяемых на в
практике методов.
Метод Эйлера
Пусть требуется найти приближенное решение
дифференциального уравнения первого порядка
y '  f ( x, y )
с начальным условием
y(x0)=y0,
т.е. необходимо решить задачу Коши.
Метод Эйлера
В окрестности точки x0 функцию y(x) разложим в
ряд Тейлора
( x  x0 ) 2
y( x)  y( x0 )  ( x - x0 ) y' ( x0 ) 
2
y" ( x0 )  ...
который можно применить для приближенного
определения искомой функции y(x). В точке x0+h при
малых значениях h можно ограничиться двумя
членами ряда, тогда,
y( x)  y( x0  h)  y( x0 )  y' ( x0 )x  0(h 2 ),
(2)
где O(h2) – бесконечно малая величина порядка h2.
(1)
Метод Эйлера
Заменим производную y'(x0), входящую в формулу (1) ,
на правую часть уравнения (2)
y( x0  h) ≈ y0  hf ( x0 , y0 ),
Приближенное решение в точке x1=x0+h можно
вновь рассматривать как начальное условие и по
формуле найти значение искомой функции в
следующей точке x2=x1+h. В результате получен
простейший алгоритм решения задачи Коши, который
называется методом Эйлера.
Метод Эйлера
Метод Эйлера можно представить в виде
последовательного применения формул:
для точки
y1  y0  hy0 '  y0  hf ( x0 , y0 ),
x1 = x0 +h,
x2 = x1 + h,
y2  y1  hy1'  y1  hf ( x1 , y1 ),
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . .
x i+1= x i + h,
yi 1  yi  hyi '  yi  hf ( xi , yi ).
Метод Эйлера
Таким образом, формула Эйлера в общем случае
имеет вид:
yi 1  yi  hf ( xi , yi ),
x i+1 = x i + h
Метод Эйлера
Геометрически
искомая функция y(x)
заменяется ломаной
линией,
представляющей
собой
отрезки
касательных к этой
функции в узлах
x0, x1, ...xn.
y
y=y0+y0'(x–x0)
y1

y0
h
x0
x1
Метод Эйлера
Выведем формулы на основе геометрических
аналогий.
Предположим, что нам известна точка (x0,y0) на
искомой интегральной кривой.
Через точку (x0,y0) проведем касательную с
тангенсом угла наклона
tgα = y0 ' = f ( x0 , y0 ).
Уравнение касательной имеет вид:
y  y0  y0 ' ( x  x0 ).
(3)
Метод Эйлера
Тогда в точке x1=x0+h, с учетом (3) получим решение:
y  y0  y0 ' ( x0  hx0 );
y1  y0  hf ( x0 , y0 ).
Ошибка решения в точке x=x1 показана в виде
отрезка .
Метод Эйлера
Полученная формула является методом Рунге Кутта первого порядка, т.к. она согласуется с
разложением в ряд Тейлора вплоть до членов
порядка h1.
Метод Эйлера имеет довольно большую
погрешность вычисления: 0(h). Кроме того, он
очень часто оказывается неустойчивым – малая
ошибка (например, заложенная в исходных данных)
увеличивается с ростом x.
Скачать