虚数的意义【转载】

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

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

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

  

  可是,什么数的平方等于-1呢?计算器直接显示出错!

  直到今天,我也没有搞懂。谁能解释,虚数到底是什么?

  它有什么用?"

帖子的下面,很多人给出了自己的解释,还推荐了一篇非常棒的文章《虚数的图解》。我读后恍然大悟,醍醐灌顶,原来虚数这么简单,一点也不奇怪和难懂!

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

一、什么是虚数?

首先,假设有一根数轴,上面有两个反向的点:+1和-1。

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

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

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

  (+1) * (逆时针旋转90度) * (逆时针旋转90度) = (-1)

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

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

将"逆时针旋转90度"记为 i :

  i^2 = (-1)

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

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

二、复数的定义

既然 i 表示旋转量,我们就可以用 i ,表示任何实数的旋转状态。

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

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

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

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

三、虚数的作用:加法

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

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

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

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

四、虚数的作用:乘法

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

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

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

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

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

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

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

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

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

五、虚数乘法的数学证明

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

下面就是它的数学证明,实际上很简单。

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

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

  a + bi = r1 * ( cosα + isinα )

  c + di = r2 * ( cosβ + isinβ )

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

  r1 * r2 * ( cosα + isinα ) * ( cosβ + isinβ )

展开后面的乘式,得到

  cosα * cosβ - sinα * sinβ + i( cosα * sinβ + sinα * cosβ )

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

  cos(α+β) + isin(α+β)

所以,

  ( a + bi )( c + di ) = r1 * r2 * ( cos(α+β) + isin(α+β) )

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

(完)

转自:阮一峰的博客

http://www.ruanyifeng.com/blog/2012/09/imaginary_number.html

时间: 2024-10-20 14:30:52

虚数的意义【转载】的相关文章

虚数的意义

虚数的意义: http://www.ruanyifeng.com/blog/2012/09/imaginary_number.html 实数是Translation, 虚数是Rotation 3D分割 http://people.cs.umass.edu/~kalo/papers/LabelMeshes/ 完整3D模型的分割 Grassman 流形代码 http://www.manopt.org/about.html 有MATLAB版本 基于流形的优化 (普林斯顿出版):  http://pre

协方差的意义

协方差的意义 转载于:http://bbs.mathchina.com/cgi-bin/topic.cgi?forum=5&topic=14444(感谢原作者)  在概率论中,两个随机变量 X 与 Y 之间相互关系,大致有下列3种情况: 当 X, Y 的联合分布像上图那样时,我们能够看出,大致上有: X 越大  Y 也越大, X 越小  Y 也越小,这样的情况,我们称为"正相关". 当X, Y 的联合分布像上图那样时,我们能够看出,大致上有:X 越大Y 反而越小,X 越小 Y

阮一峰的网络日志 算法

http://www.ruanyifeng.com/blog/algorithm/ 2015年 理解矩阵乘法([email protected]) 蒙特卡罗方法入门([email protected]) 泊松分布和指数分布:10分钟教程([email protected]) 2013年 朴素贝叶斯分类器的应用([email protected]) 相似图片搜索的原理(二)([email protected]) TF-IDF与余弦相似性的应用(三):自动摘要([email protected])

《University Calculus》-chape8-无穷序列和无穷级数-欧拉恒等式

写在前面:写在前面的当然是对大天朝教材的吐槽啦. 曾记否,高中所学虚数和复平面的概念,如此虚无的概念到了大学一门叫<模拟电子技术>的课程中居然明目张胆的开始进行计算! 曾记否,高中的指对运算,他们老师由于不想说话就向我们扔了一个自然对数e! 其实很多人觉得数学抽象.晦涩而且无章可循,其实这都是假想,如果真的有这种感觉,很大程度上是教科书在编排顺序上有瑕疵.数学本身是语言,描述自然的语言,因此在每个概念.公式的背后,往往都需要(或者说必然)对应着现实模型,因此在学习新的概念的时候,考察它的现实意

from 阮一峰

JavaScript面向对象编程(一):封装 原文链接:http://www.ruanyifeng.com/blog/2010/05/object-oriented_javascript_encapsulation.html Javascript面向对象编程(二):构造函数的继承: 原文链接:http://www.ruanyifeng.com/blog/2010/05/object-oriented_javascript_inheritance.html Javascript面向对象编程(三):

【算法总结】多项式相关

[快速傅里叶变换] [相关资料] <虚数的图解>        <虚数的意义>        <FFT学习笔记> <从多项式乘法到快速傅里叶变换>        <Fast Fourier Transform> <[快速傅里叶变换][FFT][WikiOI][P3132][高精度练习之超大整数乘法]> [模板代码] [FFT] 1 const double pi=acos(-1); 2 struct cpx{double r,i;cp

(转载)协方差的意义

数学学了好多年,从学会解各种方程组到计算二重三重积分,从代数到几何,从二维平面到三维空间,从线性代数到概率统计……学会了各种机械的解法,但很多基本概念的意义却不知道.比如说我会很容易的求得一个矩阵的特征值跟特征向量,但是他们到底有什么含义,我们为什么要求一个矩阵的特征值??一头雾水.. 这是在做一个模式识别课堂老师布置的一个作业题时遇到的,协方差矩阵.突然想到协方差,实在忘记了它的意义.看到前人整理过详细的解释,做搬运工没意思,这里引用之,以供自己以后巩固知识. 当 X, Y 的联合分布像上图那

好文!特征值和特征向量的几何和物理意义 【转载东山狼的blog】

我们知道,矩阵乘法对应了一个变换,是把任意一个向量变成另一个方向或长度都大多不同的新向量.在这个变换的过程中,原向量主要发生旋转.伸缩的变化.如果矩阵对某一个向量或某些向量只发生伸缩变换,不对这些向量产生旋转的效果,那么这些向量就称为这个矩阵的特征向量,伸缩的比例就是特征值. 实际上,上述的一段话既讲了矩阵变换特征值及特征向量的几何意义(图形变换)也讲了其物理含义.物理的含义就是运动的图景:特征向量在一个矩阵的作用下作伸缩运动,伸缩的幅度由特征值确定.特征值大于1,所有属于此特征值的特征向量身形

[转载] 几张非常有意义的JavaScript基础学习思维图

原文:http://www.w3cfuns.com/forum.php?mod=viewthread&tid=5598364&extra=page%3D1%26filter%3Ddigest%26digest%3D1%26digest%3D1 1.JavaScript 数组 2.JavaScript 函数基础 3.Javascript 运算符 4.JavaScript 流程控制 5.JavaScript 正则表达式 6.JavaScript 字符串函数 7.JavaScript 数据类型