matlab,simulink实现一阶微分方程组的方法
一,利用matlab文本
1.用ode23或者ode45
2.输出要写成列向量的项式;
3. 输入既要有x,也要有y,输入可以是向量;
案例:
xs=0:0.001:10;
n=length(xs);
y(1)=1;
y(2)=1;
[x,y]=ode45(@p2fcn,xs,[1,1]’);
figure(1)
plot(x,y(:,1));
figure(2)
plot(x,y(:,2));
函数:
function dy=p2fcn(x,y)
dy=zeros(2,1); %输出必须定义成列向量;
dy(1)=-3y(1)-2y(2);
dy(2)=4y(1)+2y(2);
end
二,simulink求解微分方程组
1.利用积分器1/s,以及相应的计算模块;
2,初值设定在1/s的initial里面;
与上面相同的案例: