Методы решения обыкновенных дифференциальных уравнений и систем обыкновенных дифференциальных уравнений

Страницы работы

Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.

Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.

Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.

Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.

Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.

Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.

Содержание работы

Министерство образования науки

Национальный аэрокосмический университет

им. Н.Е. Жуковского

кафедра 304

Лабораторная работа №14

по предмету

«Численные методы»



         Выполнила студентка

Группы 325

Абкеримова Рушена

Проверила: преподаватель кафедры 304

 Яровая Ольга  Владимировна

Харьков 2014

Лабораторная работа №1

«Методы решения ОДЕ и СОДЕ»

Вариант №1

Цель работы: с помощью методов Эйлера, уточненного метода Эйлера, формул Милна, Рунге-Кутта, Аддамса научиться вычислять корни диференциального уравнения и систем обыкновенных диференциальных уравнений.

Mathcad:

Для ОДУ:

Ч и с л е н н о е  р е ш е н и е  о б ы к н о в е н н ы х  д и ф ф е р е н ц и а л ь н ы х  у р а в н е н и й .

И с х о д н ы е  д а н н ы е

Ш а г  :

;

1. Р е ш е н и е  О Д У  с  п о м о щ ь ю  с т а н д а р т н о г о  б л о к а 

2. П р о г р а м м н ы й  б л о к 

  М е т о д  Э й л е р а

  У т о ч н е н н ы й  м е т о д  Э й л е р а

  М е т о д  Р у н г е -К у т т а

С п л а й н о в а я  и н т е р п о л я ц и я  :

Для решения СОДУ:

И с х о д н ы е  д а н н ы е .

Н а ч а л ь н о е  у с л о в и е :

Matlab:

Функция записи оду:

function res = f(x,y)

res = ((x+y)^2)+0.5*(x+y);

return

function res = ODE(x0,y0,n,h);

vx = zeros(n,1);

for i = 1:n

    vx(i) = x0+(i-1)*h;

end;

vy = zeros(n,1);

vy(1) = y0;

for i = 1:2

    vy(i+1)=vy(i) + h*f(vx(i),vy(i));

end;

for i = 3:4

    vy(i+1) = vy(i) + h/2*(f(vx(i),vy(i))+f(vx(i+1),vy(i)+h*f(vx(i),vy(i))));

end;

K = zeros(4,1);

for i=5:6

    K(1) = h*f(vx(i),vy(i));

    K(2) = h*f(vx(i)+h/2,vy(i)+K(1)/2);

    K(3) = h*f(vx(i)+h/2,vy(i)+K(2)/2);

    K(4) = h*f(vx(i)+h,vy(i)+K(3));

    vy(i+1) = vy(i)+1/6*(K(1)+2*(K(2)+K(3))+K(4));

end;

xx = vx(1):0.01:vx(n);

pp = interp1(vx,vy,'cubic','pp');

yy = ppval(pp,xx);

plot(vx,vy,'ko'),hold on, plot(xx,yy,'-'),grid on,hold on;

res = vy;

return

>> y=ODE(0,0,7,0.1)

y =

         0

         0

    0.0060

    0.0264

    0.0615

    0.1175

    0.2032

>> [t,y]=ode45(@f,[0 0.5],0)

t =

         0

    0.0125

    0.0250

    0.0375

    0.0500

    0.0625

    0.0750

    0.0875

    0.1000

    0.1125

    0.1250

    0.1375

    0.1500

    0.1625

    0.1750

    0.1875

    0.2000

    0.2125

    0.2250

    0.2375

    0.2500

    0.2625

    0.2750

    0.2875

    0.3000

    0.3125

    0.3250

    0.3375

    0.3500

    0.3625

    0.3750

    0.3875

    0.4000

    0.4125

    0.4250

    0.4375

    0.4500

    0.4625

    0.4750

    0.4875

    0.5000

y =

         0

    0.0000

    0.0002

    0.0004

    0.0007

    0.0011

    0.0016

    0.0022

    0.0029

    0.0037

    0.0047

    0.0058

    0.0070

    0.0084

    0.0099

    0.0115

    0.0133

    0.0153

    0.0175

    0.0198

    0.0224

    0.0251

    0.0280

    0.0312

    0.0346

    0.0382

    0.0420

    0.0461

Похожие материалы

Информация о работе

Тип:
Отчеты по лабораторным работам
Размер файла:
92 Kb
Скачали:
0

Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.

Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.

Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.

Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.

Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.

Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.