希望高手指教matlab画图,要程序函数是:tand(a)/cosd(a)=L/(4*h)其中:自变量是L=0:1:15h=0:1:10因变量是a
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/06 18:21:33
![希望高手指教matlab画图,要程序函数是:tand(a)/cosd(a)=L/(4*h)其中:自变量是L=0:1:15h=0:1:10因变量是a](/uploads/image/z/12712176-0-6.jpg?t=%E5%B8%8C%E6%9C%9B%E9%AB%98%E6%89%8B%E6%8C%87%E6%95%99matlab%E7%94%BB%E5%9B%BE%2C%E8%A6%81%E7%A8%8B%E5%BA%8F%E5%87%BD%E6%95%B0%E6%98%AF%EF%BC%9Atand%28a%29%2Fcosd%28a%29%3DL%2F%284%2Ah%29%E5%85%B6%E4%B8%AD%EF%BC%9A%E8%87%AA%E5%8F%98%E9%87%8F%E6%98%AFL%3D0%3A1%3A15h%3D0%3A1%3A10%E5%9B%A0%E5%8F%98%E9%87%8F%E6%98%AFa)
希望高手指教matlab画图,要程序函数是:tand(a)/cosd(a)=L/(4*h)其中:自变量是L=0:1:15h=0:1:10因变量是a
希望高手指教matlab画图,要程序
函数是:tand(a)/cosd(a)=L/(4*h)
其中:自变量是L=0:1:15
h=0:1:10
因变量是a
希望高手指教matlab画图,要程序函数是:tand(a)/cosd(a)=L/(4*h)其中:自变量是L=0:1:15h=0:1:10因变量是a
先说一下,这个a是个多值函数,也就是一个L和h可以有无数个a值与之对应,以360为周期,这里画的是a∈[0,360]时的图像,其它区间的图像和这个图像一摸一样,只要做平移即可.
a=[];l=linspace(0,15,30);
H=[0,linspace(.1,10,30)];
[L,h]=meshgrid(l,H);
for m=1:length(H)
for n=1:length(l)
if h(m,n)==0
a(m,n,:)=[90,90];
else
a(m,n,1)=fzero(@(a)tand(a)./cosd(a)-L(m,n)/(4*h(m,n)),45);
a(m,n,2)=fzero(@(a)tand(a)./cosd(a)-L(m,n)/(4*h(m,n)),135);
end
end
end
mesh(L,h,a(:,:,1));
hold on;
mesh(L,h,a(:,:,2));
xlabel('L')
ylabel('h')
zlabel('a')