yoyoyobo 发表于 2012-8-23 14:31

ode45中如何取出dy以外的變數?

大家好,我自己寫了個函數打算用ode45解出,函數如下:

function dy=LuGremodel(t,y)

y1=y(1);
y2=y(2);
y3=y(3);

K=2;
M=1;
Wn=(K/M)^(1/2);
U=0.1*t;

Fc=1;
Fs=1.5;
Vs=0.001;

sigma0=10^(5);
sigma1=100000^(1/2);
sigma2=0.4;

s1=sigma1*Vs/Fc;
s2=sigma2*Vs/Fc;
epsilong=K/sigma0;
alpha=K*Vs/(Wn*Fc);
gamma=(Fs-Fc)/Fc;

g=1+gamma*exp(-y2^2);

fL=y3+s1*(y2-y3*abs(y2)/g)+s2*y2;
u=(K*U)/(Fc);

dy=0*y;
dy(1) = alpha*y2;
dy(2) = (u-y1-fL)/alpha;
dy(3) = (1/epsilong)*(alpha*y2-alpha*y3*abs(y2)/g);
end

並使用=ode45('LuGremodel',, )去求解。

但我很需要此LuGremodel函數中的fL變數,請問如何將其引出到我的workspace?
卡了兩天,希望可以有高手幫我解惑,謝謝。

shenyongjun 发表于 2012-8-29 12:07

用计算得到的y2反算即可
页: [1]
查看完整版本: ode45中如何取出dy以外的變數?