PaperTan: 写论文从未如此简单

学科教育

一键写论文

浅谈MATLAB在复变函数教学中的几点应用

时间:2016-01-16

复变函数课程的理论较为枯燥,本文设计了基于IJATLAB软件的几个典型案例,将其引入课堂教学,通过数学实验,让学生感知“看得见”的学习,使复变函数的理论学习达到事半功倍的效果。

“复变函数”课程是通信工程、电子工程、自动化等工科专业必修的专业基础课,该课程理论性强、内容抽象,工科学生普遍感到学习困难。为了解决这个问题,我们在复变函数的教学中引入MATLAB实践内容,使得复变函数的教学理论与实验相结合,教与学相结合,引导学生利用软件对教学内容进行仿真,激发其学习积极性与主动性,提高其对于复变函数内容的理解。该文就MATLAB在复变函数中的几点应用加以分析。通过计算机实现对复变函数主要计算问题的实验,达到传统理论教学无法实现的效果。

1 利用MATLAB进行复变函数的简单运算

复数的表示式突出三角表示法和指数表示法,而这两种表示法中辐角的计算公式较复杂,利用MATLAB可以把复数的实部,虚部,共轭复数,辐角,模等利用简单的命令求出。

例1、计算,,,,的值及实部,虚部,共轭复数,辐角,模。

解:在MATLAB工具窗输入以下矩阵

A=[((1+i)(2-i)^2(3-i)^3)/((3+4)^4*(2+i)^5) i^i i^(2^1/2) (-8)^(1/3) og(1+i)]

A= -0.0016+0.0005i 0.2079+0.0000i 0.0000+1.0000i 1.0000+1.7321i 0.3466+ 0.7854i

>>rea(A)

-0.0016 0.2079

0 1.0000 0.3466

>> imag(A)

ans = 0.0005

0 1.0000 1.7321 0.7854

>> ange(A)

ans = 2.8578

0 1.5708 1.0472 1.1552

>> abs(A)

ans = 0.0017 0.2079 1.0000

2.0000 0.8585

>> conj(A)

ans=-0.0016-0.0005i 0.2079+0.0000i 0.0000-1.0000i 1.0000-1.7321i 0.3466-0.7854i

用MATLAB可直接计算出复数的四则运算和初等函数的值。但对数函数和幂函数的运算仅得出其主值,其多值函数的特性必须从理论推导得出。

例2、计算。

解:在MATLAB工具窗键入

A=[sin(i) sin(i+2pi) cos(i) cos(i+2pi) exp(i) exp(i+2pii)]

A=0.0000+1.1752i -0.0000+1.1752i 1.5431+0.0000i 1.5431+0.0000i

0.5403+ 0.8415i 0.5403+0.8415i

借助于MATLAB易验证复变函数的正弦、余弦函数,指数函数均具有周期性。在复变函数中不成立。在教学中使得学生更易理解和接受这些复变函数的理论。

2 用MATLAB求方程的根

用MATLAB可以求出复杂的复方程的根,还可通过其图形分析根的特性。

例3、解方程。

在MATLAB工具窗键入

S=sove('z^3=-8');

>> s=eva(S);

s=[s(1);s(2);s(3)]

s = -2.0000 + 0.0000i 1.0000 + 1.7321i 1.0000 - 1.7321i

x=2^(1/8)*(1:-0.01:-1);

x=2*(1:-0.01:-1);

y1=sqrt(4-x.^2);y2=-sqrt(4-x.^2);

pot(x,y1,'r-','LineWidth',3);hod on;grid on;

pot(x,y2,'r-','LineWidth',3);axis equa;

pot(s,'o');

axis([-2.5 2.5 -2.5 2.5]);

用解方程的方法可以求出-8的3次方根,有效的解决直接计算仅能计算主值的问题。而且从图1中可以直观的观察出3个根是半径为2的圆上的3个等分点。

例4、求解方程。

在MATLAB中键入

sove('og(z^4+z^3+z^2+z+1)=i')

ans =

0.36521623295345235866005943774426 + 0.64240444029684120856950031509163*i

0.19822799851622204112882959650434 - 1.130167947608232755068528868445*i

  • 0.48211258491386994549037517293678 + 0.86253684186617047083403309081309*i
  • 1.0813316465558044542985138613118 - 0.37477333455477892433500453745974*i 从以上运算可以看出,借助MATLAB强大的运算功能可以解决许多复杂的计算问题。

3 用MATLAB将函数展开成泰勒和洛朗级数

例5、将函数在展开为泰勒和洛朗级数。

解:复变函数是级数展开中常用的一个函数,且在处不解析。若将该函数在展开成泰勒级数和洛朗级数,分析如下。

当时,它的泰勒展开式是。

当时,它的洛朗展开式是。

在MATLAB中工具窗输入

m=30;r=(0:2*m)'/m;

theta=pi*(-m:m)/m;

z=rexp(itheta);

z(find(z==1))=NaN;

figure(1)

cpxmap(z,1./z);tite('原函数');

由原函数图,易得函数在处不解析。

在MATLAB工具窗键入

z1=z-1;

z1(abs(z1-1)>=1)=NaN;

f1=1;u1=1;

for k=1:100

u1=u1.*(z1-1);

f1=f1+u1;

end

figure(2)

subpot(1,2,1);cpxmap((z1-1),f1);tite('泰勒展开');

z2=z;

z2(abs(z2-1)<=1)=NaN;

f2=1./(z2-1);u2=1./(z2-1);

for k=1:100

u2=u2./(z2-1);

f2=f2+u2;

end

figure(2)

subpot(1,2,2);cpxmap((z2-1),-f2);tite('洛朗展开’)

得在处的泰勒展开式及洛朗展开式。

从图3中可以看出,泰勒级数展开图形和洛朗级数展开图形的结合就是对原函数的图形拟合,图形直观的展示了函数的泰勒和洛朗展开的区分,为复变函数的理论教学提供了很好的直观的解释。

4 结语

除了以上设计的一些应用,Matab还可以深入复变函数教学的很多方面。在教与学的过程中,利用MATLAB软件,学生将所学习的理论进行模拟实验,提高了学生学习兴趣,增强了学生的编程动手能力,从而提高了复变函数课程的教学效果。

参考文献

[1]辜蔚君.关于人力资源数字化转型中数据管理工作的思考[J].厦门科技, 2023(1):43-47.