永发信息网

下面写的MATLAB程序怎么程序循环次数一直是0? 条件有问题吗?

答案:1  悬赏:60  手机版
解决时间 2021-02-19 05:09
下面写的MATLAB程序怎么程序循环次数一直是0? 条件有问题吗?
最佳答案
可这样改:
clear
c=1.195;a=0.79;g=0.78;
x=0;y=0;z=0;
w=1;
m=0;
%u=[];v=[];
%w=[];
o=0;p=0;q=0;o1=0;p1=0;q1=0;
for t=1:1000
%for b=1:100
%b=(z<=3 & w>0.000001)
while (z<=3&&w>0.000001)
i1=unifrnd(0,1);j=unifrnd(0,2*pi);i2=unifrnd(0,1);
l=-log(i1(1))/c;%自由步长
k=acos(1/(2*g)*(1+g^2-((1-g^2)/(1-g+2*g*i2(1)))^2));
x=x+l*sin(k)*cos(j(1));
y=y+l*sin(k)*sin(j(1));
z=z+l*cos(k);
w=w*(1-a/c);
m=m+1;
end
if (z>= 3 && w>0.000001)
if x^2+y^2<=0.01
o=o+1;
elseif (x-0.2)^2+y^2<=0.01
p=p+1;
elseif x^2+(y-0.2)^2<=0.01
q=q+1;
elseif (x+0.2)^2+y^2<=0.01
o1=o1+1;
elseif x^2+(y+0.2)^2<=0.01
p1=p1+1;
else
q1=q1+1;
end
end
end
u=[0,0.2 0 -0.2 0];v=[0 0 0.2 0 -0.2];w=[o p q o1 p1];
scatter3(u,v,w,5,'filled');
%axis([-30 30 -30 30 -0.01 0.1]);
xlabel('x');
ylabel('y');
zlabel('z');
title('光子分布图')
%view([x,y,z])
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
自己的QQ为什么总是说发不良信息,又登不进去
肥城盛馨园小区的幼儿园报名学费交多少
有没有像小李飞刀.风云.三少爷的剑.天下第一.
金鼎·领秀这个地址在什么地方,我要处理点事
求NBA2K10刚进游戏时,从球队图标到科比主界
食侠客黄焖鸡米饭淮北总店地址在哪,我要去那
小李有40名同学,她到超市花了175元买果冻和巧
我梦见一个,终字,一个开字
大家的电信4G号,有漏接电话的情况吗
英语作文六年级 从博物管到学校怎么走
为什么有些人会说深爱总是埋在心里?
孟加拉虎的繁殖季节是什么时候?到底是什么时
怡景苑北门自行车租赁点地址在哪,我要去那里
标志为一个圆圈里面有一个六角星的表的牌子是
表语是什么?
推荐资讯
cdr外国人名字中间的点怎么打
为什么抽风机的排气管变小了排不出风
我以前拿了一个分期付款的苹果手机,有很多次
TEL语句命令
下表是一些食物的pH,胃酸过多的病人空腹时最
I study my science test Thursday afternoon
血糖有点高,吃什么水果好,
成大方圆连锁药店铁西分店这个地址在什么地方
一个女人恋爱了被打了一次就走了那是真爱吗?
盛达物流(临江大街)地址有知道的么?有点事想
谁看过肖申克的救赎,给我那部电影的资料,包
http://www.miaopai.com/show/~Bvdp1DayKcGBj
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?