matlab复变函数画图形
利用MATLAB进行复变函数的主要运算
利用MATLAB进行复变函数的主要运算摘要复变函数与积分变换理论性较强,又是解决实际问题的强有力的工具.该课程已深入到数学的各个分支,如微分方程、积分方程、概率论和数论等多个学科.然而该课程的很多内容比较抽象,学起来比较枯燥且难学.本文利用MATLAB讨论了复变函数与积分变换中的复数运算、泰勒级数的展开、留数、有理函数展开、Fourier变换、Laplace变换和复变函数图形绘制等几个问题.这样不仅提高和完善复变函数与积分变换方法的实用性,同时可以培养学习者运用MATLAB语言编程的能力,对学习者以后的专业课及工作中使用数学软件进行数据处理有很大帮助.关键词:MATLAB; 复变函数; 积分变换1.复数的生成:Z= a + b*I;z = r*exp(i*theta);2.复数的运算:Real(z)imag(z);3.共轭复数复数的共轭可由函数conj 实现。
调用形式conj(x) 返回复数x 的共轭复数4.复数的模和辐角复数的模和辐角的求解由功能函数abs和angle实现。
调用形式abs(x)复数x 的模angle(x)复数x的辐角5.复数的乘除法复数的乘除法运算由“/”和“ ”实现。
6.复数的平方根复数的平方根运算由函数sqrt实现。
调用形式sqrt(x)返回复数x的平方根值。
7.复数的幂运算复数的幂运算的形式为x^ n结果返回复数x的n次幂。
8.复数的指数和对数运算复数的指数和对数运算分别由函数exp和log实现。
调用形式exp(x)返回复数x的以e为底的指数值log( x) 返回复数x的以e为底的对数值。
9.复数方程求根复数方程求根或实方程的复数根求解也由函数solve实现。
10.留数在MATLAB中可用如下方法:假设以知奇点a和m重数,则用下面的MATLAB 语句可求出相应的留数Limit(f*(x-a),x,a) %返回x=a的一级极点的留数Limit(diff(f*(x-a)^m,x,m-1)/prod(1:m-1),z,a %返回x=a的m级极点的留数11. taylor 泰勒级数展开taylor( f )返回f 函数的五次幂多项式近似。
matlab 复变函数
matlab 复变函数一、介绍MATLAB是一个非常强大的数学软件,可以处理各种复杂的数学问题,包括复变函数。
复变函数是一种在复平面上定义的函数,它可以用来描述许多物理和工程现象。
因此,MATLAB提供了许多功能强大的工具来处理和分析复变函数。
二、基本概念1. 复平面复平面是由实部和虚部组成的平面。
在MATLAB中,可以使用complex(x,y)函数创建一个复数。
其中x表示实部,y表示虚部。
2. 复变函数复变函数是一个将一个或多个复数映射到另一个复数的函数。
在MATLAB中,可以使用z = f(w)来表示一个复变函数。
3. 解析性解析性是指一个函数在其定义域内存在导数。
如果一个函数在某个点处存在导数,则称该点为解析点。
4. 共轭共轭是指将一个复数的虚部取负后得到的结果。
在MATLAB中,可以使用conj(z)来计算一个复数的共轭。
5. 模长模长是指一个复数到原点距离。
在MATLAB中,可以使用abs(z)来计算一个复数的模长。
三、常用操作1. 绘制图形绘制图形是处理和分析复变函数时必不可少的操作之一。
在MATLAB 中,可以使用plot函数来绘制复变函数的图形。
2. 计算导数计算导数是分析复变函数的重要操作之一。
在MATLAB中,可以使用diff函数来计算复变函数的导数。
3. 计算积分计算积分也是处理和分析复变函数时必不可少的操作之一。
在MATLAB中,可以使用integral函数来计算复变函数的积分。
4. 计算共轭计算共轭是处理和分析复变函数时经常需要进行的操作之一。
在MATLAB中,可以使用conj(z)来计算一个复数的共轭。
5. 计算模长计算模长也是处理和分析复变函数时必不可少的操作之一。
在MATLAB中,可以使用abs(z)来计算一个复数的模长。
四、常用工具箱1. Symbolic Math ToolboxSymbolic Math Toolbox是一个用于求解符号数学问题的工具箱。
它提供了许多功能强大的工具来处理和分析符号表达式。
【毕业论文】MATLAB在复变函数课程中的实现
摘 要《复变函数》是电子、信号、通讯、控制系统等学科必备的基础课,又是数学分析的后继课,它的理论和方法深刻渗透到代数学、解析数论、微分方程、计算数学等数学的各个分支,有着十分重要的意义。
同时,MATLAB是我专业的重要课程之一,作为数值计算型的数学类科技应用软件,它具有数据分析、可视化及应用程序设计等功能,以成为数学分析、复变函数等课程的基本应用工具。
本论文用MATLAB软件对《复变函数》中的留数、有理分式展开、Taylor级数展开等问题进行求解。
作为复变函数课程中的主要学习部分,三者在复变函数中有着重要的地位。
通过计算机实现对复变函数主要计算问题的实践,体现利用MATLAB软件求解复杂数学理论问题的规范性、简洁性、灵活性。
同时,寓理论教学、实验演示于一体,使一些抽象的知识或运算能用可视化的图形表示,达到传统理论教学无法实现的效果,并利用软件对自己的设计方案进行分析,进而加深对复变函数理论知识的理解。
通过复变函数的系统性和严谨性,为我们进一步系统地学习复变函数知识打下良好的基础。
关键词:留数,Taylor级数,洛朗级数,MATLABAbstract"Complex Function" not only is the foundational course of electronic, signal, communication, control systems and other disciplines, but also the follow-on course of Mathematical analysis. "Complex Function", whose theory and methods have infiltrated into the various branches of algebra, analytic number theory, differential equations, mathematical calculations, is of great significance. At the same time, MATLAB is one of the most important courses of information and computing science. As the mathematic technology application software of numerical calculation, it has the functions of data analysis, visualization and application program design, and has become a basic application tool of mathematical analysis course and complex function course. This thesis discussed residues, Taylor Series, Fourier transform and linear differential equation of complex function with the MATLAB. As the main part in the course of complex function, the three parts play the significant role in complex function. So that students can solve the main calculation problems of complex function with the computer after they have the understanding of theoretical, which shows MATLAB software’s normative, simplicity, flexibility when solving complex mathematical academic problems. At the same time, it makes some abstract knowledge or calculations can be represented by visual graphics, and curves with the combination of academic teaching and practice demonstration, and hit the target that the traditional theory of teaching can not achieve. Besides, it analyses the designed project with software, then we can learn more about the understanding of complex function theoretical knowledge. According to the systematic and rigorous complex function, we will have a better foundation of studying Complex Function.Key words: residues, Taylor series, Laurent series, MATLAB目 录第一章前言 (1)1.1 复变函数的发展及其应用 (1)1.2 MATLAB软件的发展及其应用 (2)1.3 本论文研究的主要内容和意义 (2)1.4 本论文应解决的主要问题 (3)第二章复变函数基本知识 (5)2.1 有理函数部分分式展开 (5)2.2 泰勒级数和洛朗级数 (5)2.3 留数及留数的应用 (7)2.4 MATLAB画复变函数图形指令 (9)第三章计算与程序实现 (11)3.1 有理函数部分分式展开和留数计算 (11)3.2 泰勒级数展开与洛朗级数展开 (19)3.3 留数的应用 (19)第四章结论与展望 (26)4.1 结论 (26)4.2 对进一步研究的展望 (26)参考文献 (27)致 谢 (28)附 录 (29)第一章 前 言1.1 复变函数的发展及其应用复变函数论产生于十八世纪。
浅谈MATLAB在复变函数教学中的几点应用
浅谈MATLAB在复变函数教学中的几点应用【摘要】MATLAB在复变函数教学中扮演着重要的角色。
本文首先介绍了MATLAB在教学中的重要性和复变函数教学的特点,然后详细探讨了MATLAB在复变函数图像绘制、数值计算、符号计算、实例分析和数据分析中的应用。
通过这些具体案例,可以看出MATLAB在复变函数教学中的多方面作用。
文章总结了MATLAB在复变函数教学中的重要性,并指出MATLAB的应用提升了教学效果。
未来,MATLAB在复变函数教学中的应用还有待进一步探索和提升,可以为学生提供更加直观、灵活和高效的学习体验。
MATLAB的应用有望在复变函数教学中取得更大的突破和发展。
【关键词】MATLAB, 复变函数, 教学, 图像绘制, 数值计算, 符号计算, 实例分析, 数据分析, 教学效果, 未来发展。
1. 引言1.1 MATLAB在教学中的重要性MATLAB在复变函数教学中不仅可以提高学生的学习效率,还能够拓展他们的数学思维和计算能力。
将MATLAB作为教学工具引入复变函数课程中,对于学生的学习和发展具有重要意义。
1.2 复变函数教学的特点复变函数是数学分析中的一个重要分支,包括解析函数、共轭函数、共轭解析函数等概念。
复变函数教学在数学及工程类专业中占据着重要的地位,因为它涉及到很多实际问题的解决办法,如电路分析、信号处理、图像处理等。
复变函数的特点主要表现在以下几个方面:1. 抽象性高:与实数函数不同,复变函数的定义域和值域都是复数集合,这使得复变函数的概念和性质更加抽象和深奥。
学生往往难以直观理解复变函数的含义和应用。
2. 几何意义强:复变函数可以看作平面上的点在复平面上的映射,而复平面是由实数轴和虚数轴组成的,因此复变函数的图像常常与平面几何有关,如曲线、区域、奇点等概念在复变函数中具有重要意义。
3. 计算方法多样:复变函数的计算方法包括解析计算、数值计算、符号计算等多种方式,学生需要掌握多种计算方法,并能灵活运用于实际问题中。
用MATLAB实践教案作图
实验二复变函数MATLAB的图形演示matlab表现复变函数(四维)的方法是用三维空间坐标再加上颜色,类似于地球仪用颜色表示海洋与高山。
单值函数:单叶多值函数:多叶matlab使用下列函数进行复变函数的做图:cplxgrid:构建一个极坐标的复数数据网格z=cplxgrid(m); %产生(m+1)*(2*m+1)的极坐标下的复数数据网格。
最大半径为1的圆面cplxmap:对复变函数做图cplxmap(z,f(z),[optional bound]) %画复变函数的图形,可选项用以选择函数的做图范围cplxmap做图时,以xy平面表示自变量所在的复平面,以z轴表示复变函数的实部,颜色表示复变函数的虚部cplxroot:画复数的n次函数曲面cplxroot(n) %画复数n次根的函数曲面,复数为最大半径为1的圆面cplxroot(n,m) %画复数n次根的函数曲面,复数为最大半径为1的圆面,为(m+1)*(2m+1)的方阵colorbar 显示彩色条colorbar('vert') \ colorbar('horiz')例1.z 的图像 指令:>> z=cplxgrid(30); >> cplxmap(z,z); >> colorbar('vert'); >> title('z')复函数z 的图像如图1所示图1.复变函数z 图形演示分析:从图形上可看到,自变量z 的取值在水平面的单位元内。
x 轴是实轴,y 轴是虚轴。
画函数z 时,是以坐标系的z 轴表示函数的实部,其大小变化范围为1~1+-,形成一个倾斜的圆平面,上面的每一个横条都有相同的实部值。
因为平面上的颜色表示虚部,从颜色对应的数值看出变化范围也是1~1+-,所以在倾斜的原平面上从左到右形成了条状的颜色带,正好对应复变函数的虚部是1~1+-,即与平面上y 轴正负相对应。
matlab绘制Nyquist图与Bode图
MATLAB绘制开环传递函数的Nyquist图与Bode图电气101 1008140313 邱书恒(主导)一、问题重述1.1.已知开环传递函数,画Nyquist图G0(s)=10(0.5s+1)(1+s) ()1.2.已知开环传递函数,画波特图并计算相位裕度G0(s)=2083(s+3)s(s2+20s+625)二、求解过程2.1.画Nyquist图频率特性G(jω)是频率ω的复变函数,可以在复平面上用一个矢量来表示某一频率ω下的量G(jω)。
该矢量的幅值为G(ω)=|G(jω)|,它的相角为φ(ω)=∠[G(jω)]。
当ω从0→∞变化时,矢量轨迹就表示频率特性。
按上述办法,吧频率特性在复平面上用极坐标表示的几何图形,即为Nyquist图。
2.2.画Bode图频率特性的对数坐标图,就是Bode图。
三、Matlab命令解析3.1.nyquist命令nyquist命令可以求得连续系统的奈奎斯特曲线,命令语法如下:nyquist(sys)nyquist(sys,w)nyquist(sys1,sys2,…,sysN)nyquist(sys1,sys2,…sysN,w)[re,im,w,sdre,sdim]=nyquist(sys)Nyquist(sys)创建一个动态系统Nyquist图,该模型可以是连续的或离散,和单变量或多输入多输出。
当带有输出变量时,可得到相应的一组数据,不带输出变量时,则绘出奈奎斯特曲线。
也可用制定向量w指定所要绘制的曲线范围。
3.2. bode命令Bode命令可以求得连续系统的伯德图,命令语法如下:bode(sys)bode(sys1,…,sysN)bode(sys1,PlotStyle1,…,sysN,PlotStyleNbode(…,w)[mag,phase]=bode(sys,w)[mag,phase,wout]=bode(sys)[mag,phase,wout,sdmag,sdphase]=bode(sys)Bode(sys)创建一个动态系统的频率响应bode图。
matlab复变函数画图形
matlab复变函数画图形第四篇计算机仿真第二十一章计算机仿真在复变函数中的应用基于MATLAB语言的广泛应用,我们介绍的计算机仿真方法主要立足于对MATLAB 语言的仿真介绍,而其它的数学工具软件,MATHEMATIC,MATHCAD,MAPLE,的仿真方法是类似的,本章将重点介绍使用MATLAB进行复数、复变函数的各类基本运算以及定理的验证,并介绍仿真计算留数、积分的方法,以及复变函数中Taylor级数展开,Laplace 变换和Fourier变换,21.1 复数运算和复变函数的图形21.1.1 复数的基本运算1复数的生成复数可由语句z=a+b*i 生成,也可简写成z=a+bi;另一种生成复数的语句是z=r*exp(i*theta),其中theta是复数辐角的弧度值, r 是复数的模( 2复矩阵的生成创建复矩阵有两种方法((1)一般方法例 21.1.1创建复矩阵的一般方法(【解】仿真程序为A=[3+5*I -2+3i i 5-i 9*exp(i*6) 23*exp(33i)]%运行后答案为A =3.0000+5.0000i -2.0000+3.0000i 0+1.0000i5.0000-1.0000i 8.6415-2.5147i -0.3054+22.9980i,说明: %后为注释语句,不需输入)(2)可将实、虚矩阵分开创建,再写成和的形式例 21.1.2 将实、虚部合并构成复矩阵【解】仿真程序为re=rand(3,2);im=rand(3,2);com=re+i*im%运行后答案为 com = 0.9501+0.4565i 0.4860+0.4447i0.2311+0.0185i 0.8913+0.6154i0.6068+0.8214i 0.7621+0.7919i 21.1.2 复数的运算1 复数的实部和虚部复数的实部和虚部的提取可由函数real和 imag 实现(调用形式如下:real(z) 返回复数 z 的实部;imag(z) 返回复数 z 的虚部.2 共轭复数复数的共轭可由函数conj实现(调用形式为:conj(z) 返回复数 z 的共轭复数.3 复数的模与辐角复数的模与辐角的求取由函数 abs 和angle实现(调用形式为:abs(z) 返回复数 z 的模;angle(z) 返回复数 z 的辐角.例 21.1.1求下列复数的实部与虚部、共轭复数、模与辐角(113i(34i)(25i),,,82132i,i4ii,,i1i,2i(1); (2); (3); (4)(【解】 a=[1/(3+2i) 1/i-3i/(1-i) (3+4i)*(2-5i)/2i i^8-4*i^21+i]%a =0.2308 - 0.1538i 1.5000 - 2.5000i -3.5000 -13.0000i 1.0000 -3.0000ireal(a)%ans = 0.2308 1.5000 -3.5000 1.0000(注明:凡ans 及其后面的内容均不需输入,它是前面语句的答案,本句ans 是real(a)的答案)imag(a)%ans = -0.1538 -2.5000 -13.0000 -3.0000conj(a)%ans =0.2308 + 0.1538i 1.5000 + 2.5000i -3.5000 +13.0000i 1.0000 + 3.0000iabs(a)%ans = 0.2774 2.9155 13.4629 3.1623angle(a)%ans =-0.5880 -1.0304 -1.8338 -1.2490 4 复数的乘除法复数的乘除法运算由“*”和“/”实现(5 复数的平方根复数的平方根运算由函数 sqrt 实现(调用形式如下:sqrt(z) 返回复数 z 的平方根值6 复数的幂运算复数的幂运算的形式是 z^n,结果返回复数 z 的 n 次幂( 7 复数的指数和对数运算复数的指数和对数运算分别由函数 exp 和log实现(调用形式如下:exp(z) 返回复数 z 的以 e 为底的指数值;log(z) 返回复数 z 的以 e 为底的对数值. 例21.1.2 求下列式的值(πi2ln(,10)e(1); (2)(【解】log(-10)%ans= 2.3026 + 3.1416iexp(pi/2* i)%ans =0.0000+ 1.0000i 21.1.3 复变函数的图形1.整幂函数的图形2z 例 21.1.6 绘出幂函数的图形.【解】 z=cplxgrid(30);cplxmap(z,z.^2);colorbar('vert');title('z^2')%(如图21.1所示)2z图21.1 复变函数的图形2. 根式函数的图形12z 例 21.1.7 绘出幂函数的图形【解】 z=cplxgrid(30);cplxroot(2);colorbar('vert');title('z^{1/2}' ) %(如图21.2).12z 图21.2 复变函数的图形3. 复变函数中对数函数的图形Lnz例 21.1.3 绘出对数函数的图形.【解】z=cplxgrid(20);w=log(z);for k=0:3w=w+i*2*pi;surf(real(z),imag(z),imag(w),real(w));hold ontitle('Lnz')endLnz 图21.3 对数函数 view(-75,30) %(如图21.3)例 21.1.4 计算机仿真编程实践:nzkn (1,2,,),,,,n,2z,,10k若对应为的根,其中且取整数.试用计算机仿真编程验证下列数学恒等式n1,0,,nk,1()zz,,kmm,1mk(),成立.【解】仿真程序n=round(1000*random('beta',1,1))+1% n=input('please enter n=')su=1;sum=0;for s=1:nN(s)=exp(i*2*s*pi/n);endfor k=1:nfor s=1:nif s~=ksu=1/(N(k)-N(s))*su;endendsum=sum+su;su=1;endsum%仿真验证结果为:n =735 sum =2.2335e-016 -5.1707e-016i其中n的值为随机产生的整数,可见其和的实部和虚部均接近于零。
Matlab中函数图形的三种绘制方法
Matlab中函数图形的三种绘制方法及局部和全局解
绘制函数的图形2
x
fπ区间[-1,2]
=x
)
10
sin(+
1 利用plot绘制
x=linspace(-1,2,1000);
y=x.*sin(10*pi*x)+2;
plot(x,y)
/ 函数的显式表达式,先设置自变量向量,然后根据表达式计算出函数向量/
2 利用fplot绘制
f='x.*sin(10*pi*x)+2';或f='x*sin(10*pi*x)+2';
fplot(f,[-1,2],1e-4)
/fplot函数可以自适应地对函数进行采样,能更好地反映函数的变化规律/
3 利用ezplot绘制
f='x*sin(10*pi*x)+2';
ezplot(f,[-1,2])
/隐函数绘图:如果函数用隐函数形式给出,可以利用ezplot函数绘制隐函数图形/
1和2 3的区别是2 3可以直接按照函数的原形直接写出,而1中变量相乘或除时都以点乘和点除的形式写出来的
尝试用fminbnd fminunc fminsearch及遗传算法求解上述函数在区间[-1,2]中的最小值,看看它们四个有什么不同?。
MATLAB在复变函数中的应用 ppt课件
0.9501 + 0.4565i 0.4860 + 0.4447i 0.2311 + 0.0185i 0.8913 + 0.6154i 0.6068 + 0.8214i 0.7621 + 0.7919i
4
2 复数的运算
2.1 复数实部和虚部、共轭复数、复数的模和辐角
1.复数实部和虚部
real(X) 返回复数X的实部
fourier(f,v)=F(v)=int(f(x)*exp(-i*v*x),x,-inf,inf) ➢ F=fourier(f,u,v): 以v代替x且对u积分。且有
fourier(f,u,v)=F(v)=int(f(u)*exp(-i*v*u),u,-inf,inf)
% complex08.m syms s v w x F1=fourier(1/t) F2=fourier(exp(-x^2),x,t) F3=fourier(exp(-t)*sym(‘Heaviside(t)’),v) F4=fourier(diff(sym(‘F(x)’)),x,w)
MATLAB 绘制函数的图形
MATLAB绘制函数的图形图形是MATLAB的主要特色之一.包括二维绘图、三维绘图和特殊图形等等.作为入门部分这里以例子的形式仅介绍几个简单的绘图指令.MATLAB中最常用的绘图函数为plot,根据不同的坐标参数,它可以在二维平面上绘制出不同的曲线.(1)二维平面绘图—— plot函数例4 ( 图1.19 )x=0:pi/100:2*pi;y1=sin(x);y2=cos(x);plot(x,y1,'k:',x,y2,'b-') %绘制包括线型与颜色的曲线title('sine and cosine curves'); % 标题xlabel('independent variable X'); % x轴标题ylabel('dependent variable Y'); % y轴标题text(2.8,0.5,'sin(x)'); % 图形部分含义说明text(1.4,0.3,'cos(x)'); % 图义说形部分含明legend('sin(x)','cos(x)'); % 图例说明axis([0,7,-1,1]); % 设定坐标范围图1.19说明:每条曲线的线型和颜色由字符串'cs'指定,其中c表示颜色,s表示线型(表1.1)颜色符号颜色线型符号s 线型y 黄色﹒点m 紫色。
圆圈c 青色X 叉号r 红色+ 加号g 绿色* 星号b 蓝色 - 实线 w 白色 : 点线 k 黑色 —﹒ 点划线—虚线表1.1 颜色与线型曲线标记· point (点) X x-mark (叉号)O circle (园_字母O) + plus (加号) * star (星号) s square (方块) d diamond(点) v triangle(down) (下三角) ^ triangle(up) (上三角) < triangle(left) (左三角) > triangle(right) (右三角)p pentagram (空心五角星) h hexagram (空心六角星)(2)函数f(x)图象绘图—— fplot 函数和ezplot 函数绘制函数f(x)的曲线方法有多种,最常用的方法:对采样点向量x 计算出f(x)的值向量y ,再用plot(x,y)函数绘制。
Matlab绘制函数图像
Matlab绘制函数图像⼀、绘制图像的常⽤思路在通常情况下,⼿动绘制函数图像的基本思路是确定⾃变量的取值范围、选取合适的⾃变量点、通过函数表达式得出对应的应变量的点、将这些点连接起来,即可得到⼤致图像。
使⽤Matlab绘制函数图像也是使⽤这样的思路,当⾃变量的点取得够多时,连接这些点的图形就越接近函数图像。
⼆、Matlab中绘制图形的常⽤语⾔规范和绘图函数在Matlab中,选取⾃变量的操作变得及其简单,⼤致格式如下:X = 下限:取值间隔:上限。
详细情况可以看案例。
Matlab对于函数的表⽰也⼗分的接近⾃然语⾔,可以参考案例学习。
在绘制图像时,Matlab对于⼆维和三维图像有不同的函数。
绘制⼆维图像⼀般使⽤的是“plot”函数,在调⽤它时,只需要给定对应的⾃变量和应变量即可,例如plot(x,y)就是绘制x为⾃变量y为应变量的函数图像;对于三维图像⼀般使⽤“surf”函数,它的使⽤也和“plot”函数⼤致相同。
当然,这两种绘图函数还有⼀些更加深⼊的⽤法,这⾥不⼀⼀介绍。
三、注意事项由于在Matlab中对于矩阵的乘法有两种⽅法,⼀种是矩阵相乘,满⾜矩阵相乘的规律,⽤“*”符号表⽰;另⼀种是矩阵对应元素的相乘,即需要相乘的矩阵的维度相同,得到的矩阵维度不变,每个位置上的值都是对应元素相乘的结果,⽤“.*”符号表⽰。
同时,在绘制⼆维图像时,plot 函数默认没有使⽤⽹格线标注,所以还需要“grid”函数添加⽹格线条。
在含有除法的函数表达式中,还应该避免除数为零的异常情况,通常解决它的办法是在除数部分表达式后⾯加上⼀个eps(⽆穷⼩)。
四、案例图形绘制⼆维函数图像的绘制:在(0,4)的函数图像:x=0:pi/50:4*pi;y=exp(-t/3).*sin(3*t);plot(x,y);grid图4.1 ⼆维函数图像三维函数图像的绘制:的函数图像,x,y的取值范围都是[-8,8]:x=-8:0.5:8;#确定x的取值范围y=x';X=ones(size(y))*x;#由于是三维图像,所以此时的X不再是⼀维数组,⽽是⼀个⼆维数组,部分结果如下Y=y*ones(size(x));#和X同理R=sqrt(X.^2+Y.^2)+eps;#异常值处理Z=sin(R)./R;surf(X,Y,Z)图4.2 三维函数⾃变量X的表⽰图4.3 三维函数图像END编辑 | 王⽂星责编 | 黄章鱼能⼒越强,责任越⼤。
MATLAB笔记之复数以及基本复数函数二维视角(2d)图形绘制
MATLAB笔记之复数以及基本复数函数二维视角(2d)图形绘制•小蔡•一般复数的2d图形绘制•一般复数的平移图形~(即一个复数加另一个复数实现在复平面的平移)•补充几个复数以及复数函数的俯视图o复数的余弦函数的俯视图像(cos(z))o1/z的俯视图像o z/(1+z)的俯视图像o exp(x + iy)的俯视图像o z^3的俯视图像o z/(x^2+2*y)的俯视图像•总结所谓二维视角/俯视角,都指的是复数在复平面的表现形式——而四维属性,采用复数实部作为颜色选值来实现~一般复数的2d图形绘制以下代码可以直接复制实现~x = linspace(-1,1,30); % linspace的作用——依次获取等间隔的第一个参数到第二个参数的一系列值,个数由第三个参数决定(返回一个行向量)——闭区间y = linspace(-1,1,30); % 这个取值,只会影响格子大小而已[x,y] = meshgrid(x,y); % meshgrid返回一个二维网格的矩阵数据z = x + y*1i; % 说明一下,在matlab中,你输入*i或者*1i,最后再用的时候,其实他也不过是按照实部虚部作图/计算而已figure;% 我们先画一下当前的三维复数图mesh(x,y,imag(z),real(z)); %参数第一第二分别是x,y值,其次,是我们需要显示的复数的虚部作为z值,以实部作为颜色取值axis([-3,3,-3,3]); % 这个函数方法设置可以保证z轴默认为零,和图形打开时默认的x,y轴长度% axis,使得我们能够从二维视角观看复数图形grid off;% 取消栅格(就是那些格子)set(gca,'xtick',(-3:3),'ytick',(-3:3)); % set设置属性中,第一个参数为对象,也就是对谁设置属性,其后都是键对值% 也就是,'xtick’,(-3,3),为一个键对值% 添加标题title("复数四维·俯角观查图像");% 添加坐标轴标签——就是给坐标轴名字xlabel("实部");ylabel("虚部");box off;% 取消边框效果:一般复数的平移图形~(即一个复数加另一个复数实现在复平面的平移)原理是:mesh的反复画图(只改变复平面x,y的值,这里不要改变后两个参数哦)——将几次平移的图形保留下来x = linspace(-1,1,30); % linspace的作用——依次获取等间隔的第一个参数到第二个参数的一系列值,个数由第三个参数决定(返回一个行向量)——闭区间y = linspace(-1,1,30); % 这个取值,只会影响格子大小而已[x,y] = meshgrid(x,y); % meshgrid返回一个二维网格的矩阵数据z = x + y*1i; % 说明一下,在matlab中,你输入*i或者*1i,最后再用的时候,其实他也不过是按照实部虚部作图/计算而已figure;% 我们先画一下当前的三维复数图mesh(x,y,imag(z),real(z)); %参数第一第二分别是x,y值,其次,是我们需要显示的复数的虚部作为z值,以实部作为颜色取值axis([-3,3,-3,3]); % 这个函数方法设置可以保证z轴默认为零,和图形打开时默认的x,y轴长度% axis,使得我们能够从二维视角观看复数图形grid off;% 取消栅格(就是那些格子)set(gca,'xtick',(-3:3),'ytick',(-3:3)); % set设置属性中,第一个参数为对象,也就是对谁设置属性,其后都是键对值% 也就是,'xtick’,(-3,3),为一个键对值% 添加标题title("复数四维·俯角观查图像");% 添加坐标轴标签——就是给坐标轴名字xlabel("实部");ylabel("虚部");box off;% 取消边框% 需要平移就以下操作即可(既然是平移,是二维属性变化,所以设置x,y值就可以了,其它值应该保持不变)z1 = z +(3+3*1i); % 平移第一次mesh(real(z1),imag(z1),imag(z),real(z)); % 移动一下看,不然,可能一个视图看不到%也可以滚动鼠标滑轮,往下滑动放下视图,不过可能需要先点击一下图片hold on; % 保留图形,不知道之后还有没有,所以每一次后边加一个z2 = z +(3+(-3)*1i); % 平移第二次mesh(real(z2),imag(z2),imag(z),real(z));hold on;z3 = z +((-3)+3*1i); % 平移第三次mesh(real(z3),imag(z3),imag(z),real(z));hold on;z4 = z +(-3+(-3)*1i); % 平移第四次mesh(real(z4),imag(z4),imag(z),real(z));hold on;效果:补充几个复数以及复数函数的俯视图复数的余弦函数的俯视图像(cos(z))% cos(z)的图像clear,clc;x = linspace(-pi,pi*2/5,100); % cos(z),与z的开角有关的是xy = linspace(-pi,pi,100); % y控制伸展[x,y] = meshgrid(x,y);z = x + y.*1i;% 取前面的z值为基础,得到一个新的复数% zcs = cos(z); % 注意哦,要点乘,不然会出现和值,而不是矩阵数据zcs = (exp(1i.*z)-exp(1i.*(-z)))./2;% figure,新建一个图形界面显示figure;mesh(real(zcs),imag(zcs),imag(zcs),real(zcs)); % 设置图像参数要在显示函数(mesh/plot等)之后axis([-3,3,-3,3]); % 设置坐标轴默认值grid off; % 关闭栅格set(gca,'xtick',(-3:3),'ytick',(-3:3)); % 设置当前图框title("cos(z)的图像"); % 标题xlabel("实部"); % 坐标轴标签ylabel("虚部"); %box on; % 边框显示hold on;colorbar('vert')效果:1/z的俯视图像% 1/z的图像clear,clc;x = linspace(-pi,pi,100); % cos(z),与z的开角有关的是x y = linspace(-pi,pi,100); % y控制伸展[x,y] = meshgrid(x,y);z = x + y.*1i;% 取前面的z值为基础,得到一个新的复数zx2 = 1./abs(z).*exp(-1i.*angle(z));% zx2 = 1./z; % 注意哦,要点乘,不然会出现和值,而不是矩阵数据% figure,新建一个图形界面显示figuremesh(real(zx2),imag(zx2),imag(zx2),real(zx2)); % 设置图像参数要在显示函数(mesh/plot等)之后% 调用之前的配置过来用就好了(copy前面的)axis([-3,3,-3,3]); % 设置坐标轴默认值grid off; % 关闭栅格set(gca,'xtick',(-3:3),'ytick',(-3:3)); % 设置当前图框title("1/z的图像"); % 标题xlabel("实部"); % 坐标轴标签ylabel("虚部"); %box on; % 边框显示hold on;效果:z/(1+z)的俯视图像% z/(1+z)的图像clear,clc;x = linspace(-20,20,100);y = linspace(-20,20,100);[x,y] = meshgrid(x,y);z = x + y.*1i;zc_y = sqrt((z.*(-z)+(-z).*1)./(1-z.*z));figuremesh(real(zc_y),-imag(zc_y),imag(zc_y),real(zc_y)); axis([-3,3,-3,3]);grid off;set(gca,'xtick',(-3:3),'ytick',(-3:3));title("z/(1+z)的图像");xlabel("实部");ylabel("虚部");box on;hold on;colorbar('vert')效果:exp(x + iy)的俯视图像% exp(x + iy)的图像clear,clc;x = linspace(-pi,pi,34); % cos(z),与z的开角有关的是xy = linspace(-9*pi/10,9*pi/10,34); % y控制伸展[x,y] = meshgrid(x,y);z = x + y.*1i;% 取前面的z值为基础,得到一个新的复数zx = exp(real(z)).*exp(imag(z)*1i); % 注意哦,要点乘,不然会出现和值,而不是矩阵数据% figure,新建一个图形界面显示figuremesh(real(zx),imag(zx),imag(zx),real(zx)); % 设置图像参数要在显示函数(mesh/plot等)之后% 调用之前的配置过来用就好了(copy前面的)axis([-3,3,-3,3]); % 设置坐标轴默认值grid off; % 关闭栅格set(gca,'xtick',(-3:3),'ytick',(-3:3)); % 设置当前图框title("exp(x + iy)的图像"); % 标题xlabel("实部"); % 坐标轴标签ylabel("虚部"); %box on; % 边框显示hold on;效果:z^3的俯视图像% z^3的图像clear,clc;x = linspace(-pi,pi,34); % cos(z),与z的开角有关的是xy = linspace(-pi,pi,34); % y控制伸展[x,y] = meshgrid(x,y);z = x + y.*1i;% 取前面的z值为基础,得到一个新的复数zy2 = z.^3; % 注意哦,要点乘,不然会出现和值,而不是矩阵数据% figure,新建一个图形界面显示figuremesh(real(zy2),imag(zy2),imag(zy2),real(zy2)); % 设置图像参数要在显示函数(mesh/plot等)之后% 调用之前的配置过来用就好了(copy前面的)axis([-3,3,-3,3]); % 设置坐标轴默认值grid off; % 关闭栅格set(gca,'xtick',(-3:3),'ytick',(-3:3)); % 设置当前图框title("z^3的图像"); % 标题xlabel("实部"); % 坐标轴标签ylabel("虚部"); %box on; % 边框显示hold on;效果:z/(x^2+2*y)的俯视图像clear,clc;x = linspace(-2,2,60); % cos(z),与z的开角有关的是xy = linspace(-2,2,60); % y控制伸展[x,y] = meshgrid(x,y);z = x + y.*1i;% 取前面的z值为基础,得到一个新的复数zcy = z./(x.^2+y.*2); % 注意哦,要点乘,不然会出现和值,而不是矩阵数据% figure,新建一个图形界面显示figuremesh(real(zcy),imag(zcy),imag(zcy),real(zcy)); % 设置图像参数要在显示函数(mesh/plot等)之后axis([-3,3,-3,3]); % 设置坐标轴默认值grid off; % 关闭栅格set(gca,'xtick',(-3:3),'ytick',(-3:3)); % 设置当前图框title("z/(x^2+2*y)的图像"); % 标题xlabel("实部"); % 坐标轴标签ylabel("虚部"); %box on; % 边框显示hold on;colorbar('vert')效果:总结绘制复数二维复平面图形——就是画三维的俯视图,取复数实部为颜色参数值。
matlab画复数函数图象和黎曼面
用matlab画复数函数图像探究及体会黄清华学号1207020025(物理一班)戴刘江学号1207020013(物理一班)摘要:本文主要写了小组自学用matlab画黎曼面的一些体会,并给出了数学物理方法课本上固定a值的黎曼面,同时给出了一些常见黎曼面的程序画法。
一:复数函数图像了解:在老师讲多值函数这一节的时候,以w=z^1/2的给我们讲了多值函数的相关性质,并且给出了其黎曼面,其优美的黎曼面图像深深的迷住了我们,于是,我们打算探究用matlab画出一些黎曼面的想法。
经过了一定时间的自学与探究,我们终于学得了一些复数函数画法的了解,并且成功的画出了一部分复数函数图像。
二:学习经历;在学习复数函数画法的时候,主要以w=z^3为例,程序如下:z=cplxgrid(40);view(-37.5,30);w=z.^3;%复数函数subplot(1,1,1);cplxmap(z,w);colorbartitle(‘w=z^3’)将此程序带入matlab里,得到如下图像:当然,在书写这个程序的时候,也经历了很多的错误,在一步步的修改之后才完成的,在此基础上,我们做了w=z.^(1/2),和书上作业给出的复数函数图像,只需要修改的部分只有上面的复数函数和题目做修改就可以。
相关修改如下:(1)w=z.^3;%复数函数……..t itle(‘根号z‘)输入matlab后得到的图像:’(2)学习书上22面当a取得1时候的四个小题的复数图像:W=ln(z)的函数图像,类似与一个漩涡状:W=ln(z-1)的图像,类似一条鱼三:黎曼面的画法在复数函数图像里面,matlab有一类专门的李曼面画法,其母程序如下;z=cplxgrid(45);view(-37.5,30);cplxroot(3);title(‘3叶的面')可以得到图像如下:当我们改变cplxroot(x)中x的值时,就会得到不同数量叶面的黎曼面图像:当x的值取得小数的时候,图像叶面会有缺省,如:当x=1时,应该只有一个叶面,图像是:四:体会经过这次学习,我们成功的画出了一些复数函数的图像,给我们今后的学习带来了乐趣,让我们更有兴趣去学习好数学物理方法这门课。
[matlab画复数函数图像]MATLAB函数画图(2)
[matlab画复数函数图像]MATLAB函数画图(2)篇一: MA TLAB函数画图MA TLAB不但擅长於矩阵相关的数值运算,也适合用在各种科学目视表示。
本节将介绍MA TLAB基本xy平面及xyz空间的各项绘图命令,包含一维曲线及二维曲面的绘制、列印及存档。
plot是绘制一维曲线的基本函数,但在使用此函数之前,我们需先定义曲线上每一点的x及y座标。
下例可画出一条正弦曲线:close all; x=linspace; % 100个点的x座标y=sin; % 对应的y座标plot;=================================================== =小整理:MA TLAB基本绘图函数plot: x轴和y轴均为线性刻度loglog: x轴和y轴均为对数刻度semilogx: x轴为对数刻度,y轴为线性刻度semilogy: x轴为线性刻度,y轴为对数刻度=================================================== =若要画出多条曲线,只需将座标对依次放入plot函数即可:plot, x, cos);若要改变颜色,在座标对后面加上相关字串即可:plot, …c‟, x, cos, …g‟);若要同时改变颜色及图线型态,也是在座标对后面加上相关字串即可:plot, …co‟, x, cos, …g*‟);=================================================== =小整理:plot绘图函数的叁数字元颜色字元图线型态y 黄色. 点k 黑色o 圆w 白色x xb 蓝色+ +g 绿色* *r 红色- 实线c 亮青色: 点线m 锰紫色-. 点虚线-- 虚线=================================================== =图形完成后,我们可用axis函数来调整图轴的范围:axis;此外,MA TLAB也可对图形加上各种注解与处理:xlabel; % x轴注解ylabel; % y轴注解title; % 图形标题legend‟,‟y = cos‟); % 图形注解grid on; % 显示格线=================================================== =我们可用subplot来同时画出数个小图形於同一个视窗之中:subplot; plot);subplot; plot);subplot; plot);subplot; plot);MA TLAB还有其他各种二维绘图函数,以适合不同的应用,详见下表。
第三章_Matlab图形绘制详述
set(gca, 'xticklabel', {'一月','二月','三月', '四月', '五月', '六月'});
5-1 長條圖之繪製(cont.)
Fig. 5-6
5-2 面積圖之繪製
• 面積圖(Area Graphs)和以堆疊 方式呈現的長條圖很類似,特別 適用於具有疊加關係的資料。舉 例來說,若要顯示清華大學在過 去 10 年來的人數(含大學部,研 究生,及教職員)變化情況,可 用面積圖顯示。
1
0.8
0.6
0.4
0.2
0
-0.2
-0.4
-0.6
0
2
4
6
8
10
12
14
Fig. 5-13
5-4 針頭圖之繪製(cont.)
• 欲畫出立體的針頭圖,
可用 stem3 指令。
• 範例5-14:stem301.m theta = -pi:0.05:pi; x = cos(theta);
1
0.8 0.6
一橫列的資料以堆疊(
Stack)方式來顯示。
15
10
• 範例5-3:bar03.m
5
x = [2 3 4 5 7; 1 2 3 2 1];
0
bar(x,'stack')
1
2
Fig. 5-3
5-1 長條圖之繪製(cont.)
• 除了平面長條圖之外, MATLAB 亦可使用 bar3 指 令來畫出立體長條圖。
• 这里所谓的特殊坐标系是区别于均匀直角坐标系而言,具体来 说就是对数坐标系、极坐标系、柱坐标和球坐标等。
复变函数可视化实验---Matlab可视化实验——以指数函数和二次函数为例
实验报告实验人:学号:日期:院(系):专业(班级):实验题目:Matlab可视化实验——以指数函数和二次函数为例一. 实验目的1.通过熟悉数学软件matlab的使用,加强对复变函数中初等函数映射概念的理解。
2.通过可视化显示图形,对各种初等函数映射有更直观的理解。
二. 实验原理1. matlab的可视化功能通过执行用户自行编写的代码,matlab可以绘制工程特性比较强的特殊图形,并且能够很直观地表现出来。
2.复变函数映射本次实验定义了两个图像,左边的图像显示定义域,右边的图像显示定义域经过函数映射后的图像三. 实验内容选择一个初等函数,在matlab上编程实现其映像过程,并将映射前与映射后图形截图表示,观察映像与原像之前的映射关系。
四. 实验平台Matlab开发平台五. 实验分析与设计1. 设计思路1)确定原函数:选取()zf z e;2)对函数进行变形:()(,)(cos sin )cos sin (,)cos (,)sin zx yi x x x x x f z e f x y e e y i y e y ie yu x y e yv x y e y +===+=+==3)输入选择为单位圆:221x y +=,二次函数:2y x =2. 实验代码1) 单位圆221x y +=x=-1:0.001:1;y1=sqrt(1-x.^2);y2=-sqrt(1-x.^2);u=exp(x).*cos(y1);v1=exp(x).*sin(y1);v2=exp(x).*sin(y2);subplot(1,2,1);plot(x,y1,x,y2);axis equal;grid on;subplot(1,2,2);plot(u,v1,u,v2);axis equal;grid on;2) 二次函数2y x =x=-1:0.001:1;y=x.^2;u=exp(x).*cos(y);v=exp(x).*sin(y);subplot(1,2,1);plot(x,y);grid on;subplot(1,2,2);plot(u,v); grid on;3. 结果截图1) 单位圆221x y +=2) 二次函数2y x =六. 实验心得由于之前学习信号与系统的实验接触过MATLAB,所以这次实验的难度不大,只需运用到一个plot函数。
matlab函数图像画图教程
Matlab画图教程1、MATLAB简介:MATLAB语言丰富的图形表现方法,使得数学计算结果可以方便地、多样性地实现了可视化,这是其它语言所不能比拟的。
2、MATLAB的绘图功能:(1)单窗口单曲线绘图x=[0, 0.58,0.84,1,0.91,0.6,0.14]plot (x)(2)单窗口多曲线绘图t=0:pi/100:2*pi;y=sin(t);y1=sin(t+0.25);y2=sin(t+0.5);plot(t,y,t,y1,t,y2)(3)单窗口多曲线分图绘图t=0:pi/100:2*pi;y=sin(t);y1=sin(t+0.25);y2=sin(t+0.5);plot(t,y,t,y1,t,y2)subplot(1,3,1); plot(t,y)subplot(1,3,2); plot(t,y1)subplot(1,3,3); plot(t,y2)t=0:pi/100:2*pi;y=sin(t);y1=sin(t+0.25);y2=sin(t+0.5); plot(t,y,t,y1,t,y2)subplot(3,1,1); plot(t,y)subplot(3,1,2); plot(t,y1)subplot(3,1,3); plot(t,y2)(4)多窗口绘图t=0:pi/100:2*pi;y=sin(t);y1=sin(t+0.25);y2=sin(t+0.5);plot(t,y)figure(2)plot(t,y1)figure(3)plot(t,y2)(5)可任意设置颜色与线型t=0:pi/100:2*pi;y=sin(t);y1=sin(t+0.25);y2=sin(t+0.5); subplot(1,3,1);plot(t,y,'r-')subplot(1,3,2);plot(t,y1,'g:')subplot(1,3,3);plot(t,y2,'b*')(6)图形加注功能t=0:0.1:10y1=sin(t);y2=cos(t);plot(t,y1,'r',t,y2,'b--'); x=[1.7*pi;1.6*pi];y=[-0.3;0.8];s=['sin(t)';'cos(t)'];text(x,y,s);title('正弦和余弦曲线');legend('正弦','余弦')xlabel('时间t'),ylabel('正弦、余弦') gridaxis squarefill-基本二维绘图函数x=[1 2 3 4 5];y=[4 1 5 1 4];fill(x,y,'r')绘制阶梯曲线x=0:pi/20:2*pi;y=sin(x);stairs(x,y)绘制极坐标绘图t=0:2*pi/90:2*pi;y=cos(4*t);polar(t,y)绘制火柴杆绘图t=0:0.2:2*pi; y=cos(t); stem(y)绘制直方图t=0:0.2:2*pi; y=cos(t); bar(y)绘制彗星曲线图t= -pi:pi/500:pi;y=tan(sin(t))-sin(tan(t)); comet(t,y)绘制三维线形图t=0:pi/50:10*pi;plot3(t,sin(t),cos(t),'r:')三维多边形y1=rand(3,5);y2=rand(3,5);y3=rand(3,5);fill3(y1,y2,y3,'m');hold on;plot3(y1,y2,y3,'yo')矩阵的三维网线图z=rand(6);0.8808 0.0729 0.4168 0.7694 0.3775 0.47760.3381 0.7101 0.0964 0.6352 0.3826 0.7086 0.1895 0.8791 0.6747 0.8965 0.6876 0.2380 0.7431 0.3594 0.5626 0.8784 0.1217 0.3910 0.7189 0.0899 0.8130 0.4865 0.0768 0.9759 0.8792 0.1610 0.8782 0.1131 0.1433 0.6288 z=round(z)1 0 0 1 0 00 1 0 1 0 10 1 1 1 1 01 0 1 1 0 01 0 1 0 0 11 0 1 0 0 1mesh(z);不出图…meshgrid——网线坐标值计算函数x=-5:5; y=x;[X,Y]=meshgrid(x,y)Z=X.^2+Y.^2mesh(X,Y,Z)三维曲面图x=-5:5; y=x;[X,Y]=meshgrid(x,y)Z=X.^2+Y.^2surf(X,Y,Z)练习1(1)在同一幅图上的(-pi,pi)区间,用0.5的间隔绘制sinx的红色曲线,用0.1的间隔绘制sin(x+0.5)的绿色曲线,用0.01的间隔绘制sin(x+1)的蓝色曲线。
matlab画复数函数图象和黎曼面
用matlab画复数函数图像探究及体会黄清华学号1207020025(物理一班)戴刘江学号1207020013(物理一班)摘要:本文主要写了小组自学用matlab画黎曼面的一些体会,并给出了数学物理方法课本上固定a值的黎曼面,同时给出了一些常见黎曼面的程序画法。
一:复数函数图像了解:在老师讲多值函数这一节的时候,以w=z^1/2的给我们讲了多值函数的相关性质,并且给出了其黎曼面,其优美的黎曼面图像深深的迷住了我们,于是,我们打算探究用matlab画出一些黎曼面的想法。
经过了一定时间的自学与探究,我们终于学得了一些复数函数画法的了解,并且成功的画出了一部分复数函数图像。
二:学习经历;在学习复数函数画法的时候,主要以w=z^3为例,程序如下:z=cplxgrid(40);view(-37.5,30);w=z.^3;%复数函数subplot(1,1,1);cplxmap(z,w);colorbartitle(‘w=z^3’)将此程序带入matlab里,得到如下图像:当然,在书写这个程序的时候,也经历了很多的错误,在一步步的修改之后才完成的,在此基础上,我们做了w=z.^(1/2),和书上作业给出的复数函数图像,只需要修改的部分只有上面的复数函数和题目做修改就可以。
相关修改如下:(1)w=z.^3;%复数函数……..t itle(‘根号z‘)输入matlab后得到的图像:’(2)学习书上22面当a取得1时候的四个小题的复数图像:W=ln(z)的函数图像,类似与一个漩涡状:W=ln(z-1)的图像,类似一条鱼三:黎曼面的画法在复数函数图像里面,matlab有一类专门的李曼面画法,其母程序如下;z=cplxgrid(45);view(-37.5,30);cplxroot(3);title(‘3叶的面')可以得到图像如下:当我们改变cplxroot(x)中x的值时,就会得到不同数量叶面的黎曼面图像:当x的值取得小数的时候,图像叶面会有缺省,如:当x=1时,应该只有一个叶面,图像是:四:体会经过这次学习,我们成功的画出了一些复数函数的图像,给我们今后的学习带来了乐趣,让我们更有兴趣去学习好数学物理方法这门课。
MATLAB可视化方法和技巧1_3复数的计算和图示
复数的计算和图示{范例3_1}复数的加减法设有两个复数z1 = 1 + 2i和z2 = 4 + 3i,其中i是虚数单位i= -1 。
求两个复数的和z1 + z2 和差z2 –z1。
[解析]复数有三种表示形式(1)代数式(2)三角式z = x + i y(3_1_1)z = r(cos θ + isin θ )(3_1_2)其中r是复数的模,θ是复角。
代数式与三角式的换算关系是r= x2+ y2,=arctan yx(3_1_3) x = r cosθ,y = r sin θ(3_1_4)(3)指数式z = r e i θ(3_1_5)其中利用了欧拉公式e iθ = cosθ + isinθ(3_1_6)设有两个复数z1 = x1 + i y1,z2 = x2 + i y2(3_1_7)复数加法是z= z1 + z2 = (x1 + x2) + i(y1 + y2)(3_1_8)复数减法是z= z1 - z2 = (x1 - x2) + i(y1 - y2)(3_1_9)[程序]P3_1plus.m 如下。
%复数的加减法clear % 清除变量z1=1+2i; %第1 个复数(1)x1=real(z1); %取第1个复数的实部(2)y1=imag(z1); %取第1个复数的虚部(2)x2=4; %第2 个复数的实部y2=3; %第2 个复数的虚部z2=x2+i*y2; % 形成第 2个复数 (3)z=z1+z2; % 两复数之和 (4)x=real(z); % 取复数的实部y=imag(z); % 取复数的虚部figure % 创建图形窗口quiver(0,0,x1,y1,0) % 在复平面画第 1 个复数 (5)hold on% 保持图像quiver(0,0,x2,y2,0) % 画第 2 个复数 (5) quiver(0,0,x,y,0) % 画复数之和 (5)plot([x1,x],[y1,y],'--') % 画虚线 (6)plot([x2,x],[y2,y],'g--') % 画虚线 (6)axis equal% 使坐标刻度相等 (7) grid on% 加网格r=abs(z); % 求模 (8)theta=angle(z)*180/pi; % 求复角 (9)text(0,0,num2str(theta),'FontSize' , 16) %显示复角(10)text(x,y,num2str(r),'FontSize',16) % 显示模 (10)title('两复数之和','FontSize',16) % 显示标题z=z2-z1; % 两复数之差x=real(z); % 取复数的实部y=imag(z); % 取复数的虚部figure % 创建图形窗口quiver(0,0,x1,y1,0) % 在复平面画第 1 个复数(11)hold on% 保持图像quiver(0,0,x2,y2,0) % 画第 2 个复数quiver(x1,y1,x,y,0) % 画复数之差axis equal% 使坐标刻度相等grid on% 加网格title('两复数之差','FontSize',16) % 标题[说明](1)变量i 表示虚数单位,可用于形成复数。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
matlab复变函数画图形第四篇计算机仿真第二十一章计算机仿真在复变函数中的应用基于MATLAB语言的广泛应用,我们介绍的计算机仿真方法主要立足于对MATLAB 语言的仿真介绍,而其它的数学工具软件,MATHEMATIC,MATHCAD,MAPLE,的仿真方法是类似的,本章将重点介绍使用MATLAB进行复数、复变函数的各类基本运算以及定理的验证,并介绍仿真计算留数、积分的方法,以及复变函数中Taylor级数展开,Laplace 变换和Fourier变换,21.1 复数运算和复变函数的图形21.1.1 复数的基本运算1复数的生成复数可由语句z=a+b*i 生成,也可简写成z=a+bi;另一种生成复数的语句是z=r*exp(i*theta),其中theta是复数辐角的弧度值, r 是复数的模( 2复矩阵的生成创建复矩阵有两种方法((1)一般方法例 21.1.1创建复矩阵的一般方法(【解】仿真程序为A=[3+5*I -2+3i i 5-i 9*exp(i*6) 23*exp(33i)]%运行后答案为A =3.0000+5.0000i -2.0000+3.0000i 0+1.0000i5.0000-1.0000i 8.6415-2.5147i -0.3054+22.9980i,说明: %后为注释语句,不需输入)(2)可将实、虚矩阵分开创建,再写成和的形式例 21.1.2 将实、虚部合并构成复矩阵【解】仿真程序为re=rand(3,2);im=rand(3,2);com=re+i*im%运行后答案为 com = 0.9501+0.4565i 0.4860+0.4447i0.2311+0.0185i 0.8913+0.6154i0.6068+0.8214i 0.7621+0.7919i 21.1.2 复数的运算1 复数的实部和虚部复数的实部和虚部的提取可由函数real和 imag 实现(调用形式如下:real(z) 返回复数 z 的实部;imag(z) 返回复数 z 的虚部.2 共轭复数复数的共轭可由函数conj实现(调用形式为:conj(z) 返回复数 z 的共轭复数.3 复数的模与辐角复数的模与辐角的求取由函数 abs 和angle实现(调用形式为:abs(z) 返回复数 z 的模;angle(z) 返回复数 z 的辐角.例 21.1.1求下列复数的实部与虚部、共轭复数、模与辐角(113i(34i)(25i),,,82132i,i4ii,,i1i,2i(1); (2); (3); (4)(【解】 a=[1/(3+2i) 1/i-3i/(1-i) (3+4i)*(2-5i)/2i i^8-4*i^21+i]%a =0.2308 - 0.1538i 1.5000 - 2.5000i -3.5000 -13.0000i 1.0000 -3.0000ireal(a)%ans = 0.2308 1.5000 -3.5000 1.0000(注明:凡ans 及其后面的内容均不需输入,它是前面语句的答案,本句ans 是real(a)的答案)imag(a)%ans = -0.1538 -2.5000 -13.0000 -3.0000conj(a)%ans =0.2308 + 0.1538i 1.5000 + 2.5000i -3.5000 +13.0000i 1.0000 + 3.0000iabs(a)%ans = 0.2774 2.9155 13.4629 3.1623angle(a)ans =-0.5880 -1.0304 -1.8338 -1.2490 %4 复数的乘除法复数的乘除法运算由“*”和“/”实现(5 复数的平方根复数的平方根运算由函数 sqrt 实现(调用形式如下:sqrt(z) 返回复数 z 的平方根值6 复数的幂运算复数的幂运算的形式是 z^n,结果返回复数 z 的 n 次幂( 7 复数的指数和对数运算复数的指数和对数运算分别由函数 exp 和log实现(调用形式如下:exp(z) 返回复数 z 的以 e 为底的指数值;log(z) 返回复数 z 的以 e 为底的对数值. 例21.1.2 求下列式的值(πi2ln(,10)e(1); (2)(【解】log(-10)%ans= 2.3026 + 3.1416iexp(pi/2* i)%ans =0.0000+ 1.0000i 21.1.3 复变函数的图形1.整幂函数的图形 2z 例 21.1.6 绘出幂函数的图形. 【解】 z=cplxgrid(30);cplxmap(z,z.^2);colorbar('vert');title('z^2')%(如图21.1所示)2z图21.1 复变函数的图形2. 根式函数的图形12z 例 21.1.7 绘出幂函数的图形【解】 z=cplxgrid(30);cplxroot(2);colorbar('vert');title('z^{1/2}' ) %(如图21.2).12 z图21.2 复变函数的图形3. 复变函数中对数函数的图形Lnz例 21.1.3 绘出对数函数的图形.【解】z=cplxgrid(20);w=log(z);for k=0:3w=w+i*2*pi;surf(real(z),imag(z),imag(w),real(w));hold ontitle('Lnz')endLnz图21.3 对数函数 view(-75,30) %(如图21.3)例 21.1.4 计算机仿真编程实践:nzkn (1,2,,),,,,n,2kz,,10若对应为的根,其中且取整数.试用计算机仿真编程验证下列数学恒等式n1,0,,nk,1()zz,km,m,1mk(),成立.【解】仿真程序n=round(1000*random('beta',1,1))+1% n=input('please enter n=')su=1;sum=0;for s=1:nN(s)=exp(i*2*s*pi/n);endfor k=1:nfor s=1:nif s~=ksu=1/(N(k)-N(s))*su;endendsum=sum+su;su=1;endsum%仿真验证结果为:n =735 sum =2.2335e-016 -5.1707e-016i其中n的值为随机产生的整数,可见其和的实部和虚部均接近于零。
另一篇:matlab表现复变函数(四维)的方法是用三维空间坐标再加上颜色,类似于地球仪用颜色表示海洋与高山。
单值函数:单叶多值函数:多叶matlab使用下列函数进行复变函数的做图:cplxgrid:构建一个极坐标的复数数据网格z=cplxgrid(m); %产生(m+1)*(2*m+1)的极坐标下的复数数据网格。
最大半径为1的圆面 cplxmap:对复变函数做图cplxmap(z,f(z),[optional bound]) %画复变函数的图形,可选项用以选择函数的做图范围 cplxmap做图时,以xy平面表示自变量所在的复平面,以z轴表示复变函数的实部,颜色表示复变函数的虚部cplxroot:画复数的n次函数曲面cplxroot(n) %画复数n次根的函数曲面,复数为最大半径为1的圆面cplxroot(n,m) %画复数n次根的函数曲面,复数为最大半径为1的圆面,为(m+1)*(2m+1)的方阵例1:画复数z^3的图形z=3*cplxgrid(30);cplxmap(z,z.^3);colorbar其结果如图可见,自变量z的取值在水平面的半径小于3的园内。
cplxmap做图时,以xy平面表示自变量所在的复平面,以z轴表示复变函数的实部,颜色表示复变函数的虚部由于函数为单页的,所以函数是单值的例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)); colorbar w2=w1.*exp(i*2*pi/n);subplot(2,2,2),surf(real(z),imag(z),real(w2),imag(w2)); colorbar subplot(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=0,+无穷)z^k当abs(z)>1时,它的罗朗展开式为1/(1-z)=求和(k=-无穷,-1)z^k泰勒展开与罗朗展开的区别在复变函数里面,一些函数无法被展开为泰勒级数,因为那里存在一些奇点。
但是如果变量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(z1,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)为泰勒展开和罗朗展开的综合结果。