Я пишу код для улучшенного метода Эйлера в ODE 1-го порядка.Моя сложность заключается в объявлении функции.Хотя синтаксис кажется правильным, Matlab не знает, обрабатывать ли это как вектор и использовать. ^ 2 или использовать ^ 2 при возведении в квадрат x и y.Я специально не использовал функцию, сохраненную на диске;Я хочу, чтобы весь код содержался в файле m.
Я также хотел бы вывести 2 столбца X и Y рядом друг с другом в конце с заголовками столбцов.
Есть предложения?Часть этого кода была скопирована с Edwards и Penny Elementary Diffeq.Благодарю.ММ
Код Matlab:
clc; clear; clear axes; clf; close all;
%Inputs
x(1)=0; y(1)=1;
f=@(x,y)( y+sqrt(x^2+y^2) );
a=1; b=3; n=3;
h=(b-a)/n;
%
X=x;
Y=y;
for i=1:n;
k1=f(x,y);
k2=f(x+h,y+h*k1);
k=(k1+k2)/2;
x=x+h;
y=y+h*k;
X=[X;x];
Y=[Y;y];
end
% output X and Y
table=[X,Y]
table'