回 帖 发 新 帖 刷新版面

主题:新手写的程序怎么改都不对,请高手指导一下

s0=pi*(12.85/2)^2;s1=s0;s2=pi*(54.2/2)^2;s3=316;s4=s2;s5=pi*(11.1/2)^2;
u1=10;u2=s1*u1/s2;u3=s2*u2/s3;u4=s3*u3/s4;u5=s4*u4/s5;
l1=32;l3=20.5;l6=13.5;l7=187;l8=l7;c=340;
M1=u1/c;m1=s1/s0;M2=u1/c;m2=s2/s0;a2=s2/s1;M3=u2/c;m3=s2/s0;M4=u3/c;
m4=s3/s0;a4=s3/s2;M5=u3/c;m5=s3/s0;a5=s4/s3;M6=u4/c;m6=s4/s0;
M7=u5/c;m7=s5/s0;a7=m7/m6;m77=m6-m7;M8=u5/c;m8=s5/s0;
for f=50:5:5000
k=2*pi*f/c;
T1=[cos((k*l1)/(1-M1^2)) j*sin((k*l1)/(1-M1^2))/m1;j*m1*sin((k*l1)/(1-M1^2)) cos((k*l1)/(1-M1^2))]
T2=[1 -2*M2*(1-1/a2)/(m2*a2);0 1]
T3=[cos((k*l3)/(1-M3^2)) j*sin((k*l3)/(1-M3^2))/m3;j*m3*sin((k*l3)/(1-M3^2)) cos((k*l3)/(1-M3^2))]
T4=[1 (1-a4^2)*M4/m4;0 1]
T5=[1 -2*M5*(1-1/a5)/(m5*a5);0 1]
T6=[cos((k*l6)/(1-M6^2)) j*sin((k*l6)/(1-M6^2))/m6;j*m6*sin((k*l6)/(1-M6^2)) cos((k*l6)/(1-M6^2))]
T7=[1-j*m77*(a7^2)*M7*tan(k*l7)/m7 (1-a7^2)*M7/m7;j*m77*tan(k*l7) 1+j*m77*M7*tan(k*l7)/m7]
T8=[cos((k*l8)/(1-M8^2)) j*sin((k*l8)/(1-M8^2))/m8;j*m8*sin((k*l8)/(1-M8^2)) cos((k*l8)/(1-M8^2))]
T=T1*T2*T3*T4*T5*T6*T7*T8;
end
这个程式在求T时便出现问题,我的目的是在f变化一次时,T值也相应变化输出,请问如何更改才合适呢?

回复列表 (共4个回复)

沙发

我在我机上运行行啊,我用的是matlab7.01,不知是不是版本的问题

板凳

我机器上也没问题的,我的是Matlab2007b,运行结果如下:
T1 =

  -0.8122                  0 - 0.5834i
        0 - 0.5834i  -0.8122          


T2 =

    1.0000   -0.0002
         0    1.0000


T3 =

   0.2244                  0 + 0.0548i
        0 +17.3368i   0.2244          


T4 =

    1.0000    0.0049
         0    1.0000


T5 =

    1.0000   -0.0012
         0    1.0000


T6 =

  -0.2319                  0 + 0.0547i
        0 +17.3056i  -0.2319          


T7 =

  1.0e+013 *

   0.0000 - 0.0001i   0.0000          
        0 + 1.3334i   0.0000 + 0.0704i


T8 =

  -0.9011                  0 - 0.5812i
        0 - 0.3236i  -0.9011          
由于你程序中的循环没有加分号,所以有好多显示结果,上面的只是第一组

3 楼

我后来运行也对了,不知道开始的时候出了哪方面的问题.
太糊涂了,呵呵...
不过非常感谢两个高手的帮忙!
上面是程式的一部分,我把完整的发上来,想请高手再帮忙看看,不甚感激!

4 楼


[em11]
谢谢高手了.以下是我完整的程式,运行结果是正确的.但是我想要的结果是以f为横坐标,L为纵坐标的图形显示,请指导一下下步改怎么做?
s0=pi*(12.85/2)^2;
s1=s0;
s2=pi*(54.2/2)^2;
s3=316;
s4=s2;
s5=pi*(11.1/2)^2;
u1=10;
u2=s1*u1/s2;
u3=s2*u2/s3;
u4=s3*u3/s4;
u5=s4*u4/s5;
l1=32;
l3=20.5;
l6=13.5;
l7=187;l8=l7;
c=340;
M1=u1/c;
m1=s1/s0;
M2=u1/c;
m2=s2/s0;

a2=s2/s1;
M3=u2/c;
m3=s2/s0;M4=u3/c;
m4=s3/s0;a4=s3/s2;
M5=u3/c;
m5=s3/s0;
a5=s4/s3;
M6=u4/c;

m6=s4/s0;
M7=u5/c;
m7=s5/s0;

a7=m7/m6;
m77=m6-m7;
M8=u5/c;
m8=s5/s0;
for f=50:5:60
k=2*pi*f/c;
T1=[cos((k*l1)/(1-M1^2)) j*sin((k*l1)/(1-M1^2))/m1;j*m1*sin((k*l1)/(1-M1^2)) cos((k*l1)/(1-M1^2))]
T2=[1 -2*M2*(1-1/a2)/(m2*a2);0 1]
T3=[cos((k*l3)/(1-M3^2)) j*sin((k*l3)/(1-M3^2))/m3;j*m3*sin((k*l3)/(1-M3^2)) cos((k*l3)/(1-M3^2))]
T4=[1 (1-a4^2)*M4/m4;0 1]
T5=[1 -2*M5*(1-1/a5)/(m5*a5);0 1]
T6=[cos((k*l6)/(1-M6^2)) j*sin((k*l6)/(1-M6^2))/m6;j*m6*sin((k*l6)/(1-M6^2)) cos((k*l6)/(1-M6^2))]
T7=[1-j*m77*(a7^2)*M7*tan(k*l7)/m7 (1-a7^2)*M7/m7;j*m77*tan(k*l7) 1+j*m77*M7*tan(k*l7)/m7]
T8=[cos((k*l8)/(1-M8^2)) j*sin((k*l8)/(1-M8^2))/m8;j*m8*sin((k*l8)/(1-M8^2)) cos((k*l8)/(1-M8^2))]
T=T1*T2*T3*T4*T5*T6*T7*T8
A=T(1,1)
B=T(1,2)
C=T(2,1)
D=T(2,2)
m=s5/s0;
L=10*log10((abs(A+m*B+C+m*D)).^2/(4*m^2))
end

我来回复

您尚未登录,请登录后再回复。点此登录或注册