这是我的程序,老是出现NAN,求大神帮忙告诉我应该怎么修改使得不出现NAN,
be(1)=20;ne(1)=20;bf(1)=10;nf(1)=10;
N=20;Qf=0.5063;r(1:20)=0.5;
for j=1:20;
o(1)=0;
for t=1:300;
for i=1:20;
p(1)=0;
p(i+1)=p(i)+2;
sbe(t)=power(Qf,p(i))*power((exp(log(ne(t))+o(j)*(-3))),r*p(i))/(power(20,power(Qf,p(i))*power((exp(log(ne(t))+o(j)*(0.0000003))),r*p(i)))+19*power(20,power(Qf,p(i))*power((exp(log(nf(t))+o(j)*(10))),r*p(i))));
sbf(t)=power(Qf,p(i))*power((exp(log(nf(t))+o(j)*(0.5))),r*p(i))/(power(20,power(Qf,p(i))*power((exp(log(ne(t))+o(j)*(0.0000003))),r*p(i)))+19*power(20,power(Qf,p(i))*power((exp(log(ne(t))+o(j)*(10))),r*p(i))));
end
dbe(t)=5*power((1+0.5),t-1)*sbe(t)-0.01*be(t)
dbf(t)=5*power((1+0.5),t-1)*sbf(t)-0.01*bf(t)
dne(t)=0.1001*be(t)/1/(1-power(0.1,t))-0.01*ne(t);
dnf(t)=0.1001*bf(t)/1.2/(1-power(0.1,t))-0.01*nf(t);
be(t+1)=dbe(t)+ be(t);
bf(t+1)=dbf(t)+ bf(t);
ne(t+1)=dne(t)+ne(t);
nf(t+1)=dnf(t)+nf(t);
end
o(j+1)=o(j)+0.05;
be300(j)=be(301);
bf300(j)=bf(301);
ne300(j)=ne(301);
nf300(j)=nf(301);
x(j)=be300(j)/(be300(j)+19*bf300(j));
y(j)=bf300(j)/(be300(j)+19*bf300(j));
A(j)=ne300(j)/(ne300(j)+19*nf300(j));
B(j)=nf300(j)/(ne300(j)+19*nf300(j));
HHI(j)=x(j)*x(j)+19*y(j)*y(j);
HHi(j)=A(j)*A(j)+19*B(j)*B(j);
end
o(21)=[]
plot(o,HHI,'-h',o,HHi, '-*')