matlab代码实现Euler公式求解常微分方程初值问题
时间: 2023-06-09 18:02:26 浏览: 97
利用matlab求解常微分方程
好的,我明白了,下面是使用MATLAB实现Euler公式求解常微分方程初值问题的示例代码:
```matlab
% 定义常微分方程 dy/dx = x + y
function dydx = f(x, y)
dydx = x + y;
end
% 求解常微分方程初值问题 y(0) = 1,x 范围为 [0,1]
h = 0.1; % 步长
x = 0:h:1; % x 轴的取值范围
y = zeros(size(x)); % 初始化 y
y(1) = 1; % 初值 y(0) = 1
for i = 1:length(x)-1
y(i+1) = y(i) + h*f(x(i), y(i));
end
% 绘制图像
plot(x, y, 'o-', 'LineWidth', 2);
xlabel('x');
ylabel('y');
```
这段代码通过定义函数 `f` 来描述常微分方程,然后使用 Euler 公式求解该方程的初值问题。最后绘制出了方程的解在 x 范围为 [0,1] 的图像。
阅读全文