clear all
a=51; %定义角度倾角a
yus=9000; %假定一个yus
syms v
v=0;
while (v~=140*(10^9)/6.8)&(yus~=0) %比较V计算与V实际
y0=592.7;
syms y %上半部分体积v1
e1=(yus-y)*cot(a);
r1=2385;
b1=acos((r1-e1)/r1);
v1=int('2*(r1^2)*b1-r1*sin(b1)*(r1-e1)',y0,yus);
syms z %下半部分体积v2
r2=5085;
r3=sqrt(r2^2-(r2-z)^2);
e2=(yus-z)*cot(a)-(r1-r3);
b2=atan(r3/(e2-r2));
v2=int('pi*r2^2-(r2^2)*b2',0,y0);
v=v1+v2; %计算炉液体积v
yus=yus-1;
end
yus
写了个MATLAB程序陷入了死循环,哪里出了问题?
答案:1 悬赏:50 手机版
解决时间 2021-03-11 21:49
- 提问者网友:温旧梦泪无声
- 2021-03-11 10:49
最佳答案
- 五星知识达人网友:往事埋风中
- 2021-03-11 12:12
把 while (v~=140*(10^9)/6.8)&(yus~=0) %比较V计算与V实际
改为;
while abs(v-140*(10^9)/6.8)<10^-6 && abs(yus)<10^-6 %比较V计算与V实际
就好了。
改为;
while abs(v-140*(10^9)/6.8)<10^-6 && abs(yus)<10^-6 %比较V计算与V实际
就好了。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯