最近一直在研究分岔的问题,程序也编了很多,感觉还是问题多多,出现的结果和理想的还是有很大的差距,不知道能否有高人给予指点,谢谢了
下面是我的程序
vi = 10;
L = 0.001;
C = 12e-6;
T = 100e-6;
R = 20;
k = 1/(2*R*C);
w = sqrt(1/(L*C)-k^2);
for iref = 0.5:0.01:5.5
vn = 5;
in = 0.25;
for n = 1:500
tn = abs(L*(iref-in)/vn)
tnn = T-tn;
if tn<T
vn = vi-exp(-k*tnn)*((k*vn*exp(-2*k*tn)-k*vi-(iref-vi/R)/C)*sin(w*tnn)/w+(vi-vn*exp(-2*k*tn))*cos(w*tnn));
in = exp(-k*tnn)*((k*L*(iref-vi/R)+vi-vn*exp(-2*k*tn))/(w*L)*sin(w*tnn)+(iref-vi/R)*cos(w*tnn))+vi/R;
else
in = in +vi*T/L;
vn = vn*exp(-T/R*C);
end
if (in>0&&in<6)
plot(iref,in,'k.','markersize',2)
hold on
end