概述
满意答案
fpv461392
2015.03.27
采纳率:40% 等级:7
已帮助:111人
你的程序问题很多,主要出在没有正确理解和使用符号工具箱上,下面程序已调通,请参考:
clear;
clc;
R=10;
h=40;
L=40;
aa=2;
a=aa*pi/180;
light=zeros(1,100000);
n=0;
for x = 0:0.001:(L/2)
syms y x0 x1;
n=n+1;
if x<=(R*cos(a))
y=solve(x^2+y^2 == R^2);
y1=max(double(y));
c=atan((y1)/x);
x0=double(solve(((x0)-x)/(h+(y1)) == tan(2*c-a)));
x1=double(solve(((x1)-x)/(h+(y1)) == tan(2*c+a)));
if x0>20
light(n)=0;
else
if x1>(R/2)
x1=20;
for xin=x0:0.001:x1
b = atan((abs(xin-x))/(h+y1));
light(n) = light(n)+cos(b);
end
else
for xin=x0:0.001:x1
b = atan((abs(xin-x))/(h+y1));
light(n) = light(n)+cos(b);
end
end
end
% elseif x>=(R/cos(a))
% xmin=x-h*tan(a);
% xmax=x+h*tan(a);
% for xin=xmin:0.001:xmax
% b = atan((abs(xin-x))/h);
% light(n) = light(n)+cos(b);
% end
end
clear y x0 x1;
end
00分享举报
最后
以上就是傻傻唇膏为你收集整理的matlab max报错,matlab报错,符号变量不能用max(),但是怎么改呢?的全部内容,希望文章能够帮你解决matlab max报错,matlab报错,符号变量不能用max(),但是怎么改呢?所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复