0

我正在编写代码来对一阶 ODE 进行改进的欧拉方法。我的困难在于函数的声明。虽然语法似乎正确,但 matlab 不知道是否将其作为向量处理并使用 .^2 或在平方 x 和 y 时使用 ^2。我故意没有使用保存在磁盘上的函数;我希望所有代码都包含在 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'
4

0 回答 0