Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Метод решения Эйлера
В основе метода Эйлера лежит идея графического построения решения дифференциального уравнения. Однако этот метод дает одновременно и способ нахождения искомой функции в табличной форме. Пусть дано дифференциальное уравнение (6.1). Найти приближенное численное решение этого дифференциального уравнения, т.е. составить таблицу приближенных значений функции у=у(х) удовлетворяющей заданным начальным условиям.
Где, xi=x0+i× h, – шаг таблицы. Приближенно можно считать, что правая часть в (6.1) остается постоянной на каждом из отрезков между точками деления. Метод Эйлера состоит в непосредственной замене производной разностными отношениями по приближенной формуле: y-y0=f(x0, y0)× (x-x0) y=y0+f(x0, y0)× (x-x0) если x=x1, то y1=y0+f(x0, y0)× (x1-x0) y1=y0+h× f(x0, y0) Dy0=h× f(x0, y0) если x=x2, то y2=y1+f(x1, y1)× (x2-x1) y2=y1+h× f(x1, y1) Dy1=h× f(x1, y1) … если x=xi+1, то yi+1=yi+h× f(xi, yi) Dyi=h× f(xi, yi)
Таким образом, получение таблицы значений искомой функции у(х) по методу Эйлера заключается в циклическом применении пары формул:
Dyk=h× f(xk, yk) yk+1=yk+Dyk где k=0, 1, 2, …, n
Рисунок - 1 Рисунок - 2
Решить методом Эйлера дифференциальное уравнение f(x, y)=2 – x - y начальным условием y(0)=2, 3 на отрезке [2, 3] приняв шаг h=0, 1
Листинг программы метода Эйлера:
Программа 6.1 var x, y, a, b, h: real; function f(x, y: real): real; begin f: = 2 – x - y; end; begin writeln('введите y, a, b, h'); readln(y, a, b, h); x: =a; repeat writeln(x: 0: 3, ' ', y: 0: 3); y: =y+h*f(x, y); x: =x+h; until x> b+0.1; readln; end.
Блок схема программы:
Демонстрация рабочей программы:
Таблица - 1
График программы:
|