作业帮 > 综合 > 作业

Matlab编程解一阶非线性常微分方程组,谁知道程序怎么修改?

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/05/06 13:05:34
Matlab编程解一阶非线性常微分方程组,谁知道程序怎么修改?

function Yd = power_tra(t,YY)
global y0 Tj Pt E U X1 YY
Yd=[(YY(2)-1)*y0;(Pt-(E*U/X1)*sin(YY(1)))/Tj;];
global w0 Tj Pt E U X1
w0=2*pi*50;Tj=11.28;Pt=1;E=1.47;U=1;
X1=2.82;
tspan=[0.0 0.3];
y1=[31.54*pi/180;1]
[t,YY]=ode45('power_tra',tspan,y1);
x=YY(:,1);
y=YY(:,2);
plot(t,x*180/pi);
xlabel('t/s');
ylabel('delta/deg');
grid on
clc
Yd=inline('[(YY(2)-1)*2*pi*50;(1-(1.47*1/2.82)*sin(YY(1)))/11.28]','t','YY');
[t,YY]=ode45(Yd,0.3,[31.54*pi/180;1])
x=YY(:,1);
y=YY(:,2);
plot(t,x*180/pi);
xlabel('t/s'),ylabel('delta/deg')