首先认识到复指数函数y=exp(j×w×n)在空间中是一个螺旋前进的三维图像,它前进的方向是自变量序列n增大的方向,w是旋转的速度。在右手系中,若令x轴表示n,y轴表示虚部,z轴表示实部,则从n的正方向往原点看去能够发现:当w>0时,图像顺时针旋转接近;当w<0时,图像逆时针旋转接近。web
为了绘制直观地复指数图像,能够连同它在实轴、虚轴上的投影一块儿绘制。这样一个大任务就分解为6个步骤:svg
S1-绘制复指数图像的离散点;
S2-绘制每一个离散点到旋转轴x轴的垂直连线;
S3-绘制复指数图像在实轴z上的投影,这也是离散点;
S4-绘制实轴投影离散点到旋转轴x轴的垂直连线;
S5-绘制复指数图像在虚轴y上的投影,这也是离散点;
S6-绘制虚轴投影离散点到旋转轴x轴的垂直连线。函数
S1和S2的代码以下:code
f=exp(1j*w*n); L=length(n); x=n; %以该复函数自变量n做为三维图像的x轴 y=imag(f); %以该复函数虚部做为三维图像的y轴 z=real(f); %以该复函数实部做为三维图像的z轴 y_0=zeros(size(n)); %获取y=0的点集 y_1=ones(size(n)); %获取y=1的点集 z_0=zeros(size(n)); %获取z=0的点集 z_1=ones(size(n)); %获取z=1的点集 plot3(x,y,z,'.b'); %绘制虚指数函数图像 hold on grid on x1=[x;x]; y1=[y;y_0]; z1=[z;z_0]; % 绘制复指数函数图像上的点对应的连线 for i=1:L plot3(x1(:,i),y1(:,i),z1(:,i),'b'); end % 绘制副部指数函数图像所绕的轴 plot3(x,y_0,z_0,'k');
S3和S4的代码以下:xml
% 绘制实部的在底面的投影图 plot3(x,y,-1*z_1,'.g'); % 绘制实部的点对应的连线 y2=[y;y_0]; z2=[-1*z_1;-1*z_1]; for i=1:L plot3(x1(:,i),y2(:,i),z2(:,i),'g'); end
S5和S6的代码以下:blog
% 绘制虚部的在后面的投影图 plot3(x,y_1,z,'.r'); % 绘制虚部的点对应的连线 y3=[y_1;y_1]; z3=[z;z_0]; for i=1:L plot3(x1(:,i),y3(:,i),z3(:,i),'r'); end
令w=1,n=0:0.1:15; 能够获得结果如图1所示,从n正方向往原点看去,图像的确顺时针靠近。博客
令w=-1,n=0:0.1:15; 能够获得结果如图2所示,从n正方向往原点看去,图像的确逆时针靠近。it
代码主要部分已所有粘贴在博客,再也不附连接。class