资源描述:
《MATLAB可视化方法和技巧1_3复数的计算和图示.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、复数的计算和图示表3MATLAB关于复数运算的函数函数功能函数功能函数功能abs模和绝对值angle相角弧度conj复数共轭real复数实部imag复数虚部{范例3_1}复数的加减法设有两个复数z1=1+2i和z2=4+3i,其中i是虚数单位。求两个复数的和z1+z2和差z2–z1。[解析]复数有三种表示形式(1)代数式z=x+iy(3_1_1)(2)三角式z=r(cosθ+isinθ)(3_1_2)其中r是复数的模,θ是复角。代数式与三角式的换算关系是,(3_1_3)x=rcosθ,y=rsinθ(3_1_4)(3)指数式z=reiθ(3_1_5)其中利用了欧拉公式eiθ=c
2、osθ+isinθ(3_1_6)设有两个复数z1=x1+iy1,z2=x2+iy2(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=re
3、al(z);%取复数的实部y=imag(z);%取复数的虚部figure%创建图形窗口quiver(0,0,x1,y1,0)%在复平面画第1个复数(5)6holdon%保持图像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)axisequal%使坐标刻度相等(7)gridon%加网格r=abs(z);%求模(8)theta=angle(z)*180/pi;%求复角(9)text(0,0,num
4、2str(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)holdon%保持图像quiver(0,0,x2,y2,0)%画第2个复数quiver(x1,y1,x,y,0)%画复数之差axisequal%使坐标刻度相等gridon%加
5、网格title('两复数之差','FontSize',16)%标题[说明](1)变量i表示虚数单位,可用于形成复数。(2)函数real和imag取复数的实部和虚部。(3)如果已知数据的实部和虚部,也可形成复数。(4)求复数之和时,实部与实部相加,虚部与虚部相加,形成新的复数。(5)quiver指令画箭杆,前两个参数表示箭杆的起点坐标,后两个参数表示箭杆两个分量的长度,第5个参数表示按所给数据画箭杆。(6)画虚线形成平行四边形,如P3_1a图所示。(7)坐标间隔应该相等。(8)对于复数(包括实数),abs函数求模。(9)angle函数求复角。(10)text指令显示文本。(11)
6、求复数之差时,三个复数形成三角形。6P3_1a图P3_1b图{范例3_2}复数的乘除法设有两个复数z1=1+2i和z2=4+3i,求两个复数的积z1z2和商z2/z1。[解析]复数乘法为z=z1z2=(x1+iy1)(x2+iy2)=x1x2-y1y2+i(x1y2+x2y1)(3_1_10)用指数表式为z=r1exp(θ1)r2exp(θ2)=r1r2exp(θ1+θ2)(3_1_11)可见:两复数相乘时,其模等于两个复数的模的乘积,其复角等于两个复数的复角之和。复数除法为(3_1_12)用指数表式为z=r2exp(θ2)/[r1exp(θ1)]=(r2/r1)exp(θ2–
7、θ1)(3_1_13)可见:两复数相除时,其模等于两个复数模的商,其复角等于两个复数的复角之差。复数的乘方用指数表示为zn=
8、z
9、nexp(inθ)=
10、z
11、ncos(nθ)+isin(nθ)(3_1_14)[程序]P3_2times.m如下。%复数的乘除法clear%清除变量z1=input('请输入第1个复数(包括实数和虚数)z1:');%键盘输入第1个复数(1)z2=input('请输入第1个复数(包括实数和虚数)z2:');%键盘输入第2个复数(1)x1=real(z1);%取第1个复