Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
初级会员
注册日期: 2009-09-07
帖子: 1
声望力: 0 ![]() |
![]()
做一个可靠性的仿真,代码如下:
power=zeros(9,8); cos=zeros(9,8); pspace=[0 .1 .2 .3 .5 .6 .7 .8 .9 1]; power(1,1)=16; power(2,1)=3;power(2,2)=6; power(3,1)=2*2.5;power(3,2)=5*8.52;power(3,1)=5; power(4,1)=25;power(4,2)=4; power(5,1)=7*5.4;power(5,2)=20; power(6,1)=5; power(7,1)=3*41.5;power(7,2)=3.7;power(7,3)=2*35.6;power(7,4)=2*2.14;power(7,5)=5*3.24;power(7,6)=3*40;power(7,7)=8*6.32;power(7,8)=8; power(8,1)=2*16; power(9,1)=3*30;power(9,2)=42.5; cos(1,1)=0.85; cos(2,1)=0.95;cos(2,2)=0.95; cos(3,1)=0.82;cos(3,2)=0.84;cos(3,1)=1; cos(4,1)=0.85;cos(4,2)=0.8; cos(5,1)=0.88;cos(5,2)=0.9; cos(6,2)=0.99; cos(7,1)=0.84;cos(7,2)=0.82;cos(7,3)=0.86;cos(7,4)=0.85;cos(7,5)=0.86;cos(7,6)=0.88;cos(7,7)=0.83;cos(7,8)=0.9; cos(8,2)=0.88; cos(9,1)=0.87;cos(9,2)=0.8; rnd=unifrnd(0,1,[1 1000]); powersum=zeros(1,1000); m=1; for i=1:1000 for j=1:9 if pspace(j)<=rnd(i)<pspace(j+1) pspaceint=j+1; for n=2:10 if n==pspaceint powersum(1,m)=powersum(1,m)+power(n-1,1); zz=unifrnd(0,1,[1 7]); for z=1:7 if zz(z)<pspace(j+1) powersum(1,m)=powersum(1,m)+power(n-1,z+1); end end else if n>pspaceint for g=1:8 powersum(1,m)=powersum(1,m)+power(n-1,g); end end end end end end m=m+1; end 这是改完的,在m文件无法运行,提示??? Error: "power" was previously used as a variable,conflicting with its use here as the name of a function.,在命令运行窗口可以,这是为啥?程序里 m=m+1;前一定得多个end 不知道为什么?调出powersum的结果看了,程序有问题。 |
![]() |
![]() |
![]() |
#2 |
初级会员
注册日期: 2009-08-28
年龄: 45
帖子: 14
声望力: 16 ![]() |
![]()
else if n>pspaceint
这里你又引入了一个if,所以要跟着一个end |
![]() |
![]() |