MATLAB可视化方法和技巧1_3复数的计算和图示
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
复数的计算和图示
表3 MATLAB关于复数运算的函数
{范例3_1}复数的加减法
设有两个复数z1 = 1 + 2i和z2 = 4 + 3i,其中i是虚数单位求两个复数的和z1 + z2和差z2–z1。
[解析]复数有三种表示形式
(1)代数式
z = x + i y(3_1_1)
(2)三角式
z = r(cosθ + isinθ) (3_1_2) 其中r是复数的模,θ是复角。代数式与三角式的换算关系是
r=arctan y x
θ(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表示虚数单位,可用于形成复数。
(2)函数real和imag取复数的实部和虚部。
(3)如果已知数据的实部和虚部,也可形成复数。
(4)求复数之和时,实部与实部相加,虚部与虚部相加,形成新的复数。
(5)quiver指令画箭杆,前两个参数表示箭杆的起点坐标,后两个参数表示箭杆两个分量的长度,第5个参数表示按所给数据画箭杆。
(6)画虚线形成平行四边形,如P3_1a图所示。
(7)坐标间隔应该相等。
(8)对于复数(包括实数),abs函数求模。
(9)angle函数求复角。
(10)text指令显示文本。
(11)求复数之差时,三个复数形成三角形。
P3_1a 图 P3_1b 图
{范例3_2}复数的乘除法
设有两个复数z 1 = 1 + 2i 和z 2 = 4 + 3i ,求两个复数的积z 1z 2和商z 2/z 1。
[解析]复数乘法为
z = z 1z 2 = (x 1 + i y 1)(x 2 + i y 2) = x 1x 2 - y 1y 2 + i(x 1y 2 + x 2y 1) (3_1_10)
用指数表式为
z = r 1exp(θ1)r 2exp(θ2) = r 1r 2exp(θ1 + θ2) (3_1_11)
可见:两复数相乘时,其模等于两个复数的模的乘积,其复角等于两个复数的复角之和。
复数除法为
2
2222111212122122111111111i (i )(i )()i()====i (i )(i )z x y x y x y x x y y x y x y z z x y x y x y x y ++-++-++-+ (3_1_12)
用指数表式为
z = r 2exp(θ2)/[r 1exp(θ1)] = (r 2/r 1)exp(θ2 – θ1) (3_1_13)
可见:两复数相除时,其模等于两个复数模的商,其复角等于两个复数的复角之差。
复数的乘方用指数表示为
z n = |z |n exp(i n θ) = |z |n cos(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个复数的实部
y1=imag(z1); %取第1个复数的虚部
x2=real(z2); %取第2个复数的实部
y2=imag(z2); %取第2个复数的虚部
z=z1*z2; %两复数之积
x=real(z); %取复数的实部
y=imag(z); %取复数的虚部
figure %创建图形窗口
quiver(0,0,x1,y1,0) %在复平面画第1个复数
hold on %保持图像
quiver(0,0,x2,y2,0) %画第2个复数