在 MATLAB 中,你如何绘制
f(r) = { 2*J1(a*r) / r }^2
其中 a = 2*pi 和 J1 是第一类贝塞尔函数,r = sqrt(x^2 + y^2)
这应该以 3D 绘制,即有点像气泡(不知道该怎么做)
在 MATLAB 中,你如何绘制
f(r) = { 2*J1(a*r) / r }^2
其中 a = 2*pi 和 J1 是第一类贝塞尔函数,r = sqrt(x^2 + y^2)
这应该以 3D 绘制,即有点像气泡(不知道该怎么做)
使用besselj ---第一类贝塞尔函数---生成J1
。我想你必须改变a
并r
产生“泡沫”。
x
我通过改变和绘制网格点y
来生成以下内容,我不知道这是否是你想要的。-1:0.01:1
(x,y,f)
a = 2*pi;
[X Y] = meshgrid(-1:0.01:1,-1:0.01:1);
R = sqrt(X.^2+Y.^2);
f = (2*besselj(1,a*R(:))./R(:)).^2;
mesh(X,Y,reshape(f,size(X)));
axis vis3d;
Doresdoom 建议,我axis vis3d;
用set(gca,'Zscale','Log')
.