原创文章,转载请注明出处:https://blog.csdn.net/weixin_37864449/article/details/103854299

在理解复数和虚数之前我们先看如何表示一个笛卡尔积坐标系下过原点的向量,如下图一所示

图一

向量之间还可以通过加法来合成,如下图二所示

图二

除此之外向量之间还有点乘和叉乘,但唯独没有向量乘法,即:。另外向量加法,点乘和叉乘运算都不能控制向量旋转,为此人们就想到了是否可以使用还没利用到的向量乘法来表示向量旋转。显然要实现向量旋转的目的,就需要使用新的模型表示过原点的向量,为此诞生了复数。

图三

如图三所示就是用复数表示向量的模型。同理复数加法运算(a+bi)+(c+di)=(a+c)+(b+d)i相当于向量的加法合成,合成的向量还是用复数表示。下面为了使复数表示的向量乘法能表示向量的旋转,我们制定了如下用乘法表示的旋转规则,见图四:

图四

我们知道,要控制向量旋转,实质上就是控制向量在实轴的分量和虚轴分量的大小,由上图四乘法旋转规则可知,实轴分量大小可以由虚轴分量大小乘以 i 控制,而虚轴分量大小又可以用实轴分量大小乘以 i 控制,这样就开始有了交叉相乘的味道。

在介绍复数表示的向量乘法之前先介绍复数模和幅角的概念,为了描述复平面上的任意一点(即过复平面原点的向量),可以写成更为普遍的形式:

z=a+bi

其中a和b分别称为复数Z的实部虚部。而Z的长度或“模(Modulus)”为Z点到复平面圆心处的距离,即,Z的幅角公式为下图五

图五(注: 幅角即为向量与实轴的夹角)

现在我们开始介绍重头戏:复数表示的向量乘法,假设r1=a+bi,r2=c+di,则

r1*r2=(a+bi)(c+di)=ac+bdii+adi+cbi=(ac-bd)+(ad+cb)i

这里ac-bd控制实轴分量大小,ad+cb控制虚轴分量大小。由上乘法可以很容易看出,r1借r2控制了自身的旋转,也可以说r2借r1控制了自身的旋转。直接给出结论:两个复数相乘的结果就是,让它们的模长相乘得到最终的模长,让它们的幅角相加得到最终的幅角。这也就解释了为什么说复数自带旋转属性,且有大小和方向的原因了,即 根据图四的旋转规则实轴可以通过乘i旋转为虚轴,故有旋转属性,实轴有数值大小和正负,分别决定了旋转到虚轴分量的大小和分量方向,虚轴可以乘i旋转到实轴,虚轴有系数,系数大小和正负决定了旋转到实轴分量的大小和实轴分量方向。

下面引用知乎"怎么理解复数和虚数”的一个例题说明复数乘法的应用:

用二维向量的思维通俗理解复数和虚数相关推荐

  1. 从二维向量跟虚数的区别到欧拉公式,复指数函数

    正如我们所知道的,二维向量和虚数都可以写为[a,b]这样子的形式,在平面坐标和复平面都可以都有一个点与之对 应,他们之间是一样的吗? 二维向量的两个数是完全独立变量,两者之间没有什么关系,向量的含义比 ...

  2. 《UnityAPI.Vector2二维向量》(Yanlz+Unity+SteamVR+云技术+5G+AI+VR云游戏+Vector2+Normalized+Lerp+Dot+立钻哥哥++OK++)

    <UnityAPI.Vector2二维向量> 版本 作者 参与者 完成日期 备注 UnityAPI_Vector2_V01_1.0 严立钻 2020.07.09 #<UnityAPI ...

  3. python二维向量运算模拟_python二维向量运算_[VB.NET][C#]二维向量的基本运算

    前言 在数学中,几何向量是指具有大小和方向的几何对象. 在编程中,向量有着广泛的应用,其作用在图形编程和游戏物理引擎方面尤为突出. 第一节 构造函数 通过创建一个二维向量的类(或结构体),实现向量的表 ...

  4. uda 3.C++二维向量

    二维向量 接下来,你将使用向量来存储矩阵.就像 Python 使用列表列表来存储矩阵一样,C++ 使用的是向量的向量.用于声明二维向量的语法有点复杂. 假设你正在使用 Python,并且想存储一个 3 ...

  5. LeetCode 251. 展开二维向量

    文章目录 1. 题目 2. 解题 1. 题目 请设计并实现一个能够展开二维向量的迭代器.该迭代器需要支持 next 和 hasNext 两种操作.. 示例: Vector2D iterator = n ...

  6. C++:二维数组和二维向量的长度

    对于一个二维数组: int mm[3][5] = { { 1,2,3,4,5 },{ 5,6,7,8,9 },{ 9,10,11,12,13 } }; int toatlnums = sizeof(m ...

  7. 用vector实现二维向量

    如果一个向量的每一个元素是一个向量,则称为二维向量,例如 [cpp] view plain copy   vector<vector<int> >vv(3, vector< ...

  8. c++中二维数组与二维向量的长度

    对于一个二维数组: int mm[3][5] = { { 1,2,3,4,5 },{ 5,6,7,8,9 },{ 9,10,11,12,13 } }; int toatlnums = sizeof(m ...

  9. Python 编程训练2:二维向量

    目标 定义一个 Python 类名为 V2,用于表示二维向量,支持下列向量运算: 由两个实数创建一个二维向量:如:v = V2(1.1, 2.2) 将一个向量转换为字符串形式(使用__str__方法) ...

最新文章

  1. 央视曝徐梦桃夺冠黑科技:竟然还有个虚拟教练???
  2. 安装SQL2K,当创建挂起文件操作之后...
  3. listen函数的第二个参数_JavaScript数组构造from函数
  4. 禁止微信内置浏览器调整字体大小
  5. mysql node null_node-mysql中防止SQL注入的方法总结
  6. Powerbi实战--常用新建表代码(单位切换,日期表)
  7. 岁末年初3Q大战惊现高潮,360震撼推出Android 3Q IM即时通讯
  8. 开课吧Java课堂之PrintWriter类的运用
  9. 如何把空间数据从CGCS2000转换到WGS84和BD09 ——JAVA语言实现
  10. Android学习笔记-隐藏app图标
  11. 影视后期制作学习(AE)(父子级链接-表达式)
  12. re匹配截至到第一个中文_Python中的正则表达式(re模块)!非常重要!
  13. Python3批量下载网易云音乐热歌榜
  14. 报错:RuntimeError: view size is not compatible with input tensor‘s size and stride (at least one dimen
  15. 篮球图片html页面代码,教你用PS制作一个非常逼真的篮球图片
  16. 实现两个主机之间的密钥分发和安全传输
  17. Linux下 PyDev + Eclipse安装方法
  18. 蓝本蓝科技:做社群需不需要设置KPI,常见社群KPI指标
  19. 常用过流、过压、过温保护电路之选型技巧
  20. mongodb 数据备份

热门文章

  1. context 的用法是什么?(数据之间的跨组件交互传递)
  2. 100天精通Python(基础篇)——第7天:高级变量类型复习
  3. 原生JS写三级联动 --省--市--区
  4. 120帧手机动态壁纸_小英雄高清动态壁纸app下载-小英雄高清动态壁纸v2.6手机下载...
  5. Mysql日志时间与系统时间相差八小时
  6. Kaggle: Tweet Sentiment Extraction 方法总结 Part 1/2: 常用方法总结
  7. qpainter可以设置某像素点的颜色吗_你知道人类眼球的内在价值高达35亿美金吗?...
  8. 全球地名中英文对照表(B)
  9. 山东省第五届ACM大学生程序设计竞赛 Colorful Cupcakes
  10. 终于读完了《Essential C++》