当前位置: 首页 > 工具软件 > imatlab > 使用案例 >

Matlab - 复数

习旻
2023-12-01

复数的数学表述

  • 代数式
    F = a + j b F = a +jb F=a+jb
    a,b 分别代表了实部和虚部。

  • 指数式
    F = ∣ F ∣ e θ F= |F| e^{\theta} F=Feθ
    F F F 代表了模(幅值), θ \theta θ 代表了角度(相位)

  • 三角函数式
    F = ∣ F ∣ e j θ = ∣ F ∣ ( c o s θ + j s i n θ ) = a + j b F= |F| e^{j\theta} = |F| (cos\theta + jsin\theta) = a + jb F=Fejθ=F(cosθ+jsinθ)=a+jb

  • 极坐标式
    F = ∣ F ∣ e j θ = ∣ F ∣ ∠ θ F= |F| e^{j\theta} = |F| \angle \theta F=Fejθ=F∣∠θ

复数的表示形式

在 MATLAB 中,i 和 j 表示基本虚数单位。我们可以使用它们来创建复数,例如 1i+3。另外,还可以通过相关函数确定复数的实部和虚部,并计算相位和角度等其他值。

  • 复数标量
    创建一个复数标量,在构建复数常量时使用字符 i(不带乘号)作为后缀。
z = 1+2i

--> z = 1.0000 + 2.0000i

  • 复数向量
    根据两个 4×1 实数向量创建一个复数向量。z 是一个 4×1 复数向量。
x = [1:4]';
y = [8:-2:2]';

z = x+1i*y
--> z = 4×1 complex

   1.0000 + 8.0000i
   2.0000 + 6.0000i
   3.0000 + 4.0000i
   4.0000 + 2.0000i
  • 复指数
    创建一个复数标量,表示半径为 r、角度为 theta(从原点开始)的复数向量。
r = 4;
theta = pi/4;

z = r*exp(1i*theta)
--> z = 2.8284 + 2.8284i

相关函数

  • 创建复数数组
    z = complex(a,b) 通过两个实数输入创建一个复数输出 z,这样 z = a + bi。
z = complex(3,4)
--> z = 3.0000 + 4.0000i
  • 虚数单位
    i or j
  • 绝对值和复数的模
    Y = abs(X) 返回数组 X 中每个元素的绝对值。
    如果 X 是复数,则 abs(X) 返回复数的模。
y = abs(-5)
--> y = 5

y = abs(3+4i)
--> y = 5
  • 相位角
    theta = angle(z) 为复数数组 z 的每个元素返回区间 [-π,π] 中的相位角。theta 中的角度表示为 z = abs(z).exp(itheta)。
z = 2*exp(i*0.5)
--> z = 1.7552 + 0.9589i
r = abs(z)
-->  r = 2
theta = angle(z)
--> theta = 0.5000
  • 复共轭
    Zc = conj(Z) 返回 Z 中每个元素的复共轭。
Z = 2+3i
--> Z = 2.0000 + 3.0000i
Zc = conj(Z)
--> Zc = 2.0000 - 3.0000i
  • 复数的实部

X = real(Z) 返回数组 Z 中每个元素的实部。

Z = 2+3i;
X = real(Z)
--> X = 2

Z = [0.5i 1+3i -2.2];
X = real(Z)
--> X = 1×3

         0    1.0000   -2.2000
  • 复数的虚部
    Y = imag(Z) 返回数组 Z 中每个元素的虚部。
Z = 2+3i;
Y = imag(Z)
--> Y = 3

Z = [0.5i 1+3i -2.2];
Y = imag(Z)
--> Y = 1×3

    0.5000    3.0000         0
  • 确定数组是否使用复数存储
    验证 z 是否为复数。
isreal(z)
--> ans = logical
   0
 类似资料: