|
楼主 |
发表于 2010-1-27 15:19
|
显示全部楼层
刚才学习了下,代码改成如下
function zuihou(M0,GB)
t=2*10^(-9);
q=1.6*10^(-19);
Idm=10^(-12);
deltaT=10^(-5);
td=2*10^(-7);
c=0.01;
Mg=10^8;
n=0.3;
N0=0.3;
Ntr=c*Mg/(1-c);
Ttr=M0/(2*pi*GB);
Ndm1=Idm*t/q;
Ndm2=Idm*M0*Ttr/q;
Pph=1-exp(-N0);
a=Ntr*(exp(t/td)-1)/(exp(deltaT/td)-1);
b=Ntr*(exp(Ttr/td)-1)/(exp(deltaT/td)-1);
[email=odefun=@(x,Pd)log(1-Pd)/(Ndm1+Ndm2+Pd*(a+b))-log(1-x*Pph-Pd)/(Ndm1+Ndm2+(x*Pph+Pd)*(a+b)+n*N0]odefun=@(x,Pd)log(1-Pd)/(Ndm1+Ndm2+Pd*(a+b))-log(1-x*Pph-Pd)/(Ndm1+Ndm2+(x*Pph+Pd)*(a+b)+n*N0[/email]);
x0=0;
x1=0.5;
Pd0=2.0097e-018;
[x,Pd]=ode45(odefun,[x0,x1],2.0097e-018);
semilogy(x,Pd)
但是Pd的范围过大了,我只想显示Pd在10^(-7)~10^(-2)内的图形,应该如何修改呢
(在运行的时候M0值为10,GB为3*10^10)
[ 本帖最后由 zdd13717421 于 2010-1-27 15:23 编辑 ] |
|