图解虚数 i 的意义

注:1、原文图片 csdn 转储失败,全部重传。
2、全文公式 LaTex 化。


图解虚数 i 的意义

作者:阮一峰 发表日期: 2012 年 9 月 24 日

有人在 Stack Exchange 问了一个问题:

" 我一直觉得虚数(imaginary number)很难懂。

中学老师说,虚数就是 - 1 的平方根。

i = − 1 i=\sqrt {-1} i=1

可是,什么数的平方等于 - 1 呢?计算器直接显示出错!
 
直到今天,我也没有搞懂。谁能解释,虚数到底是什么?
 
它有什么用?"

帖子的下面,很多人给出了自己的解释,还推荐了一篇非常棒的文章

我读后恍然大悟,醍醐灌顶,原来虚数这么简单,一点也不奇怪和难懂!

下面,我就用自己的语言,讲述所理解的虚数。

一、什么是虚数?

首先,假设有一根数轴,上面有两个反向的点:+1 和 - 1。
在这里插入图片描述

这根数轴的正向部分,可以绕原点旋转。显然,逆时针旋转 180 ° 180 ° 180° + 1 +1 +1 就会变成 − 1 - 1 1

在这里插入图片描述

这相当于两次逆时针旋转 90 ° 90 ° 90°

在这里插入图片描述

因此,可以得到下面的关系式:

( + 1 ) ∗ ( 逆时针旋转 90 ° ) ∗ ( 逆时针旋转 90 ° ) = ( − 1 ) (+1) * (逆时针旋转 90 °) * (逆时针旋转 90 °) = (-1) (+1)(逆时针旋转90°)(逆时针旋转90°)=(1)

如果把 + 1 + 1 +1 消去,这个式子就变为:

( 逆时针旋转 90 ° ) 2 = ( − 1 ) (逆时针旋转 90 °)^2 = (-1) (逆时针旋转90°)2=(1)

将 " 逆时针旋转 90 ° 90 ° 90° " 记为 i i i

i 2 = ( − 1 ) i^2 = (-1) i2=(1)

这个式子很眼熟,它就是虚数的定义公式。

所以,我们可以知道,虚数 i i i 就是逆时针旋转 90 ° 90 ° 90° i i i 不是一个数,而是一个旋转量。

二、复数的定义

既然 i i i 表示旋转量,我们就可以用 i i i ,表示任何实数的旋转状态。
在这里插入图片描述

将实数轴看作横轴,虚数轴看作纵轴,就构成了一个二维平面。旋转到某一个角°的任何正实数,必然唯一对应这个平面中的某个点。

只要确定横坐标和纵坐标,比如 ( 1 , i ) ( 1 , i ) (1,i),就可以确定某个实数的旋转量 45 ° 45° 45°

数学家用一种特殊的表示方法,表示这个二维坐标:用 + 号把横坐标和纵坐标连接起来。比如,把 ( 1 , i ) ( 1 , i ) (1,i) 表示成 1 + i 1 + i 1+i这种表示方法就叫做复数(complex number),其中 1 1 1 称为实数部, i i i 称为虚数部。

为什么要把二维坐标表示成这样呢,下一节告诉你原因。

三、虚数的加法

虚数的引入,大大方便了涉及到旋转的计算。

在这里插入图片描述

比如,物理学需要计算 “力的合成”。假定一个力是 3 + i 3 + i 3+i ,另一个力是 1 + 3 i 1 + 3i 1+3i ,请问它们的合成力是多少?

在这里插入图片描述

根据 “平行四边形法则”,你马上得到,合成力就是 ( 3 + i ) + ( 1 + 3 i ) = ( 4 + 4 i ) ( 3 + i ) + ( 1 + 3i ) = ( 4 + 4i ) (3+i)+(1+3i)=(4+4i)

这就是虚数加法的物理意义。

四、虚数的乘法

如果涉及到旋转角度的改变,处理起来更方便。

在这里插入图片描述

比如,一条船的航向是 3 + 4 i 3 + 4i 3+4i

如果该船的航向,逆时针增加 45 ° 45° 45°,请问新航向是多少?

在这里插入图片描述

45 ° 45° 45° 的航向就是 1 + i 1 + i 1+i 。计算新航向,只要把这两个航向 3 + 4 i 3 + 4i 3+4i 1 + i 1 + i 1+i 相乘就可以了(原因在下一节解释):

( 3 + 4 i ) ∗ ( 1 + i ) = ( − 1 + 7 i ) ( 3 + 4i ) * ( 1 + i ) = ( -1 + 7i ) (3+4i)(1+i)=(1+7i)

所以,该船的新航向是 − 1 + 7 i -1 + 7i 1+7i

如果航向逆时针增加 90 ° 90° 90°,就更简单了。因为 90 ° 90° 90° 的航向就是 i i i ,所以新航向等于:

( 3 + 4 i ) ∗ i = ( − 4 + 3 i ) ( 3 + 4i ) * i = ( -4 + 3i ) (3+4i)i=(4+3i)

这就是虚数乘法的物理意义:改变旋转角度。

五、虚数乘法的数学证明

为什么一个复数改变旋转角度,只要做乘法就可以了?

下面就是它的数学证明,实际上很简单。
在这里插入图片描述

任何复数 a + b i a + bi a+bi,都可以改写成旋转半径 r r r 与横轴夹角 θ θ θ 的形式。

假定现有两个复数 a + b i a + bi a+bi c + d i c + di c+di,可以将它们改写如下:

a + b i = r 1 ∗ ( c o s α + i s i n α ) a + bi = r_{1} * ( cosα + isinα ) a+bi=r1(cosα+isinα)
 
c + d i = r 2 ∗ ( c o s β + i s i n β ) c + di = r_{2} * ( cosβ + isinβ ) c+di=r2(cosβ+isinβ)

这两个复数相乘, ( a + b i ) ( c + d i ) ( a + bi )( c + di ) (a+bi)(c+di) 就相当于

r 1 ∗ r 2 ∗ ( c o s α + i s i n α ) ∗ ( c o s β + i s i n β ) r_{1} * r_{2} * ( cosα + isinα ) * ( cosβ + isinβ ) r1r2(cosα+isinα)(cosβ+isinβ)

展开后面的乘式,得到

c o s α ∗ c o s β − s i n α ∗ s i n β + i ( c o s α ∗ s i n β + s i n α ∗ c o s β ) cosα * cosβ - sinα * sinβ + i ( cosα * sinβ + sinα * cosβ ) cosαcosβsinαsinβ+i(cosαsinβ+sinαcosβ)

根据三角函数公式,上面的式子就等于

c o s ( α + β ) + i s i n ( α + β ) cos (α+β) + isin (α+β) cos(α+β)+isin(α+β)

所以,

( a + b i ) ( c + d i )  =  r 1 ∗ r 2 ∗ ( c o s ( α + β ) + i s i n ( α + β ) ) ( a + bi )( c + di ) = r_{1} * r_{2} * ( cos (α+β) + isin (α+β) ) (a+bi)(c+di) = r1r2(cos(α+β)+isin(α+β))

这就证明了,两个复数相乘,就等于旋转半径相乘、旋转角度相加。


via:

### Simcenter 中虚数 i 的使用方法和注意事项 在工程仿真软件 Simcenter 中,处理复数(包括虚数)是非常常见的操作。为了确保计算准确性并避免潜在错误,在使用虚数 \(i\) 或者电学领域常用的 \(j\) 时需要注意特定事项。 #### 虚数单位的选择 Simcenter 支持两种不同的虚数表示方式:\(i\) 和 \(j\)[^1]。具体选择取决于应用背景以及个人偏好。对于大多数电气工程项目,默认推荐采用 \(j\) 来代表虚部;而在通用数学运算场景下,则可以继续沿用传统的 \(i\) 符号。 #### 输入与显示格式 当向 Simcenter 输入含有虚数成分的数据时,可以直接通过键盘输入 `i` 或者 `j` 字符作为虚数单位[^3]。例如: ```matlab z = 3 + 4*i; % 使用 'i' 表示法创建一个复数值 z=3+4i w = 5 + 6*j; % 使用 'j' 表示法创建另一个复数值 w=5+6j ``` 值得注意的是,如果之前在同一工作空间内重新定义过这些字符(比如将其设为其他类型的变量),则可能会引起混淆或误判。因此建议保持默认设置不变,除非有特殊需求。 #### 函数调用及表达式的构建 许多内置函数都支持接受复数参数,并能够返回相应的结果。编写涉及复杂数字的方程式时应遵循标准语法结构。下面给出几个典型例子说明如何正确运用虚数参与各种算术运算: - **加减乘除** ```matlab c = (2 + 3*i) * (-1 - 7*i); % 计算两个复数相乘的结果 d = conj(c); % 获取共轭复数 ``` - **求模长** ```matlab abs_value = abs(d); % 得到复数d的绝对值|d| angle_degrees = rad2deg(angle(d));% 将角度转换成度数形式 ``` #### 特殊情况下的处理措施 为了避免因重复命名引起的冲突问题,可以在必要时候利用 MATLAB 提供的功能重置全局环境中的预定义常量。这可以通过清除所有自定义对象来实现,从而恢复原始状态下的 `i` 和 `j` 定义: ```matlab clearvars; clc; close all; % 此刻再次尝试简单的复数运算不会受到干扰 test_num = sqrt(-9); disp(test_num); % 输出应该接近于0+3.0000i ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值