我可以使用这个公式来绘制它:NearField = r^2/l
其中r =换能器的半径
和l =超声波波长
这是我的代码:
colormap(hsv);
l=0.0001:0.00015:0.0015;
r=0.001:0.001:0.01;
[x,y]=meshgrid(r,l);
nearField = x.^2/y;
mesh(r,l,nearField)
当我绘制它时,我得到以下内容:
为什么我没有得到第一张图中的情节?
答案 0 :(得分:2)
您使用了错误的坐标。第一个似乎使用极坐标而不是x,y。你的r也被称为半径,这意味着r²=x²+y²。您必须在x,y坐标中变换公式以使用网格。我不认为,有一个matlab函数会自动执行此操作:/
答案 1 :(得分:0)
我认为你不应该在底线使用网格。 Plot3或surf命令应该是你想要的(第一个画线,第二个画一个表面)。 我希望它有所帮助。