Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
 
 
主题工具 显示模式
旧 2008-07-20, 10:36   #1
sa7312
初级会员
 
注册日期: 2008-07-20
年龄: 51
帖子: 5
声望力: 0
sa7312 正向着好的方向发展
默认 [求助]用MATLAB来计算一些科学数据,但用FOR循环计算时发现速度太慢

  各位大侠,我是一个处于偏僻山区的教育者,现在急用MATLAB来计算一些科学数据,但用FOR循环计算时发现速度太慢,不知道还有什么办法解决。请大侠们多多帮且我啊。太恩不言谢,兄弟就此拜托了。
  以下是我这个刚学MATLAM的阿呆(:cry:) 的计算程序,请大侠们帮看看并提出增加速度的方案,小的在这有礼了!
  k=0.1:0.0000005:0.91;
j=1;
for m=0.1:0.0000005:0.91
e0=8.85*10^(-12); p0=4*pi*10^(-7);c0=3*10^8;a=3*10^(-10);
na=sqrt(9.0);nb=sqrt(1);nc=sqrt(4);nd=sqrt(1.0);ng=sqrt(16);nh=1.0;
da=0.5*a;db=0.5*a;dc=0.5*a;dd=0.5*a;dg=0.5*a;dh=0.5*a;
g0=sqrt(e0/p0)*1;
ga=g0*na;gb=g0*nb;gc=g0*nc;gd=g0*nd;gg=g0*ng;gh=g0*nh;
sa=-na*pi*m;sb=-nb*pi*m;sc=-nc*pi*m;sd=-nd*pi*m;sg=-ng*pi*m;sh=-nh*pi*m;
A=[cos(sa),-i*sin(sa)/ga;-i*ga*sin(sa),cos(sa)];B=[cos(sb),-i*sin(sb)/gb;-i*gb*sin(sb),cos(sb)];
C=[cos(sc),-i*sin(sc)/gc;-i*gc*sin(sc),cos(sc)];D=[cos(sd),-i*sin(sd)/gd;-i*gd*sin(sd),cos(sd)];
G=[cos(sg),-i*sin(sg)/gg;-i*gg*sin(sg),cos(sg)];H=[cos(sh),-i*sin(sh)/gh;-i*gh*sin(sh),cos(sh)];
M1=(G*H)^(5)*(A*B)^(5)*(C*D)^(5)*(B*A)^(5)*(H*G)^(5);
A1=M1(1,1);B1=M1(1,2);C1=M1(2,1);D1=M1(2,2);
r1=2*g0/(A1*g0+B1*g0^2+C1+D1*g0);
f1=r1*r1';
R1(1,j)=f1;
j=j+1;
end
plot(k,R1,'k');axis([0.1,0.9,0,1]),ylabel('Transmission');
sa7312 当前离线   回复时引用此帖
 

主题工具
显示模式

发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码


相似的主题
主题 主题作者 版面 回复 最后发表
请教:时变延时系统仿真 jiemark MATLAB论坛 0 2008-06-05 00:11
几行S函数代码,请达人帮修改一下 rongyihit MATLAB论坛 1 2008-06-03 22:08
[求助]关于IIR数字滤波器的GUI界面设计 yusiking52 MATLAB论坛 0 2008-05-06 07:24
[求助]!关于sphere()? qq123123850 MATLAB论坛 0 2008-04-19 23:55
【求助】请教用dsolve求解符号微分方程中的参数传递问题 frcarpin MATLAB论坛 0 2007-06-21 14:33


所有时间均为北京时间。现在的时间是 12:46


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.