图:File:Complex Plane number 2i by rotation 2 by 90 degrees.svg… · CC BY-SA 4.0 · Wikimedia Commons
- 类型
- 数学常数、虚数、高斯整数
- 学科
- 数学
- 相对的概念
- −i
百科正文
在数学、物理及工程学里,虚数单位是指二次方程 x²+1=0 的解。虽然没有这样的实数可以满足这个二次方程,但可以通过虚数单位将实数系统 R 延伸至复数系统 C。延伸的主要动机为有很多实系数多项式方程式无实数解。例如刚才提到的方程式 x²+1=0 就无实数解。可是倘若我们允许解答为虚数,那么这方程式以及所有的多项式方程式都有解。虚数单位通常标记为 i,但在涉及电气、电机工程等电学相关领域时,则往往标记为 j,这是为了避免与电流(记为 i(t) 或 i)相混淆。
定义
虚数单位 i 定义为二次方程式 x²+1=0 的两个根中的一个。这方程式又可等价表达为: x²=-1。
由于实数的平方绝不可能是负数,我们假设有这么一个数目解答,给它设定一个符号 i。很重要的一点是, i 是一个良定义的数学构造。
另外,虚数单位同样可以表示为: i=√(-1)
然而 i=√(-1) 往往被误认为是错的,他们的证明的方法是:
因为 -1=i· i=(√(-1))× (√(-1))=√((-1)× (-1))=√1=1,但是-1不等于1。
但请注意: √(a· b)=√a· √b 成立的条件有 a, b 不能为负数。
实数运算可以延伸至虚数与复数。当计算一个表达式时,我们只需要假设 i 是一个未知数,然后依照 i 的定义,替代任何 i² 的出现为-1。 i 的更高整数幂数也可以替代为 -i, 1,或 i,根据下述方程式: i³=i²i=(-1)i=-i, i⁴=i³i=(-i)i=-(i²)=-(-1)=1, i⁵=i⁴i=(1)i=i。
- 一般地,有以下的公式: i⁴ⁿ=1
- i⁴ⁿ⁺¹=i
- i⁴ⁿ⁺²=-1
- i⁴ⁿ⁺³=-i
- iⁿ=i^(nmod 4)
其中 mod 4 表示被4除的余数。
补充定义
代数定义
作为二次方程 x²+1=0 的一个解。即, i 是满足方程 i²=-1
的数。由于该方程在实数域 R 内无解,引入 i 是构造更广的数系——复数域的关键步骤。
作为有序对
在复数严格的公理化构造中,复数定义为有序对 (a,b),其中 a,b∈ R。在此框架下,虚数单位 i 被定义为有序对 i:=(0,1)。
而复数的乘法规则定义为 (a,b)· (c,d)=(ac-bd,ad+bc)。由此可验证: i²=(0,1)· (0,1)=(0· 0-1· 1,0· 1+1· 0)=(-1,0)=-1。
这一定义完全绕开了“负数的平方根”这一初始概念,从而在逻辑上更为基础。
i和-i
方程 x²=-1 有两个不同的解,它们都是有效的,且互为共轭虚数及倒数。更加确切地,一旦固定了方程的一个解 i,那么 -i (不等于 i)也是一个解,由于这个方程是 i 的唯一的定义,因此这个定义表面上有歧义。然而,只要把其中一个解选定,并固定为 i,那么实际上是没有歧义的。这是因为,虽然 -i 和 i 在数量上不是相等的(它们是一对共轭虚数),但是 i 和 -i 之间没有质量上的区别(-1和+1就不是这样的)。在任何的等式中同时将所有i替换为-i,该等式仍成立。 -i²=1
− -i=i⁻¹=1/i
正当的使用
虚数单位有时记为 √(-1)。但是,使用这种记法时需要非常谨慎,这是因为有些在实数范围内成立的公式在复数范围内并不成立。例如,公式 √a· √b=√(a· b) 仅对于非负的实数 a 和 b 才成立。
假若这个关系在虚数仍成立,则会出现以下情况: -1=i· i=√(-1)· √(-1)=√((-1)· (-1))=√1=1 (不正确) -1=i· i=± √(-1)· ± √(-1)=± √((-1)· (-1))=± √1=± 1 (不正确) (公式略) (不正确)
与算术平方根的关系
在复数域中,“平方根”是一个多值函数。对于非负实数 a,符号 √a 通常指其唯一的非负实平方根(称为**算术平方根**或**算术平方根**)。然而,对于负数或一般的复数,符号 √z 必须明确其分支的选择。通常,复数的**算术平方根**函数定义为其辐角落在区间 (-π,π ] 内的那个根。
在这种约定下, √(-1) 的主值是 i (而非 -i)。即便如此,涉及多个复数的算术平方根的恒等式也普遍不成立。因此,在处理复数时,最安全且清晰的做法是直接使用符号 i 及其基本性质 i²=-1 进行计算,避免对负数直接应用根号运算法则。
i的运算
利用复数的运算规则和欧拉公式,可以对虚数单位 i 进行各种数学运算,包括平方根、幂、对数和三角函数。以下运算除特殊说明外,均为与 i 有关的多值函数,在实际应用时必须指明函数的定义选择在黎曼面的哪一支。下面列出的仅仅是最常采用的黎曼面分支的计算结果。
基本运算与幂循环
虚数单位 i 的整数幂遵循一个周期为4的循环: (公式略)
一般地,对任意整数 n,有: iⁿ=i^(nmod 4)
其中 mod 4 表示被4除的余数。
平方根: i 的平方根为: (公式略)
使用算术平方根符号表示其主值: (公式略)
其解法为先假设两实数 x 及 y,使得 (x+iy)²=i,然后求解 x,y。
一般幂运算
利用欧拉公式 e^(iθ)=cos θ +isin θ,可以将虚数单位表示为指数形式: i=e^(i((π)/2+2kπ)),其中 k∈ Z 为任意整数。
由此可推导出更一般的幂运算公式。设 a,b,c∈ R,且 a>0,则有:
以 i 为指数的幂(实数的虚数次幂): aⁱ=e^(iln a)=cos(ln a)+isin(ln a)
这是一个模为1的复数,其几何意义是在复平面上将点1旋转 ln a 弧度。
以虚数为指数的幂(实数底数的纯虚数次幂): a^(bi)=e^(biln a)=cos(bln a)+isin(bln a)
复数的复数次幂(最一般的情况): a^(b+ci)=a^(b)· a^(ci)=a^(b)[cos(cln a)+isin(cln a)]
此公式清晰地分离了结果在复平面上的**伸缩因子** a^(b) 和**旋转因子** a^(ci)。
最为人熟知的特例: i 的 i 次幂 iⁱ=[e^(i((π)/2+2kπ))]ⁱ=e^(i²((π)/2+2kπ))=e^(-((π)/2+2kπ)), k∈ Z
代入不同的 k 值,可计算出无限多的解。当 k=0 时,得到其主值 e^(-(π)/2)≈ 0.207879576...
对数
以 i 为底的对数:
对于正实数 x>0,有: (公式略) (取主值)
更一般地,对于正实数 a>0 且 a≠ 1,以 i 为底的对数可由换底公式导出: (公式略), k∈ Z。
这是一个纯虚数,且由于 ln i 的多值性,其结果也有无穷多个值。
三角与双曲函数
以下恒等式揭示了虚数单位如何联系三角函数与双曲函数,这是欧拉公式的直接推论。对于实数 x: (公式略)
这些公式表明,对虚自变量的三角函数求值,会转化为实自变量的双曲函数。
作为直接应用,可以计算: (公式略)
sin (公式略)
在编程语言
大部分的编程语言都不提供虚数单位,且平方根函数(大多为sqrt或Math.Sqrt)的引数不可以是负数,因此,必须自行建立类别后方可使用。
但Lisp的许多实现与方言,如Common Lisp,内建虚数和复数的支持。不少动态语言受其影响,也在语言本身或标准库中支持虚数和复数,如Python、Ruby。
一些传统编程语言,如C语言,也从C99开始支持虚数和复数。
在Matlab,虚数单位的表示方法为i或j,但i和j在for循环可以有其他用途。
在Mathematica,虚数单位的表示方法为I、𝕚或𝕛。
在Maple,必须启用虚数功能,并选择用i还是j表示虚数单位。
Go语言于第 1.0 版就内建虚数和复数的支持,变量类型为 complex64和complex128。
以上内容摘自维基百科「虛數單位」,按 CC BY-SA 4.0 使用,去掉了参考文献、外部链接等尾部小节,公式改写成了纯文本。全文、配图和出处见原文。