matlab怎么对微分方程求解知道是用ode45,方程是my ̈+cy ̇+ky=f

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/05 02:27:30

matlab怎么对微分方程求解知道是用ode45,方程是my ̈+cy ̇+ky=f
matlab怎么对微分方程求解
知道是用ode45,方程是my ̈+cy ̇+ky=f

matlab怎么对微分方程求解知道是用ode45,方程是my ̈+cy ̇+ky=f
这个不用,
如果f是数,直接
dsolve('m*D2y+c*Dy+k*y=f') 就可以了
如果f是f(t)
需要编写程序用ode45
首先编写m-file
%%%%%%%%%%%%%function dotx=myfun(t,y)
dotx=[y(2);1/m*(-c*y(2)-k*y(1)+f(t))];%f(t)要写出具体形式
%%%%%%%%%%%%%%%M-file 以上要单存一个文件在工作路径下%%%%%%%%%%%%%
在command 窗口
[t,y]=ode45('myfun',[t_0,t_final],[y_0,y'_0])%[t_0,t_final]和[y_0,y'_0]分别问求解区间和初值
再用plot画图