徐 彬
(武昌首义学院 基础科学部,湖北 武汉 430064)
Matlab在复变函数与积分变换课堂教学中的应用
徐彬
(武昌首义学院 基础科学部,湖北 武汉 430064)
摘要:在复变函数与积分变换的课堂教学中,为了让教学内容更容易被学生接受,提出将Matlab软件引入到课堂教学中。利用Matlab软件在绘图和计算方面的优势,将该课程中抽象且复杂的学习内容用可视化、动态化的形式直观地表现出来,同时简化了计算过程,促进学生对知识的深入理解,提高了学生的学习兴趣,取得了良好的教学效果。
关键词:Matlab软件;复变函数与积分变换;课堂教学
0引言
Matlab软件是数值计算型的数学类科技应用软件,由美国Mathworks公司于20世纪中期推出, Matlab软件有诸多优点:高效的数值计算功能可以使繁杂的数学运算问题得以快速解决;完备的图形处理功能可以实现计算结果或编程的可视化;丰富的应用工具箱提供了大量方便、实用的处理工具;用户界面清晰且操作简单。若将此软件运用于课堂教学中,势必可以优化教学效果[1]。
笔者长期从事复变函数与积分变换课程的教学工作,在近几年的课堂教学中,将Matlab软件引入到课堂教学中,通过Matlab辅助教学,使学生加深了对知识难点的理解,提高了学生的学习兴趣,开拓了学生的视野。本文将结合笔者的教学经历,探讨Matlab软件在复变函数与积分变换课堂教学中的应用效果。
1绘制复变函数中的初等函数图像
复变量的初等函数是实变量初等函数的推广,它们在性质上有许多相似之处,但在教学中应重点强调它们之间的区别,如:指数函数的周期性、对数函数的多值性、正弦余弦函数的无界性。通过Matlab软件的绘图功能,绘出这些函数的图形,便可直观地观察出函数的变换趋势[2],从而加深学生对该知识点的理解。
1.1指数函数的图像
复变量的指数函数ez是以2kπi(k=0,±1,±2,…)为周期的周期函数[3],为了让学生更直观地看到复变量的指数函数具有周期性,可以利用Matlab里的“surf”函数,以XOY平面表示自变量所在的平面,以Z轴表示复变函数的实部,以颜色表示复变函数的虚部,画出复变量指数函数的四维表现图[4]。具体的Matlab指令如下:
>>x=[0:pi/15:4*pi];
[x,y]=meshgrid(x);
z=x+i*y;
u=exp(z);
surf(x,y,real(u),imag(u));
title('u=exp(z)')
将Matlab程序运行后得到的指数函数ez图像如图1所示,利用图像中的旋转功能,可将图1中的函数图像进行360°旋转,截得图2、图3。从图1~3中可以清楚地看到复变量的指数函数具有周期性。
图1 指数函数ez的图像
图2 指数函数ez的旋转图像1
图3 指数函数ez的旋转图像2
1.2对数函数的图像
复变量的对数函数为指数函数的反函数,Lnz=ln|z|+iargz+2kπi(k=0,±1,±2,…),复变量的对数函数是无穷多值函数,当k取值不同时,对应的函数值也不同,且每2个值相差2πi的整数倍[3]。
对数函数的多值性也可以通过Matlab作图直观地呈现出来。以Z轴表示复变函数的虚部,以颜色表示复变函数的实部,用极坐标下的数据网格作图,取k=0,1,…,5,即可得到准确的函数图像。具体的Matlab指令如下:
>>[r,theta]=meshgrid([0:0.1:1],[- pi:0.05*pi: pi]);
x=r.*cos(theta);
y=r.*sin(theta);
z=x+i*y;
u=log(z);
for k=0:5
subplot(2,3,k+1);
u=u+2*k*pi*i;
surf(x,y,imag(u),real(u));
caxis([0,100]);
title('u=Lnz');
end
对数函数Lnz每一支的图像如图4所示。图4中对数函数Lnz每一支图像的颜色相同,形状不同,说明每一分支的实部相同,虚部不同,对数函数的多值性是由其虚部决定,将图4中每一支的图像利用“hold on”命令叠加在一起,叠加后对数函数Lnz的图像如图5所示,从图5中可以看出图形螺旋上升,形象地表现出复变量的对数函数是一个多值函数。
图4 对数函数Lnz每一支的图像(k=0,1,…5)
图5 叠加后对数函数Lnz的图像
1.3三角函数的图像
在复数域中|sinz|≤1,|cosz|≤1不成立[3]。为了形象说明这一性质,用Z轴表示sinz的模,用Matlab作出|sinz|的图像,具体的Matlab指令如下:
>>x=[0:pi/5:7*pi];
[x,y]=meshgrid(x);
z=x+i*y;
u=sin(z);
surf(x,y,abs(u));
title('u=sinz模' )
|sinz|的图像如图6所示。从图6中可以明显看出,在复数域中|sinz|≤1不成立。关于余弦函数同理可得。
图6 |sinz|的图像
2有理函数的部分分式展开及留数的计算
有理函数的部分分式展开是教学中的一个难点,用传统方法分解比较繁琐,学生容易遗忘且不易掌握。在课堂教学中可以利用Matlab工具箱中的“residue”函数[5]求有理函数展开为部分分式后的展开系数,巧妙的运用该函数可以将有理函数展开为部分分式,同时也可以求出有理函数在孤立奇点处的留数。
利用Matlab求f(z)=
的部分分式展开,Matlab调用格式为:[r,p,k]=residue(b,a)。
其中向量b为分子以z降幂排列的多项式系数,向量a为分母以z降幂排列的多项式系数,向量r是返回的留数,向量p是返回的极点,向量k由B(z)/A(z)的商的多项式系数组成,若length(b) 需要注意的是,当函数有k重极点时,对k重极点-pi,存在几个展开系数ri,ri+1,…,ri+k-1。这几个系数中只有第1个ri是负一次项的系数,此系数为-pi所对应的留数。部分分式的展开结果需要手动写出: 从部分分式展开式中,易得Res[f(z),-p1]=r1,Res[f(z),-pi]=ri等。 解Matlab输入语句 >>b=[1,0,0]; a=[1,0,-3,-2]; [r,p,k]=residue(b,a); [m,n]=rat(r); [m,n,p] 其中r不一定是整数,可调用函数rat将其化为分数展开,m代表分子,n代表分母。 输出第1列为r的分子,第2列为r的分母,第3列为极点。 运行结果 ans = 4.000 09.000 02.000 0 5.000 09.000 0-1.000 0 -1.000 0 3.000 0-1.000 0 手写出部分分式展开结果: 3傅里叶变换及绘制频谱图 积分变换是教学中的重点内容,除了要讲授其基本定义和性质之外,更重要的是需讲清楚引入积分变换的意义及其应用。 从纯粹的数学意义上看,傅里叶变换是将一个函数转换为一系列周期函数来处理;从物理效果来看,傅里叶变换将原来难以处理的时域信号转换成易于分析的频域信号,可以利用一些工具对这些频域信号进行加工、处理;最后还可以利用傅里叶逆变换将这些频域信号转换成时域信号。 在课堂教学中可以利用Matlab求出函数的傅里叶变换,并绘制出时域图和经过傅里叶变换后的频谱图,让学生了解到Fourier变换是信号频谱分析的一种极有力的工具[6],直观地体会傅里叶变换的应用,为后续专业课学习打好基础。 例2求f(t)=sin(12πt)+sin(6πt)的傅里叶变换,并绘制此正弦叠加信号变换前后的时域、频域图。 解Matlab输入语句 >> syms t; f=sin(12*pi*t)+ sin(6*pi*t) F=fourier(f) 运行结果 F =i*pi*(dirac(w+6*pi)-dirac(w-12*pi)-dirac(w-6*pi)+dirac(w+12*pi)) 即:F(ω)=πi[δ(ω+12π)-δ(ω-12π)+δ(ω+6π)-δ(ω-6π)] 编写信号并绘制图形,Matlab输入语句: >>t=linspace(-10,10,2^8); a=sin(2*pi*6*t); b=sin(2*pi*3*t); c=a+b; plot(t,c); cftbyfft(c,t); 正弦叠加信号时域图如图7所示,图7中的信号由2个三角函数波合成,但是在时域表示下,很难对图7进行分析,于是,对图7进行傅里叶变换,转换到频域表示,正弦叠加信号频域图如图8所示,观察图8可得知:频率在3和6的位置对应的幅值较大,标记出这2个频谱峰值对应的频率分量,说明信号是由频率为3和6的2个正弦函数叠加而成。 傅里叶变换简单通俗地理解即是将看似杂乱无章的信号考虑成由一定振幅、相位、频率的基本正弦(余弦)组合而成的信号,傅里叶变换的目的是找出这些基本正弦(余弦)信号中振幅较大信号对应的频率,从而找出杂乱无章的信号中主要振动频率的特点,以解决一些实际问题。这样在课堂教学中作进一步引导,学生对傅里叶变换的理解会更加透彻。 图7 正弦叠加信号时域图 图8 正弦叠加信号频域图 4结束语 在复变函数与积分变换的教学中,将Matlab软件引入课堂教学,利用Matlab软件在绘图和计算方面的优势,可以将抽象复杂的学习内容,用可视化、动态化的形式直观地表现出来,以促进学生对知识深入理解,同时还可以简化繁琐的计算过程,让学生有更多时间和精力去体会和掌握课程的精髓,激发学生的学习兴趣,让数学学习变得生动有趣。 参 考 文 献 [1]茹静.《复变函数与积分变换》实验教学的实践和探讨[J].吉林化工学院学报,2015,32(10):5-9. [2]韩英,陈佳旗.复变函数的可视化问题研究[J].北京石油化工学院学报,2012,20(4):61-64. [3]华中科技大学数学系.复变函数与积分变换[M].2版.北京:高等教育出版社,2003:42-49. [4]王正林,龚纯,何倩.精通MATLAB科学计算[M].2版.北京:电子工业出版社,2007:278-297. [5]薛定宇,陈阳泉.高等应用数学问题的MATLAB求解[M].2版.北京:清华大学出版社,2008:144-151. [6]张延华,姚林泉,郭玮.数字信号处理—基础与应用[M].北京:机械工业出版社,2005:1-22. (责任编辑高嵩) 收稿日期:2016-01-08 基金项目:武昌首义学院校级教学研究项目(项目编号:2014Y16)。 作者简介:徐彬,硕士,讲师。 doi:10.3969/j.issn.2095-4565.2016.03.015 中图分类号:G642.0 文献标识码:A 文章编号:2095-4565(2016)03-0068-05 Matlab Application in Class Teaching of Complex Variables and Integral Transform Xu Bin (Department of Basic Science,Wuchang Shouyi University,Wuhan Hubei 430064) Abstract:In order to make the teaching content more easily accepted by the students,this paper proposes introducing the application of Matlab software into the class teaching of complex variables and integral transform.Based on the software Matlab,the abstract and complicated contents have been displayed in the visual and dynamic form,and at the same time the computation process has been simplified,which can deepen the students' understanding,stimulate the students' learning interest and help achieve better teaching effects. Key words:Matlab;complex variables and integral transform;class teaching