我正在尝试绘制如下图所示的函数:
where the red curve denote for V = 200*1.6*1e-22
和the blue curve denotes for V = 285*1.6*1e-22
clear all
close all
clc
syms phi
l = 50*1e-9;
D = 200*1e-9;
E = 80*1.6*1e-22;
v = 1e+6;
h = 6.626*1e-34/(2*pi);
V = 200*1.6*1e-22;
ky = (2*pi/l).*sin(phi);
q_x = sqrt((E - V).^2./((h*v).^2 - ky.^2));
% vpa(q_x,5)
T = cos(phi).^2./(1 - cos(q_x.*D).^2.*sin(phi).^2);
ezpolar(T)
效果很好,但我只想在-90 < phi < 90
之间显示情节,我试过ezpolar(T,[-pi/2 pi/2])
它给出了区域-90到90的情节,但空区域也出现了。如何删除没有情节的左半半圆形区域。
答案 0 :(得分:2)
假设您要评估(x,y)
时间间隔x=(-1,1)
和y(-1,1)
中的功能,可以使用功能区定义X
和Y
值的网格meshgrid
修改强>
更新了对surf
的调用(参见Hunter Jiang的评论)
a=0.000000000142
X=[-1:.1:1];
Y=X;
[x,y]=meshgrid(X,Y);
z=2*cos(sqrt(3).*y.*a) + 4*cos((sqrt(3).*y.*a)/2).*cos((3.*x.*a)/2) - 1;
%surf(z)
surf(x,y,z)
然后您可以使用函数surf
绘制结果。