1、湖北民族学院理学院2014 年春季学期数学与应用数学专业复变函数实验课(二)画图部分上课教师:汪海玲复变函数的 matlab 做图matlab 表现复变函数(四维)的方法是用三维空间坐标再加上颜色,类似于地球仪用颜色表示海洋与高山。单值函数:单叶多值函数:多叶matlab 使用下列函数进行复变函数的做图:cplxgrid:构建一个极坐标的复数数据网格z=cplxgrid(m); %产生(m+1)*(2*m+1)的极坐标下的复数数据网格。最大半径为1 的圆面cplxmap:对复变函数做图cplxmap(z,f(z),optional bound) %画复变函数的图形,可选项用以选择函数的做图范围
2、cplxmap 做图时,以 xy 平面表示自变量所在的复平面,以 z 轴表示复变函数的实部,颜色表示复变函数的虚部cplxroot:画复数的 n 次函数曲面cplxroot(n) %画复数 n 次根的函数曲面,复数为最大半径为 1 的圆面cplxroot(n,m) %画复数 n 次根的函数曲面,复数为最大半径为 1 的圆面,为(m+1)*(2m+1)的方阵例 1:画复数 z3 的图形z=3*cplxgrid(30);cplxmap(z,z.3);colorbar其结果如图可见,自变量 z 的取值在水平面的半径小于 3 的园内。cplxmap 做图时,以 xy 平面表示自变量所在的复平面,以 z
3、 轴表示复变函数的实部,颜色表示复变函数的虚部由于函数为单页的,所以函数是单值的例 2:画复数( z-0.5)0.5 的图形仿照 cplxroot 函数的程序,编程如下m=20;n=2;r=(0:m)/m;theta=pi*(-m:m)/m;z=r*exp(i*theta)-0.5;w1=z.(1/n);subplot(2,2,1),surf(real(z),imag(z),real(w1),imag(w1);colorbarw2=w1.*exp(i*2*pi/n);subplot(2,2,2),surf(real(z),imag(z),real(w2),imag(w2);colorbarsu
4、bplot(2,1,2)surf(real(z),imag(z),real(w1),imag(w1);hold onsurf(real(z),imag(z),real(w2),imag(w2);colorbar如果仅使用 w1=z.(1/n);,则所得结果为图(2,2 ,1)可见,对于多值函数,MATLAB 仅仅是对其主值进行计算。例 3:复变函数 1/(1-z )的级数展开复变函数 1/(1-z)是级数展开中常用的一个函数。当 abs(z)1 时,它的罗朗展开式为1/(1-z)=求和(k=-无穷,-1)zk泰勒展开与罗朗展开的区别在复变函数里面,一些函数无法被展开为泰勒级数,因为那里存在一些
5、奇点。但是如果变量 x 是负指数幂的话,我们仍然可以将其展开为一个级数,这就是洛朗级数.从形式上看,泰勒级数是只含正幂项和常数项.洛朗级数不仅包含了正数次数的项,也包含了负数次数的项。有时无法把函数表示为泰勒级数,但可以表示为洛朗级数。 可以认为泰勒级数是洛朗级数的一种特殊形式m=30;r=2*(0:m)/m;theta=pi*(-m:m)/m;z=r*exp(i*theta)-0.5;z(find(z=1)=nan;z1=z;z1(abs(z1)=1)=nan;w1=1;u1=1;for k=1:100u1=u1.*z1;w1=u1+w1;endsubplot(2,2,1)cplxmap(z
6、1,w1)colorbarz2=z;z2(abs(z2)=1)=nan;w2=1./z2;u2=1./z2;for k=1:100u2=u2./z2;w2=u2+w2;endsubplot(2,2,2)cplxmap(z2,-w2)colorbarsubplot(2,2,3)cplxmap(z,1./(1-z)colorbartemp1=caxis;subplot(2,2,4)cplxmap(z1,w1)hold oncplxmap(z2,-w2)caxis(temp1)axis(min(min(real(z),max(max(real(z),min(min(imag(z),max(max(imag(z),min(min(real(1./(1-z),max(max(real(1./(1-z)colorbar图(2, 2,1)为泰勒展开,图(2,2 ,2)为罗朗展开图(2, 2,3)为 matlab 计算结果,图(2,2 ,4)为泰勒展开和罗朗展开的综合结果