首页 | 主题 | 图库 | 问答 | 文摘 | 原创 | 百科

历史 | 地理 | 人物 | 艺术 | 体育 | 科学 | 音乐 | 电影 | 信息技术 | 世界遗产

 开放、中立,源自维基百科

Personal tools

Dot product

From Wikipedia, the free encyclopedia

Jump to: navigation, search

In mathematics, the dot product, also known as the scalar product, is an operation which takes two vectors over the real numbers R and returns a real-valued scalar quantity. It is the standard inner product of the Euclidean space.

Contents

Definition and examples

The dot product of two vectors (from an orthonormal vector space) a = [a1, a2, … , an] and b = [b1, b2, … , bn] is by definition:

Failed to parse (Missing texvc executable; please see math/README to configure.): \mathbf{a}\cdot \mathbf{b} = \sum_{i=1}^n a_ib_i = a_1b_1 + a_2b_2 + \cdots + a_nb_n

where Σ denotes summation notation.

For example, the dot product of two three-dimensional vectors [1, 3, −5] and [4, −2, −1] is

Failed to parse (Missing texvc executable; please see math/README to configure.): \begin{bmatrix}1&3&-5\end{bmatrix} \cdot \begin{bmatrix}4&-2&-1\end{bmatrix} = (1)(4) + (3)(-2) + (-5)(-1) = 3.


Using matrix multiplication and treating the (column) vectors as n×1 matrices, the dot product can also be written as:

Failed to parse (Missing texvc executable; please see math/README to configure.): \mathbf{a} \cdot \mathbf{b} = \mathbf{a}^T \mathbf{b} \,


where aT denotes the transpose of the matrix a.

Using the example from above, this would result in a 1×3 matrix (i.e., vector) multiplied by a 3×1 vector (which, by virtue of the matrix multiplication, results in a 1×1 matrix, i.e., a scalar):

Failed to parse (Missing texvc executable; please see math/README to configure.): \begin{bmatrix} 1&3&-5 \end{bmatrix}\begin{bmatrix} 4\\-2\\-1 \end{bmatrix} = \begin{bmatrix} 3 \end{bmatrix}.


For two complex vectors the dot product is defined as

Failed to parse (Missing texvc executable; please see math/README to configure.): \mathbf{a}\cdot \mathbf{b} = \sum{a_i \overline{b_i}}

where

Failed to parse (Missing texvc executable; please see math/README to configure.): \overline{b_i}

is the complex conjugate of Failed to parse (Missing texvc executable; please see math/README to configure.): b_i .

Geometric interpretation

|A|•cos(θ) is the scalar projection of A onto B
|A|•cos(θ) is the scalar projection of A onto B

In Euclidean geometry, the dot product, length, and angle are related: For a vector a, aa is the square of its length, and, more generally, if b is another vector

Failed to parse (Missing texvc executable; please see math/README to configure.): \mathbf{a} \cdot \mathbf{b} = |\mathbf{a}| \, |\mathbf{b}| \cos \theta \,


where

|a| and |b| denote the length (magnitude) of a and b
θ is the angle between them.

Since |a|cos(θ) is the scalar projection of a onto b, the dot product can be understood geometrically as the product of the length of this projection and the length of b.

As the cosine of 90° is zero, the dot product of two perpendicular vectors is always zero. If a and b have length one (i.e. they are unit vectors), the dot product simply gives the cosine of the angle between them. Thus, given two vectors, the angle between them can be found by rearranging the above formula:

Failed to parse (Missing texvc executable; please see math/README to configure.): \theta = \arccos \left( \frac {\bold{a}\cdot\bold{b}} {|\bold{a}||\bold{b}|}\right).


Sometimes these properties are also used for defining the dot product, especially in 2 and 3 dimensions; this definition is equivalent to the above one. For higher dimensions the formula can be used to define the concept of angle.

The geometric properties rely on the basis of vectors being perpendicular and having unit length. Either we start with such a basis, or we use an arbitrary basis and define length and angle (including perpendicularity) with the above.

As the geometric interpretation shows, the dot product is invariant under isometric changes of the basis: rotations, reflections, and combinations, keeping the origin fixed.

In other words, and more generally for any n, the dot product is invariant under a coordinate transformation based on an orthogonal matrix. This corresponds to the following two conditions:

  • the new basis is again orthonormal (i.e., it is orthonormal expressed in the old one)
  • the new base vectors have the same length as the old ones (i.e., unit length in terms of the old basis)

The dot product in physics

In physics, magnitude is a scalar in the physical sense, i.e. a physical quantity independent of the coordinate system, expressed as the product of a numerical value and a physical unit, not just a number. The dot product is also a scalar in this sense, given by the formula, independent of the coordinate system. The formula in terms of coordinates is evaluated with not just numbers, but numbers times units. Therefore, although it relies on the basis being orthonormal, it does not depend on scaling.

Example:

Properties

The following properties hold if a, b, and c are vectors and r is a scalar.

The dot product is commutative:

Failed to parse (Missing texvc executable; please see math/README to configure.): \mathbf{a} \cdot \mathbf{b} = \mathbf{b} \cdot \mathbf{a}.


The dot product is distributive over vector addition:

Failed to parse (Missing texvc executable; please see math/README to configure.): \mathbf{a} \cdot (\mathbf{b} + \mathbf{c}) = \mathbf{a} \cdot \mathbf{b} + \mathbf{a} \cdot \mathbf{c}.


The dot product is bilinear:

Failed to parse (Missing texvc executable; please see math/README to configure.): \mathbf{a} \cdot (r\mathbf{b} + \mathbf{c}) = r(\mathbf{a} \cdot \mathbf{b}) +(\mathbf{a} \cdot \mathbf{c}).


When multiplied by a scalar value, dot product satisfies:

Failed to parse (Missing texvc executable; please see math/README to configure.): (c_1\mathbf{a}) \cdot (c_2\mathbf{b}) = (c_1c_2) (\mathbf{a} \cdot \mathbf{b})

(these last two properties follow from the first two).

Two non-zero vectors a and b are perpendicular if and only if ab = 0.

If b is a unit vector, then the dot product gives the magnitude of the projection of a in the direction b, with a minus sign if the direction is opposite. Decomposing vectors is often useful for conveniently adding them, e.g. in the calculation of net force in mechanics.

Unlike multiplication of ordinary numbers, where if ab = ac, then b always equals c unless a is zero, the dot product does not obey the cancellation law:

If ab = ac and a0:
then we can write: a • (b - c) = 0 by the distributive law; and from the previous result above:
If a is perpendicular to (b - c), we can have (b - c) ≠ 0 and therefore bc.

Triple product expansion

Main article: Triple product

This is a very useful identity (also known as Lagrange's formula) involving the dot- and cross-products. It is written as

a × (b × c) = b(a · c) − c(a · b),

which is easier to remember as “BAC minus CAB”, keeping in mind which vectors are dotted together. This formula is commonly used to simplify vector calculations in physics.

Derivatives

If a and b are functions, then the derivative of ab is a'b + ab'.

Matrix representation

An inner product can be represented as a matrix. For example, given two vectors

Failed to parse (Missing texvc executable; please see math/README to configure.): \mathbf{a} = \begin{bmatrix} a_u \\ a_v \\ a_w \end{bmatrix}, \qquad \mathbf{b} = \begin{bmatrix} b_u \\ b_v \\ b_w \end{bmatrix}


with respect to the basis set Failed to parse (Missing texvc executable; please see math/README to configure.): \mathrm{S}


Failed to parse (Missing texvc executable; please see math/README to configure.): \mathrm{S} = \{ \mathbf{u}, \mathbf{v} ,\mathbf{w} \} = \left\{ \begin{bmatrix} u_1 \\ u_2 \\ u_3 \end{bmatrix}, \begin{bmatrix} v_1 \\ v_2 \\ v_3 \end{bmatrix}, \begin{bmatrix} w_1 \\ w_2 \\ w_3 \end{bmatrix} \right\}


any inner product can be represented as follows:

Failed to parse (Missing texvc executable; please see math/README to configure.): \langle \mathbf{a}\, , \mathbf{b} \rangle = \mathbf{a}^T \cdot \mathbf{M} \cdot \mathbf{b}


where M is the 3x3 matrix representation of the inner product. Given the matrix of the inner product through S called Failed to parse (Missing texvc executable; please see math/README to configure.): \mathbf{C}_S , M can be calculated by solving the following system of equations.

Failed to parse (Missing texvc executable; please see math/README to configure.): \mathbf{C}_S = \begin{bmatrix} \langle \mathbf{u,u} \rangle & \langle \mathbf{u,v} \rangle & \langle \mathbf{u,w} \rangle \\ \langle \mathbf{v,u} \rangle & \langle \mathbf{v,v} \rangle & \langle \mathbf{v,w} \rangle \\ \langle \mathbf{w,u} \rangle & \langle \mathbf{w,v} \rangle & \langle \mathbf{w,w} \rangle \end{bmatrix} = \begin{bmatrix} \mathbf{u}^T \cdot \mathbf{M} \cdot \mathbf{u} & \mathbf{u}^T \cdot \mathbf{M} \cdot \mathbf{v} & \mathbf{u}^T \cdot \mathbf{M} \cdot \mathbf{w} \\ \mathbf{v}^T \cdot \mathbf{M} \cdot \mathbf{u} & \mathbf{v}^T \cdot \mathbf{M} \cdot \mathbf{v} & \mathbf{v}^T \cdot \mathbf{M} \cdot \mathbf{w} \\ \mathbf{w}^T \cdot \mathbf{M} \cdot \mathbf{u} & \mathbf{w}^T \cdot \mathbf{M} \cdot \mathbf{v} & \mathbf{w}^T \cdot \mathbf{M} \cdot \mathbf{w} \end{bmatrix}


Example

Given a basis set

Failed to parse (Missing texvc executable; please see math/README to configure.): \mathrm{S} = \{ \mathbf{u}, \mathbf{v} ,\mathbf{w} \} = \left\{ \begin{bmatrix} 1 \\ 0 \\ 0 \end{bmatrix}, \begin{bmatrix} 1 \\ 1 \\ 0 \end{bmatrix}, \begin{bmatrix} 1 \\ 1 \\ 1 \end{bmatrix} \right\}


and a matrix of the inner product through Failed to parse (Missing texvc executable; please see math/README to configure.): \mathrm{S}


Failed to parse (Missing texvc executable; please see math/README to configure.): \mathbf{C}_S = \begin{bmatrix} 5 & 2 & 0 \\ 2 & 6 & 2 \\ 0 & 2 & 7 \end{bmatrix}


we can set each element of CS equal to the inner product of two of the basis vectors as follows

Failed to parse (Missing texvc executable; please see math/README to configure.): \mathbf{C}_S[i,j] = \langle \mathrm{S}[i],\mathrm{S}[j] \rangle


Failed to parse (Missing texvc executable; please see math/README to configure.): \mathbf{C}_S[0,0] = 5 = \langle \mathbf{u,u} \rangle = \begin{bmatrix} 1 & 0 & 0 \end{bmatrix} \cdot \mathrm{M} \cdot \begin{bmatrix} 1 \\ 0 \\ 0 \end{bmatrix}


Failed to parse (Missing texvc executable; please see math/README to configure.): \mathbf{C}_S[0,1] = 2 = \langle \mathbf{u,v} \rangle = \begin{bmatrix} 1 & 0 & 0 \end{bmatrix} \cdot \mathrm{M} \cdot \begin{bmatrix} 1 \\ 1 \\ 0 \end{bmatrix}
Failed to parse (Missing texvc executable; please see math/README to configure.): \cdots


which gives nine equations and nine unknowns. Solving these equations yields

Failed to parse (Missing texvc executable; please see math/README to configure.): \mathbf{M} = \begin{bmatrix} 5 & -3 & -2 \\ -3 & 7 & -2 \\ -2 & -2 & 9 \end{bmatrix}


Generalization

The inner product generalizes the dot product to abstract vector spaces and is normally denoted by <a , b>. Due to the geometric interpretation of the dot product the norm ||a|| of a vector a in such an inner product space is defined as

Failed to parse (Missing texvc executable; please see math/README to configure.): \|\mathbf{a}\| = \sqrt{\langle\mathbf{a}\, , \mathbf{a}\rangle}


such that it generalizes length, and the angle θ between two vectors a and b by

Failed to parse (Missing texvc executable; please see math/README to configure.): \cos{\theta} = \frac{\langle\mathbf{a}\, , \mathbf{b}\rangle}{\|\mathbf{a}\| \, \|\mathbf{b}\|}.


In particular, two vectors are considered orthogonal if their dot product is zero

Failed to parse (Missing texvc executable; please see math/README to configure.): \mathbf{a} \cdot \mathbf{b} = 0.


The Frobenius inner product defines an inner product on matrices as though they are two vectors, summing up the products of corresponding components.

Proof of the geometric interpretation

Note: This proof is shown for 3-dimensional vectors, but is readily extendable to n-dimensional vectors.

Consider a vector

Failed to parse (Missing texvc executable; please see math/README to configure.): \mathbf{v} = v_1 \mathbf{i} + v_2 \mathbf{j} + v_3 \mathbf{k}. \,

Repeated application of the Pythagorean theorem yields for its length v

Failed to parse (Missing texvc executable; please see math/README to configure.): v^2 = v_1^2 + v_2^2 + v_3^2. \,

But this is the same as

Failed to parse (Missing texvc executable; please see math/README to configure.): \mathbf{v} \cdot \mathbf{v} = v_1^2 + v_2^2 + v_3^2, \,

so we conclude that taking the dot product of a vector v with itself yields the squared length of the vector.

Lemma 1
Failed to parse (Missing texvc executable; please see math/README to configure.): \mathbf{v} \cdot \mathbf{v} = v^2. \,


Now consider two vectors a and b extending from the origin, separated by an angle θ. A third vector c may be defined as

Failed to parse (Missing texvc executable; please see math/README to configure.): \mathbf{c} \ \stackrel{\mathrm{def}}{=}\ \mathbf{a} - \mathbf{b}. \,

creating a triangle with sides a, b, and c. According to the law of cosines, we have

Failed to parse (Missing texvc executable; please see math/README to configure.): c^2 = a^2 + b^2 - 2 ab \cos \theta. \,

Substituting dot products for the squared lengths according to Lemma 1, we get

Failed to parse (Missing texvc executable; please see math/README to configure.): \mathbf{c} \cdot \mathbf{c} = \mathbf{a} \cdot \mathbf{a} + \mathbf{b} \cdot \mathbf{b} - 2 ab \cos\theta. \,
                  (1)

But as cab, we also have

Failed to parse (Missing texvc executable; please see math/README to configure.): \mathbf{c} \cdot \mathbf{c} = (\mathbf{a} - \mathbf{b}) \cdot (\mathbf{a} - \mathbf{b}) \,

, which, according to the distributive law, expands to

Failed to parse (Missing texvc executable; please see math/README to configure.): \mathbf{c} \cdot \mathbf{c} = \mathbf{a} \cdot \mathbf{a} + \mathbf{b} \cdot \mathbf{b} -2(\mathbf{a} \cdot \mathbf{b}). \,
                    (2)

Merging the two cc equations, (1) and (2), we obtain

Failed to parse (Missing texvc executable; please see math/README to configure.): \mathbf{a} \cdot \mathbf{a} + \mathbf{b} \cdot \mathbf{b} -2(\mathbf{a} \cdot \mathbf{b}) = \mathbf{a} \cdot \mathbf{a} + \mathbf{b} \cdot \mathbf{b} - 2 ab \cos\theta. \,

Subtracting aa + bb from both sides and dividing by −2 leaves

Failed to parse (Missing texvc executable; please see math/README to configure.): \mathbf{a} \cdot \mathbf{b} = ab \cos\theta. \,

Q.E.D.

See also

External links

cs:Skalární součin da:Skalarprodukt de:Skalarprodukt es:Producto escalar fr:Produit scalaire he:מכפלה סקלרית hu:Skaláris szorzat it:Prodotto scalare ko:내적 lt:Skaliarinė sandauga nl:Inwendig product ja:ドット積 pl:Iloczyn skalarny pt:Produto escalar ru:Скалярное произведение sl:Skalarni produkt sv:Inre produktrum th:ผลคูณจุด

Languages
AD Links