Курсовая работа: Программирование и основы алгоритмизации

Max | ( y ( xk +1 )- y ( xk ))/ h - f ( xk , y ( xk ))|<= Chm

где С - const, т порядок аппроксимации разностного уравнения.

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

1.2 Программная реализация метода Эйлера

Программа для решения дифференциальных уравнений состоит из трех частей:

Главная программа.

Процедуры, реализующие метод Эйлера.

Процедуры вычисления правых частей.

Процедура вычисления правых частей R имеет вид:

procedure R( var y0,F: mass);

begin

F[1]:=y0[2];

F[2]:=(ft-k2*y0[2]-k1*y0[1])/Mm

end;

где:

F – массив значений правых частей системы, приведенной к нормальной форме Коши;

y0 – массив значений начальных условий системы;

k1,k2 … kn – коэффициенты;

ft – f(t), т.е. сигнал (воздействие), подаваемый на вход системы;

Процедура, реализующая метод Эйлера:

procedureEu(vart0,t,h: real; varm:integer; vary0,y:mass);

var i: integer;

begin

R(y0,F);

for i:=1 to m do

y[i]:=y[i]+h*F[i];

t:=t+h;

end;

где:

t0,tk – начальное и конечное значение времени;

К-во Просмотров: 392
Бесплатно скачать Курсовая работа: Программирование и основы алгоритмизации