|
|
(未显示11个用户的13个中间版本) |
第1行: |
第1行: |
|
{{NoteTA |
|
{{NoteTA |
|
|G1=Math |
|
|G1=Math |
|
|T=zh-hans:数量积;zh-hant:內積; |
|
|T=zh-hans:点积;zh-hant:內積; |
|
|1=zh-hans:数量积;zh-hant:內積; |
|
|1=zh-hans:点积;zh-hant:內積; |
|
}} |
|
}} |
|
|
|
|
|
{{dablink|“内积”重定向至此,关于[[外代数]]上的内积,参见[[内乘]]。}} |
|
{{dablink|本文介绍向量的标量积。关于其他常称作'''内积'''的相关二元运算,参见[[内积]]。}} |
|
{{Unreferenced|time=2013-12-13T11:16:08+00:00}} |
|
{{Unreferenced|time=2013-12-13T11:16:08+00:00}} |
|
{{Linear algebra}} |
|
{{Linear algebra}} |
|
|
|
|
|
在[[数学]]中,'''点积'''({{lang-de|Skalarprodukt}};{{lang-en|Dot Product}})又称'''-{zh-hans:数量积;zh-hant:數量積}-'''或'''标量积'''({{lang-de|Skalarprodukt}};{{lang-en|Scalar Product}}),是一种接受两个等长的数字序列(通常是[[坐标]][[向量]])、返回单个数字的[[代数]][[运算]]。在[[欧几里得几何]]中,两个[[笛卡尔坐标系|笛卡尔坐标]]向量的点积常称为'''-{zh-hans:内积;zh-hant:內積}-'''({{lang-de|inneres Produkt}};{{lang-en|Inner Product}}),见[[内积空间]]。 |
|
在[[数学]]中,'''点积'''({{lang-de|Punktprodukt}};{{lang-en|dot product}})又称'''-{zh-hans:数量积;zh-hant:數量積}-'''或'''标量积'''({{lang-de|Skalarprodukt}};{{lang-en|scalar product}}),是一种接受两串等长的数字序列(通常是[[坐标]][[向量]])、返回单一数字的[[代数]][[运算]]。<ref>同济大学数学系 .工程数学:线性代数(第六版).高等教育出版社.2014</ref> |
|
|
|
|
|
|
在[[欧几里得几何]]里,两條[[笛卡尔坐标系|笛卡尔坐标]]向量的点积常称为'''-{zh-hans:内积;zh-hant:內積}-'''({{lang-de|inneres Produkt}};{{lang-en|inner product}})。點积是'''-{zh-hans:内积;zh-hant:內積}-'''的一种特殊形式:内积是点积的抽象,內积是一种双线性函数,点积是欧几里得空间([[内积空间]])的度量。 |
⚫ |
从代数角度看,先 对两 个数字序列中 的每组对应元素 求[[积]],再 对所有积 求和,结果即为点积。从几何角度看,点积则是两 个[[向量 ]]的[[向量#大小|长度]]与它们夹角[[余弦]]的积。这两种定义在笛卡尔坐标系中等价。 |
|
|
|
|
|
|
⚫ |
从代数角度看,先 求两数字序列中每组对应元素 的[[积]],再 求所有积 之和,结果即为点积。从几何角度看,点积则是两向量的[[向量#大小|长度]]与它们夹角[[余弦]]的积。这两种定义在笛卡尔坐标系中等价。 |
⚫ |
'''点积'''的名称源自表示点乘运算的[[⋅|点号]](<math>a\cdot b</math>),讀作< math>a \ dot \ b</ math>,'''标量积'''的叫法则是在强调其运算结果为[[标量]]而非[[向量]]。向量的另一种乘法是'''[[叉积|叉乘]]'''(<math>a \times b </math>),其结果为向量,称为'''叉积'''或'''向量积'''。 |
|
|
|
|
|
|
⚫ |
'''点积'''的名称源自表示点乘运算的[[⋅|点号]](<math> \mathbf a \cdot \mathbf b</math>),讀作< code>a dot b</ code>,'''标量积'''的叫法则是在强调其运算结果为[[ 标量 (数学)|标量]]而非[[向量]]。向量的另一种乘法是'''[[叉积|叉乘]]'''(<math> \mathbf a \times \mathbf b</math>), 讀作<code>a cross b</code>,其结果为向量,称为''' [[叉积 ]]'''或'''向量积'''。 |
|
點积是'''-{zh-hans:内积;zh-hant:內積}-'''(内积是点积的抽象,內积是一种双线性函数,点积是欧几里得空间(实内积空间)的度量)的一种特殊形式。 |
|
|
|
|
|
|
==定义== |
|
==定义== |
|
点积有两种定义方式:代数方式和几何方式。通过在[[欧几里得空间|欧氏空间中]]引入[[笛卡尔坐标系]],向量之间的'''点积'''既可以由向量坐标的代数运算得出,也可以通过引入两个向量的'''长度'''和'''角度'''等几何概念来求解。 |
|
点积有两种定义方式:代数方式和几何方式。通过在[[欧几里得空间|欧氏空间中]]引入[[笛卡尔坐标系]],向量间的'''点积'''既可以由向量坐标的代数运算得出,也可以通过引入两向量的'''长度'''和'''角度'''等几何概念来求解。 |
|
|
|
|
|
===代数定义=== |
|
===代数定义=== |
|
|
|
|
|
两个向量<math>\vec{a}=[a_1, a_2, \cdots, a_n]</math>和<math>\vec{b}=[b_1, b_2, \cdots, b_n]</math>的点积定义为:
|
|
向量<math>\vec{a}=[a_1, a_2, \cdots, a_n]</math>和<math>\vec{b}=[b_1, b_2, \cdots, b_n]</math>的点积定义为: |
|
:<math>\vec{a}\cdot \vec{b} = \sum_{i=1}^n a_ib_i = a_1b_1 + a_2b_2 + \cdots + a_nb_n </math> |
|
:<math>\vec{a}\cdot \vec{b} = \sum_{i=1}^n a_ib_i = a_1b_1 + a_2b_2 + \cdots + a_nb_n </math> |
|
这裡的Σ是[[求和符号]],而''n''是[[向量空間]]的維數。 |
|
这裡的Σ是[[求和符号]],而''n''是[[向量空間]]的[[維度]]。 |
|
|
|
|
|
例如,两个三维向量<math>\left [ 1,3,-5 \right ]</math>和<math>\left [ 4,-2,-1 \right ]</math>的点积是 |
|
例如,三维向量<math>\left [ 1,3,-5 \right ]</math>和<math>\left [ 4,-2,-1 \right ]</math>的点积是 |
|
|
|
|
|
:<math> |
|
:<math> |
第40行: |
第40行: |
|
:<math>\vec{a} \cdot \vec{b} = \vec{a}\vec{b}^T</math>。 |
|
:<math>\vec{a} \cdot \vec{b} = \vec{a}\vec{b}^T</math>。 |
|
|
|
|
|
这裡,<math>\vec{b}^T</math>是行向量<math>\vec{b}</math>的[[转置矩阵|转置]]。 |
|
这裡,<math>\vec{b}^T</math>是列向量<math>\vec{b}</math>的[[转置矩阵|转置]]。 |
|
|
|
|
|
使用上面的例子,一个1×3矩阵([[行向量]])乘以一个3×1矩阵([[列向量]])的行列式就是结果(通过矩阵乘法得到1×1矩陣): |
|
使用上面的例子,1×3矩阵([[列向量]])乘以3×1矩阵([[行向量]])的行列式就是结果(通过矩阵乘法得到1×1矩陣): |
|
|
|
|
|
:<math> |
|
:<math> |
第56行: |
第56行: |
|
|
|
|
|
===几何定义=== |
|
===几何定义=== |
|
在[[欧几里得空间]]中,点积可以直观地定义为 |
|
在[[欧几里得空间]]中,点积可直观定义为 |
|
:<math> \vec{a} \cdot \vec{b} = |\vec{a}| \, |\vec{b}| \cos \theta \;</math> |
|
:<math> \vec{a} \cdot \vec{b} = |\vec{a}| \, |\vec{b}| \cos \theta \;</math> |
|
这里 |<math>\vec{x}</math>| 表示<math>\vec{x}</math>的[[模长|模]](长度),<math>\theta</math>表示两个向量之间的[[角度]]。 |
|
这里 |<math>\vec{x}</math>| 表示<math>\vec{x}</math>的[[模长|模]](长度),<math>\theta</math>表示向量间的[[角度]]。 |
|
|
|
|
|
'''注意''':[[内积空间|点积的形式定义]]和这个定义不同;在形式定义中,<math>\vec{a}</math>和<math>\vec{b}</math>的夹角是通过上述等式定义的。 |
|
'''注意''':[[内积空间|点积的形式定义]]和这定义不同;在形式定义,<math>\vec{a}</math>和<math>\vec{b}</math>的夹角用上述等式定义。 |
|
|
|
|
|
这样,两个互相垂直的向量的点积总是零。若<math>\vec{a}</math>和<math>\vec{b}</math>都是[[单位向量]](长度为1),它们的点积就是它们的夹角的[[余弦]]。那么,给定两个向量,它们之间的夹角可以通过下列公式得到: |
|
这样,互相垂直的两條向量的点积总是零。若<math>\vec{a}</math>和<math>\vec{b}</math>都是[[单位向量]](长度为1),它们的点积就是它们的夹角的[[余弦]]。那么,给定两條向量,它们之间的夹角可以以下公式得到: |
|
:<math> \cos{\theta} = \frac{\mathbf{a \cdot b}}{|\vec{a}| \, |\vec{b}|} </math> |
|
:<math> \cos{\theta} = \frac{\mathbf{a \cdot b}}{|\vec{a}| \, |\vec{b}|} </math> |
|
这个运算可以简单地理解为:在点积运算中,第一个向量投影到第二个向量上(这裡,向量的顺序是不重要的,点积运算是可交换的),然后通过除以它们的标量长度来“标准化”。这样,这个分数一定是小于等于1的,可以简单地转化成一个角度值。 |
|
这个运算可以简单地理解为:在点积运算中,第一向量投影到第二向量上(向量顺序这裡在不重要,点积运算可交换),然后通过除以它们的标量长度来“标准化”。这样,这分数一定是小于等于1的,可以简单转化成角度值。 |
|
|
|
|
|
===标量投影=== |
|
===标量投影=== |
|
[[File:Scalarproduct.gif|thumb|200px|'''A'''·'''B''' = <nowiki>|</nowiki>'''A'''<nowiki>|</nowiki> <nowiki>|</nowiki>'''B'''<nowiki>|</nowiki> cos(θ). <br /><nowiki>|</nowiki>'''A'''<nowiki>|</nowiki> cos(θ)是'''A'''到'''B'''的投影。]] |
|
[[File:Scalarproduct.gif|thumb|200px|'''A'''·'''B''' = <nowiki>|</nowiki>'''A'''<nowiki>|</nowiki> <nowiki>|</nowiki>'''B'''<nowiki>|</nowiki> cos(θ). <br /><nowiki>|</nowiki>'''A'''<nowiki>|</nowiki> cos(θ)是'''A'''到'''B'''的投影。]] |
|
欧氏空间中向量<math>\mathbf A</math>在向量<math>\mathbf B</math>上的[[scalar projection|标量投影]]是指 |
|
欧氏空间中向量<math>\mathbf A</math>在向量<math>\mathbf B</math>上的[[scalar projection|标量投影]]是指對於向量B來說向量A的垂直度到向量B的代表長度 |
|
:<math>A_B=|\mathbf A|\cos\theta</math> |
|
:<math>A_B=|\mathbf A|\cos\theta</math> |
|
|
|
|
|
这里<math>\theta</math>是'''<math>\mathbf A</math>'''和'''<math>\mathbf B</math>'''的夹角。从点积的几何定义<math>\mathbf A\cdot\mathbf B=|\mathbf{A}||\mathbf{B}|\cos\theta</math>不难得出,两个向量的点积:<math>\mathbf A\cdot\mathbf B</math>可以理解为向量<math>\mathbf A</math>在向量<math>\mathbf B</math>上的投影再乘以<math>\mathbf B</math>的长度。 |
|
这里<math>\theta</math>是'''<math>\mathbf A</math>'''和'''<math>\mathbf B</math>'''的夹角。从点积的几何定义<math>\mathbf A\cdot\mathbf B=|\mathbf{A}||\mathbf{B}|\cos\theta</math>不难得出,两向量的点积:<math>\mathbf A\cdot\mathbf B</math>可以理解为向量<math>\mathbf A</math>在向量<math>\mathbf B</math>上的投影再乘以<math>\mathbf B</math>的长度。 |
|
|
|
|
|
:<math>\mathbf A\cdot\mathbf B = A_B|\mathbf{B}|=B_A|\mathbf{A}|</math> |
|
:<math>\mathbf A\cdot\mathbf B = A_B|\mathbf{B}|=B_A|\mathbf{A}|</math> |
第87行: |
第87行: |
|
</math> |
|
</math> |
|
|
|
|
|
上文中已经得知两个向量点积的几何定义实际上就是一个向量在另外一个向量上的投影,故<math>\mathbf A</math>在任一标准基<math>e_n</math>的点积<math>\mathbf A\cdot\mathbf e_i</math>就是<math>\mathbf A</math>在此标准基向量上的投影,而根据向量自身的定义,这个投影即为<math>a_i</math>。因此: |
|
上文中已经得知两條向量点积的几何定义实际上就是一條向量在另外一條向量上的投影,故<math>\mathbf A</math>在任一标准基<math>e_n</math>的点积<math>\mathbf A\cdot\mathbf e_i</math>就是<math>\mathbf A</math>在此标准基向量上的投影,而根据向量自身的定义,这个投影即为<math>a_i</math>。因此: |
|
|
|
|
|
:<math>\mathbf A\cdot\mathbf B = \mathbf A\cdot\sum_i b_i\mathbf e_i = \sum_i b_i(\mathbf A\cdot\mathbf e_i) = \sum_i b_ia_i</math> |
|
:<math>\mathbf A\cdot\mathbf B = \mathbf A\cdot\sum_i b_i\mathbf e_i = \sum_i b_i(\mathbf A\cdot\mathbf e_i) = \sum_i b_ia_i</math> |
第106行: |
第106行: |
|
; '''引理1''':<math> \vec{v} \cdot \vec{v} = |\vec{v}|^2 \; </math> |
|
; '''引理1''':<math> \vec{v} \cdot \vec{v} = |\vec{v}|^2 \; </math> |
|
|
|
|
|
现在,考虑两个从原点出发的向量<math>\vec{a}</math>和<math>\vec{b}</math>,夹角<math>\theta</math>。第三个向量<math>\vec{c}</math>定义为 |
|
现在,考虑从原点出发的两條向量<math>\vec{a}</math>和<math>\vec{b}</math>,夹角<math>\theta</math>。第三條向量<math>\vec{c}</math>定义为 |
|
:<math> \vec{c} \equiv \vec{a} - \vec{b} \;</math>, |
|
:<math> \vec{c} \equiv \vec{a} - \vec{b} \;</math>, |
|
构造以<math>\vec{a}</math>,<math>\vec{b}</math>,<math>\vec{c}</math>为边的三角形,采用[[余弦定理]],有 |
|
构造以<math>\vec{a}</math>,<math>\vec{b}</math>,<math>\vec{c}</math>为边的三角形,采用[[余弦定理]],有 |
第142行: |
第142行: |
|
== 性质 == |
|
== 性质 == |
|
|
|
|
|
点积具有以下性质。 |
|
点积有以下性质。 |
|
|
|
|
|
* 满足[[交换律]]: |
|
* 满足[[交换律]]: |
第169行: |
第169行: |
|
:如果<math>\vec{a}</math>垂直于<math>\left ( \vec{b}-\vec{c} \right )</math>,则<math>\left ( \vec{b}-\vec{c} \right )</math>可能<math>\neq 0</math>,因而<math>\vec{b}</math>可能<math>\neq\vec{c}</math>;否则<math>\vec{b}=\vec{c}</math>。 |
|
:如果<math>\vec{a}</math>垂直于<math>\left ( \vec{b}-\vec{c} \right )</math>,则<math>\left ( \vec{b}-\vec{c} \right )</math>可能<math>\neq 0</math>,因而<math>\vec{b}</math>可能<math>\neq\vec{c}</math>;否则<math>\vec{b}=\vec{c}</math>。 |
|
|
|
|
|
==推广== |
|
==延伸== |
|
|
|
|
|
===矩阵=== |
|
===矩阵=== |
第183行: |
第183行: |
|
[[物理学]]中[[力学]]的力做功的问题,经常用到点积计算。 |
|
[[物理学]]中[[力学]]的力做功的问题,经常用到点积计算。 |
|
|
|
|
|
[[计算机图形学]]常用来进行方向性判断,如两向量点积大于0,则它们的方向朝向相近;如果小于0,则方向相反。 |
|
[[计算机图形学]]常用来判断方向,如两向量点积大于0,则它们的方向朝向相近;如果小于0,则方向相反。 |
|
|
|
|
|
向量内积是[[人工智能]]领域中的[[人工神经网络|神经网络]]技术的数学基础之一。 |
|
向量内积是[[人工智能]]领域中的[[人工神经网络|神经网络]]技术的数学基础之一。 |
|
|
|
|
|
此方法被用于[[动画渲染]](Animation-Rendering)。 |
|
此方法用于[[动画渲染]](Animation-Rendering)。 |
|
|
|
|
|
==广义定义== |
|
==广义定义== |
|
在一个[[向量空间]]<math>V</math>中,定義在<math>V\times V</math>上的'''正定对称双线性形式'''函數即是<math>V</math>的內積,而添加有一个数量积的向量空间即是[[内积空间]]。 |
|
在[[向量空间]]<math>V</math>中,定義在<math>V\times V</math>上的'''正定对称双线性形式'''函數即是<math>V</math>的內積,而添加有数量积的向量空间即是[[内积空间]]。 |
|
|
|
|
|
== 参见 == |
|
== 参见 == |
|
* [[向量积]] |
|
* [[向量积]] |
|
|
|
|
|
|
== 参考文献 == |
|
|
{{reflist}} |
|
|
|
|
|
{{线性代数的相关概念}} |
|
|
|
|
|
[[Category:向量]] |
|
[[Category:向量]] |
本文介绍向量的标量积。关于其他常称作
内积的相关二元运算,参见
内积。
线性代数
|
|
向量 · 向量空间 · 基底 · 行列式 · 矩阵
|
|
|
在数学中,点积(德語:Punktprodukt;英語:dot product)又称数量积或标量积(德語:Skalarprodukt;英語:scalar product),是一种接受两串等长的数字序列(通常是坐标向量)、返回单一数字的代数运算。[1]
在欧几里得几何里,两條笛卡尔坐标向量的点积常称为内积(德語:inneres Produkt;英語:inner product)。點积是内积的一种特殊形式:内积是点积的抽象,內积是一种双线性函数,点积是欧几里得空间(内积空间)的度量。
从代数角度看,先求两数字序列中每组对应元素的积,再求所有积之和,结果即为点积。从几何角度看,点积则是两向量的长度与它们夹角余弦的积。这两种定义在笛卡尔坐标系中等价。
点积的名称源自表示点乘运算的点号(),讀作a dot b
,标量积的叫法则是在强调其运算结果为标量而非向量。向量的另一种乘法是叉乘(),讀作a cross b
,其结果为向量,称为叉积或向量积。
点积有两种定义方式:代数方式和几何方式。通过在欧氏空间中引入笛卡尔坐标系,向量间的点积既可以由向量坐标的代数运算得出,也可以通过引入两向量的长度和角度等几何概念来求解。
向量和的点积定义为:
这裡的Σ是求和符号,而n是向量空間的維度。
例如,三维向量和的点积是
点积还可以写为:
- 。
这裡,是列向量的转置。
使用上面的例子,1×3矩阵(列向量)乘以3×1矩阵(行向量)的行列式就是结果(通过矩阵乘法得到1×1矩陣):
- 。
在欧几里得空间中,点积可直观定义为
这里 || 表示的模(长度),表示向量间的角度。
注意:点积的形式定义和这定义不同;在形式定义,和的夹角用上述等式定义。
这样,互相垂直的两條向量的点积总是零。若和都是单位向量(长度为1),它们的点积就是它们的夹角的余弦。那么,给定两條向量,它们之间的夹角可以以下公式得到:
这个运算可以简单地理解为:在点积运算中,第一向量投影到第二向量上(向量顺序这裡在不重要,点积运算可交换),然后通过除以它们的标量长度来“标准化”。这样,这分数一定是小于等于1的,可以简单转化成角度值。
欧氏空间中向量在向量上的标量投影是指對於向量B來說向量A的垂直度到向量B的代表長度
这里是和的夹角。从点积的几何定义不难得出,两向量的点积:可以理解为向量在向量上的投影再乘以的长度。
点积的两种定义中,只需给定一种定义,另外一种定义就可以推出。
设是空间的一组标准正交基,可以得出:
上文中已经得知两條向量点积的几何定义实际上就是一條向量在另外一條向量上的投影,故在任一标准基的点积就是在此标准基向量上的投影,而根据向量自身的定义,这个投影即为。因此:
应用余弦定理。
注意:这个证明采用三维向量,但可以推广到维的情形。
考虑向量
- .
重復使用勾股定理得到
- .
而由代数定义
- ,
所以,根据向量点积的代数定义,向量和自身的点积就是其长度的平方。
- 引理1
现在,考虑从原点出发的两條向量和,夹角。第三條向量定义为
- ,
构造以,,为边的三角形,采用余弦定理,有
- .
根据引理1,用点积代替向量长度的平方,有
- . (1)
同时,根据定义 ≡ - ,有
- ,
根据分配律,得
- . (2)
连接等式(1)和(2)有
- .
简化等式即得
- ,
以上即为向量点积的几何定义。
需要注意的是,点积的几何解释通常只适用于 ()。在高维空间,其他的域或模中,点积只有一个定义,那就是
点积可以用来计算合力和功。若为单向量,则点积即为在方向的投影,即给出了力在这个方向上的分解。功即是力和位移的点积。
点积有以下性质。
- 满足交换律:
- ,
- 从定义即可证明( 为与的夹角):
- 对向量加法满足分配律:
- 点积是双线性算子:
- 在乘以标量时满足:
- 不满足结合律。因为标量()与向量()的点积没有定义,所以结合律相关的表达式 和 都没有良好的定义
- 两个非零向量和是正交的,当且仅当
如果是单位向量,则点积给出在方向上投影的大小,如果方向相反则带有负号。分解向量对求向量的和经常是有用的,比如在力学中计算合力。
不像普通数的乘法服从消去律,如果,则总是等于,除非等于零。而对于点积:
- 如果并且:
- 则根据分配律可以得出:;进而:
- 如果垂直于,则可能,因而可能;否则。
矩阵具有弗罗比尼乌斯内积,可以类比于向量的内积。它被定义为两个相同大小的矩阵A和B的对应元素的内积之和。
复矩阵情况下:
实矩阵情况下:
物理学中力学的力做功的问题,经常用到点积计算。
计算机图形学常用来判断方向,如两向量点积大于0,则它们的方向朝向相近;如果小于0,则方向相反。
向量内积是人工智能领域中的神经网络技术的数学基础之一。
此方法用于动画渲染(Animation-Rendering)。
在向量空间中,定義在上的正定对称双线性形式函數即是的內積,而添加有数量积的向量空间即是内积空间。
- ^ 同济大学数学系 .工程数学:线性代数(第六版).高等教育出版社.2014