|
||||||||||
Численное решение обыкновенных дифференциальных уравнений.Численное решение обыкновенных дифференциальных уравнений. (вар.26) 1)Построить график и вывести в виде таблицы решение задачи Коши на интервале [0; 1] методом Рунге-Кутта 4-го порядка.
Для решения данной задачи воспользуемся функцией ode45. 1)Создаем m-файл
function dydx = fun(x,y); dydx = [cos(x.^2)+x*y]; end
2)Создаём новый скрипт
tspan=[0 1]; x0=0.1; [x,y] = ode45(@fun,tspan,x0); plot(x,y) grid on title('Численное решение обыкновенных дифференциальных уравнений'); legend('f=cosx^2+xy') Решение задачи Коши: Таблица (численное решение):
2) Изменим начальные условия и интервал интегрирования: Интервал от 0 до 7:
tspan=[0 7]; x0=0.1; [x,y] = ode45(@fun,tspan,x0) plot(x,y) grid on title('Численное решение обыкновенных дифференциальных уравнений 2'); legend('f=cosx^2+xy')
Интервал от 0 до 20:
tspan=[0 20]; x0=0.1; [x,y] = ode45(@fun,tspan,x0) plot(x,y) grid on title('Численное решение обыкновенных дифференциальных уравнений 3'); legend('f=cosx^2+xy')
3)Применение функций od23 и ode113:
ode23:
tspan=[0 1]; x0=0.1; [x,y] = ode23(@fun,tspan,x0) plot(x,y) grid on title('ode23'); legend('f=cosx^2+xy')
ode113: tspan=[0 1]; x0=0.1; [x,y] = ode113(@fun,tspan,x0) plot(x,y) grid on title('ode113'); legend('f=cosx^2+xy')
ode23 |
ode113 | |||||||||
X | Y | X | Y | |||||||
0 0.0080 0.0480 0.1480 0.2480 0.3480 0.4480 0.5480 0.6480 0.7480 0.8480 0.9480 1.0000 | 0.1000 0.1080 0.1482 0.2502 0.3562 0.4681 0.5879 0.7174 0.8581 1.0117 1.1794 1.3626 1.4645 | 0 0.0008 0.0024 0.0055 0.0119 0.0245 0.0498 0.1004 0.2004 0.3004 0.4004 0.5004 0.6004 0.7004 0.8004 0.9004 1.0000 | 0.1000 0.1008 0.1024 0.1055 0.1119 0.1245 0.1500 0.2012 0.3051 0.4140 0.5298 0.6544 0.7896 0.9369 1.0977 1.2734 1.4645 |
|
© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.
|
|