二阶常微分方程MATLAB代码
时间: 2023-07-10 14:31:53 浏览: 100
常微分方程的解法MATLAB代码
下面是一个简单的二阶常微分方程的MATLAB代码示例:
```matlab
% 定义常数或者变量
m = 1; % 质量
k = 1; % 弹性系数
f = 0; % 外力
tspan = [0, 10]; % 时间范围
y0 = [0, 1]; % 初始条件
% 定义二阶常微分方程
f = @(t, y) [y(2); -k/m*y(1)+f/m];
% 解方程
[t, sol] = ode45(f, tspan, y0);
% 绘图
plot(t, sol(:, 1), '-o');
xlabel('时间');
ylabel('位移');
title('二阶常微分方程的解');
```
上面的代码中,我们首先定义了一些常数和变量,然后定义了一个二阶常微分方程。接着,我们使用ode45函数求解这个方程,并将结果绘制成图形。在这个示例中,我们解的是一个简单的谐振器,其运动方程为 $m\ddot{x} + kx = f$。
阅读全文