07点积与叉积

点积

02向量与矩阵方程中,我有提及点积概念,现在来说说叉积概念

两个相同维数的向量

[ 2 7 1 ] ⋅ [ 8 2 8 ] = 2 ⋅ 8 + 7 ⋅ 2 + 1 ⋅ 8 = 38 \begin{bmatrix} 2\\ 7\\ 1\\ \end{bmatrix}\cdot \begin{bmatrix} 8\\ 2\\ 8\\ \end{bmatrix}=2\cdot 8 +7\cdot 2 +1\cdot 8 =38 271 828 =28+72+18=38

现在有两个向量,假设它们是用来表示三维坐标即(x,y,z)。我们只需要将它们配对相乘相加即可。

在几何上:A向量在B向量的投影长度 * B向量的长度。

  • 锐角:正数
  • 垂直:0
  • 钝角:负数

为何点乘与顺序无关

画图,然后分别做两个投影,我们会发现垂直线相交的点连接原点形成的线,正好是向量夹角的角平分线。即互为镜像。(当向量为单位长度时)

当向量不为单位长度时,我们可以理解为,先提出系数,然后再点乘单位向量

高维空间到低维空间

举一个例子。

当原空间为二维空间,要压缩要一维空间。

[!NOTE]

我们可以在二维空间上的y=x上取无数个间隔相同的点。在压缩之后,这些点将等距分布在一维空间上,即数轴上。–》线性变换

首先补充一下同一维度下的基向量的线性变换。 (基向量指的是i hat、j hat)
[ 1 2 2 3 ] \begin{bmatrix} 1 &2\\ 2 &3 \end{bmatrix} [1223]
这个2*2矩阵表示这个基向量线性变换的方法。

第一列是i hat的变换之后的位置(1,2)。同理,第二列…

使用它乘以同一维度的向量,就可以得到线性变换之后的新向量。

然后再进入到压缩到更低维度。举个例子,从二维到数轴。
[ 1 2 ] [ 1 3 ] = 4 ⋅ 1 + 3 ⋅ ( − 1 ) [ 1 2 ] [ 1 3 ] = 4 ⋅ 1 + 3 ⋅ ( − 1 ) \begin{align} \begin{bmatrix} 1 & 2 \end{bmatrix} \begin{bmatrix} 1 \\ 3 \end{bmatrix} &= 4 \cdot 1 + 3 \cdot (-1) \\[10pt] % 行间距可以调整,例如 10pt \begin{bmatrix} 1 \\ 2 \end{bmatrix} \begin{bmatrix} 1 \\ 3 \end{bmatrix} &= 4 \cdot 1 + 3 \cdot (-1) \end{align} [12][13][12][13]=41+3(1)=41+3(1)
左边的矩阵表示Transform,右边的Vector表示原向量,结果是变换之后在数轴上的位置。

有没有发现,这和直接进行点乘,是一样的,只不过是将向量倾斜为矩阵了而已。

那么为什么?

以我的看法。线性变换1*2矩阵的二维平面表现是一个向量,让这个矩阵点乘向量,即让向量投影在这个矩阵表现的向量所在的直线数轴。

因而,一个压缩的线性代换完全可以用一个向量来表示,这展现了数学之美

【熟肉】线性代数的本质 - 07 - 点积与对偶性

叉积

点积中,我们提及了两个向量之间的“投影长度”与“对齐”的关系,现在来说说叉积的概念。

两个三维向量的叉积

假设有两个向量:

a = [ 2 7 1 ] , b = [ 8 2 8 ] . \mathbf{a} = \begin{bmatrix} 2\\ 7\\ 1 \end{bmatrix}, \quad \mathbf{b} = \begin{bmatrix} 8\\ 2\\ 8 \end{bmatrix}. a= 271 ,b= 828 .

它们的叉积可以通过以下公式计算:

a × b = ∣ i j k 2 7 1 8 2 8 ∣ . \mathbf{a} \times \mathbf{b} = \begin{vmatrix} \mathbf{i} & \mathbf{j} & \mathbf{k} \\ 2 & 7 & 1 \\ 8 & 2 & 8 \end{vmatrix}. a×b= i28j72k18 .

展开行列式:

a × b = i ( 7 ⋅ 8 − 1 ⋅ 2 ) − j ( 2 ⋅ 8 − 1 ⋅ 8 ) + k ( 2 ⋅ 2 − 7 ⋅ 8 ) . \mathbf{a} \times \mathbf{b} = \mathbf{i}(7 \cdot 8 - 1 \cdot 2) - \mathbf{j}(2 \cdot 8 - 1 \cdot 8) + \mathbf{k}(2 \cdot 2 - 7 \cdot 8). a×b=i(7812)j(2818)+k(2278).

最终结果为:

a × b = [ 54 − 8 − 52 ] . \mathbf{a} \times \mathbf{b} = \begin{bmatrix} 54\\ -8\\ -52 \end{bmatrix}. a×b= 54852 .

结果是一个向量,垂直于向量a、b的张成空间,在二维上,可以理解为,这个向量垂直于向量a、b所围成的平行四边形。

计算方法

(1) 右手定则口诀:
  • 四指指 a a a,弯向 b b b,拇指出方向,就是 a × b a \times b a×b 的方向。
(2) 计算模板:
  • 写成行列式,按代数展开,记住公式:

a × b = ∣ i j k a x a y a z b x b y b z ∣ , a \times b = \begin{vmatrix} \mathbf{i} & \mathbf{j} & \mathbf{k} \\ a_x & a_y & a_z \\ b_x & b_y & b_z \end{vmatrix}, a×b= iaxbxjaybykazbz ,

a × b = i ( a y b z − a z b y ) − j ( a x b z − a z b x ) + k ( a x b y − a y b x ) . a \times b = \mathbf{i}(a_y b_z - a_z b_y) - \mathbf{j}(a_x b_z - a_z b_x) + \mathbf{k}(a_x b_y - a_y b_x). a×b=i(aybzazby)j(axbzazbx)+k(axbyaybx).


几何意义

  1. 大小
    叉积的大小是向量 a \mathbf{a} a b \mathbf{b} b 张成的平行四边形的面积:
    ∣ a × b ∣ = ∣ a ∣ ∣ b ∣ sin ⁡ θ , |\mathbf{a} \times \mathbf{b}| = |\mathbf{a}| |\mathbf{b}| \sin\theta, a×b=a∣∣bsinθ,
    其中 θ \theta θ a \mathbf{a} a b \mathbf{b} b 的夹角。

  2. 法向量

    如果两个向量所在的平面需要确定一个垂直方向(如三维图形的法向量),叉积直接给出了这个方向。

    结果是一个垂直于两个向量的向量,其方向由右手定则决定:

    • 用右手,四指指向 a \mathbf{a} a
    • 手掌弯向 b \mathbf{b} b
    • 拇指的方向就是 a × b \mathbf{a} \times \mathbf{b} a×b 的方向。
  3. 力矩(物理学中的应用):
    力矩是位置向量和力向量的叉积,结果是垂直于两者所在平面的向量:
    τ = r × F \mathbf{\tau} = \mathbf{r} \times \mathbf{F} τ=r×F


为何叉积与顺序有关?

与点积不同,叉积是一个反对称运算:
a × b = − ( b × a ) . \mathbf{a} \times \mathbf{b} = -(\mathbf{b} \times \mathbf{a}). a×b=(b×a).

这是因为方向的改变会使右手定则产生相反的结果。

画一个平行四边形,并用手分别验证 a × b \mathbf{a} \times \mathbf{b} a×b b × a \mathbf{b} \times \mathbf{a} b×a 的方向,可以发现它们是相反的。


从面积到法向量

  1. 面积的直观理解
    如果 a \mathbf{a} a b \mathbf{b} b 是平面中的两条边,叉积的大小就是平行四边形的面积,而叉积的方向是垂直于这个平面的。

  2. 法向量的意义
    在三维几何中,叉积常用来求两个向量所在平面的法向量。例如,给定两个边 a \mathbf{a} a b \mathbf{b} b,它们的叉积可以用来确定平面在三维空间中的方向。


一个实际应用:求三角形的面积

假设我们有两个三维向量 a \mathbf{a} a b \mathbf{b} b,它们从同一个顶点出发。如何计算由这两个向量张成的三角形的面积?

  1. 先求叉积 a × b \mathbf{a} \times \mathbf{b} a×b
    a × b = [ 2 7 1 ] × [ 8 2 8 ] = [ 54 − 8 − 52 ] . \mathbf{a} \times \mathbf{b} = \begin{bmatrix} 2 \\ 7 \\ 1 \end{bmatrix} \times \begin{bmatrix} 8 \\ 2 \\ 8 \end{bmatrix} = \begin{bmatrix} 54 \\ -8 \\ -52 \end{bmatrix}. a×b= 271 × 828 = 54852 .

  2. 计算叉积的模长:
    ∣ a × b ∣ = 5 4 2 + ( − 8 ) 2 + ( − 52 ) 2 = 2916 + 64 + 2704 = 5684 . |\mathbf{a} \times \mathbf{b}| = \sqrt{54^2 + (-8)^2 + (-52)^2} = \sqrt{2916 + 64 + 2704} = \sqrt{5684}. a×b=542+(8)2+(52)2 =2916+64+2704 =5684 .

  3. 三角形的面积为平行四边形面积的一半:
    三角形面积 = 1 2 ∣ a × b ∣ . \text{三角形面积} = \frac{1}{2} |\mathbf{a} \times \mathbf{b}|. 三角形面积=21a×b∣.


对比点积与叉积

特性点积 (Dot Product)叉积 (Cross Product)
结果类型标量(数值)向量(有大小和方向)
输入维度适用于任意维度向量仅适用于三维向量
几何意义反映两个向量的夹角关系反映两个向量张成的平面的法向方向
公式 a ⋅ b = ∣ a ∣ ∣ b ∣ cos ⁡ θ a \cdot b = |a| |b| \cos \theta ab=a∣∣bcosθ a × b = ∣ a ∣ ∣ b ∣ sin ⁡ θ a \times b = |a| |b| \sin \theta a×b=a∣∣bsinθ
直观作用两个向量在同一方向上的投影关系(相互对齐)两个向量张成平面的垂直方向
结果是否为零两个向量正交时点积为 0两个向量平行时叉积为 0

小结:点积与叉积的结合

  • 点积描述两个向量的投影关系,是“线性重叠”的量度。

  • 叉积描述两个向量的垂直关系,是“法向特性”的体现。

  • 点积反映两个向量“对齐”的程度, ∣ a ∣ ∣ b ∣ cos ⁡ θ |a||b| \cos\theta a∣∣bcosθ

  • 叉积反映两个向量“垂直张成”的面积, ∣ a ∣ ∣ b ∣ sin ⁡ θ |a||b| \sin\theta a∣∣bsinθ

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/61416.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

OpenCV从入门到精通实战(九)——基于dlib的疲劳监测 ear计算

本文实现Python库d和OpenCV来实现眼部闭合检测,主要用于评估用户是否眨眼。 步骤一:导入必要的库和设置参数 首先,代码导入了必要的Python库,如dlib、OpenCV和scipy。通过argparse设置了输入视频和面部标记预测器的参数。 from…

后端开发详细学习框架与路线

🚀 作者 :“码上有前” 🚀 文章简介 :后端开发 🚀 欢迎小伙伴们 点赞👍、收藏⭐、留言💬 为帮助你合理安排时间,以下是结合上述学习内容的阶段划分与时间分配建议。时间安排灵活&a…

如何在 Ubuntu 上安装 Mosquitto MQTT 代理

如何在 Ubuntu 上安装 Mosquitto MQTT 代理 Mosquitto 是一个开源的消息代理,实现了消息队列遥测传输 (MQTT) 协议。在 Ubuntu 22.04 上安装 MQTT 代理,您可以利用 MQTT 轻量级的 TCP/IP 消息平台,该平台专为资源有限的物联网 (IoT) 设备设计…

Webserver回顾

线程池如何工作? 从请求队列中取出request请求,然后process处理 process是处理业务代码,用于解析http请求的 如何为线程上锁 由于线程共享同一块资源,为了避免线程重复读写资源的数据安全问题 发什么信号 定义信号 信号量如…

实验室资源调度系统:基于Spring Boot的创新

2相关技术 2.1 MYSQL数据库 MySQL是一个真正的多用户、多线程SQL数据库服务器。 是基于SQL的客户/服务器模式的关系数据库管理系统,它的有点有有功能强大、使用简单、管理方便、安全可靠性高、运行速度快、多线程、跨平台性、完全网络化、稳定性等,非常…

STM32与CS创世SD NAND(贴片SD卡)结合完成FATFS文件系统移植与测试是一个涉及硬件与软件综合应用的复杂过程

一、前言 在STM32项目开发中,经常会用到存储芯片存储数据。 比如:关机时保存机器运行过程中的状态数据,上电再从存储芯片里读取数据恢复;在存储芯片里也会存放很多资源文件。比如,开机音乐,界面上的菜单图…

【在Linux世界中追寻伟大的One Piece】手写序列化与反序列化

目录 1 -> 序列化与反序列化概念 2 -> 序列化与反序列化作用和应用场景 3 -> 手写序列化与反序列化 1 -> 序列化与反序列化概念 序列化是指将对象的状态信息转换为可以存储或传输的形式的过程,通常涉及将数据结构或对象转换成字节流或字符串格式。反…

uniapp自动注册机制:easycom

传统 Vue 项目中,我们需要注册、导入组件之后才能使用组件。 uniapp 框架提供了一种组件自动注册机制,只要你在 components 文件夹下新建的组件满足 /components/组件名/组件名.vue 的命名规范,就能直接使用。 注意:组件的文件夹…

springboot基于微信小程序的停车场管理系统

摘 要 停车场管理系统是一种基于移动端的应用程序,旨在方便车主停车的事务办理。该小程序提供了便捷的停车和功能,使车主能够快速完成各项必要的手续和信息填写。旨在提供一种便捷、高效的预约停车方式,减少停车手续的时间和精力成本。通过该…

AI技术在电商行业的创新应用与未来发展

✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…

.NET9 - 新功能体验(一)

被微软形容为“迄今为止最高效、最现代、最安全、最智能、性能最高的.NET版本”——.NET 9已经发布有一周了,今天想和大家一起体验一下新功能。 此次.NET 9在性能、安全性和功能等方面进行了大量改进,包含了数千项的修改,今天主要和大家一起体…

【Oracle篇】SQL性能优化实战案例(从15秒优化到0.08秒)(第七篇,总共七篇)

💫《博主介绍》:✨又是一天没白过,我是奈斯,DBA一名✨ 💫《擅长领域》:✌️擅长Oracle、MySQL、SQLserver、阿里云AnalyticDB for MySQL(分布式数据仓库)、Linux,也在扩展大数据方向的知识面✌️…

神经网络入门实战:(一)神经网络解决的两种问题,以及AI、机器学习、深度学习三者之间的逻辑关系

AI、机器学习、深度学习三者之间的逻辑关系: 两种问题 (1)回归问题 回归问题是指预测一个或多个连续值的任务。这些连续值可以是任意实数,比如价格、温度、分数等。 回归问题的目标通常是 找到一个函数 ,该函数可以…

深入解析TK技术下视频音频不同步的成因与解决方案

随着互联网和数字视频技术的飞速发展,音视频同步问题逐渐成为网络视频播放、直播、编辑等过程中不可忽视的技术难题。尤其是在采用TK(Transmission Keying)技术进行视频传输时,由于其特殊的时序同步要求,音视频不同步现…

豆包MarsCode算法题:最小周长巧克力板组合

问题描述 思路分析 这道题可以抽象为一个最优化问题: 问题分析 每个正方形的面积为 k ,对应的边长为 k ,周长为 4k 。给定整数 n ,我们需要找到若干正方形,使得它们的面积之和恰好等于 n: 同时尽量最小…

解析与修复vcruntime140_1.dll问题,总结四种vcruntime140_1.dll解决方法

在使用Windows系统的过程中,不少用户可能会遇到与vcruntime140_1.dll相关的问题。这个看似神秘的文件,其实在很多软件的运行中扮演着至关重要的角色。今天的这篇文章将教大家四种vcruntime140_1.dll解决方法。 一、vcruntime140_1.dll文件分析 &#xf…

WebGL进阶(九)光线

理论基础: 点光源 符合向量定义,末减初。 平行光 环境光 效果: 点光源 平行光 环境光 源码: 点光源 平行光 环境光 复盘:

【Amazon】亚马逊云科技Amazon DynamoDB 实践Amazon DynamoDB

Amazon DynamoDB 是一种完全托管的 NoSQL 数据库服务,专为高性能和可扩展性设计,特别适合需要快速响应和高吞吐量的应用场景,如移动应用、游戏、物联网和实时分析等。 工作原理 Amazon DynamoDB 在任何规模下响应时间一律达毫秒级&#xff…

【AIGC】ChatGPT提示词Prompt解析:拒绝的艺术:如何优雅地说“不“

引言 在人际交往的复杂网络中,学会优雅地拒绝是一种至关重要的社交智慧。很多人往往因为害怕伤害他人的感受,而选择敷衍、拖延或不置可否。 然而,真正的智慧在于如何用尊重和同理心传达"不"的信息。 本文将深入探讨优雅拒绝的艺术,帮助你在维护自身边界的同时,…

Java项目实战II基于微信小程序的农场驿站平台(开发文档+数据库+源码)

目录 一、前言 二、技术介绍 三、系统实现 四、文档参考 五、核心代码 六、源码获取 全栈码农以及毕业设计实战开发,CSDN平台Java领域新星创作者,专注于大学生项目实战开发、讲解和毕业答疑辅导。获取源码联系方式请查看文末 一、前言 随着移动互…