Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
初级会员
注册日期: 2011-04-11
年龄: 36
帖子: 8
声望力: 0 ![]() |
![]()
快要到期限了,请各位各位高手百忙之中抽空浏览下,顺便指点,不胜感激!
t=10^-12:10^-12:40000*10^-12; dt=10^(-12);N=40000 l=1;xs=0.2; H=5.76*10^7; erel=2.5;e0=8.85*10^(-12);u0=4*pi*10^(-7); L=u0/(2*pi)*log(b/a);C=(2*pi*e0*erel)/(log(b/a));R=(1/(pi*H))*(1/a^2+1/(2*b*0.6*10^(-3))); RL1=100;RL2=10; x=xs; G=(1/(2*pi))*sqrt(u0/H)*(1/a+1/b); v=1/sqrt(L*C); a1=(G/2)*sqrt(C/L);a2=(R/2)*sqrt(C/L); for k=1:N dk=k.*dt; if dk<=x/v g1(k)=0; else g1(k)=exp(-a2*x)*(a1*x/(2*sqrt(pi*(dk-x/v).^3)))*exp(-(a1*x)^2/(4*(dk-x/v))); end end for k=1:N dk=k.*dt; if dk<=(l-x)/v g2(k)=0; else g2(k)=exp(-a2*(l-x))*(a1*(l-x)/(2*sqrt(pi*(dk-(l-x)/v).^3)))*exp(-(a1*(l-x))^2/(4*(dk-(l-x)/v))); end end g1和g2里的x和l-x用数字代替能算出结果,但是用循环结果就错误。另外,把第二个循环中的g2(k)=0换成 g1(k)=0,g1就能算出正确结果。这是怎么回事...? |
![]() |
![]() |