Produit scalaire (dot product)

Formule

Le produit scalaire de deux vecteurs (à ne pas confondre avec le produit vectoriel) est le produit des longueurs des deux vecteurs multiplié par le cosinus de l’angle formé par les vecteurs. Le produit scalaire des vecteurs \(\vec{V}\) et \(\vec{U}\) peut être calculé grâce à la formule suivante:

$$ \vec{V} \cdot \vec{U} = V_x.U_x + V_y.U_y + V_z.U_z = | \vec{V} |. | \vec{U} | .cos (\theta) $$

où \(\theta\) est l’angle formé par les vecteurs \(\vec{V}\) et \(\vec{U}\).

Propriétés

Si \(\vec{V}\) et \(\vec{U}\) sont hortogonaux, \(\vec{V} \cdot \vec{U}\) est égal à zéro.
Si \(\vec{V}\) est nul, \(\vec{V} \cdot \vec{U}\) est égal à zéro.
Si \(\vec{U}\) est nul, \(\vec{V} \cdot \vec{U}\) est égal à zéro.
\(\vec{V} \cdot \vec{V} = | \vec{V} | ^2\)
\(\vec{V} \cdot \vec{U} = \vec{U} \cdot \vec{V}\)
\(\vec{V} \cdot (-\vec{U}) = (-\vec{V}) \cdot \vec{U} = - ( \vec{V} \cdot \vec{U} )\)

Code source C++

La fonction C++ ci-dessous retourne le produit scalaire de deux vecteurs :

/*!
 * \brief   Compute the dot product of two vectors (this . V)
 *          The current vector is the first operand
 * \param   V is the second operand
 * \return  the dot product between the current vector and V
 */
inline double rOc_vector::dot(const rOc_vector V)
{
    return this->x()*V.x() + this->y()*V.y() + this->z()*V.z();
}

Produit scalaire sous MATLAB

Avec MATLAB, le produit scalaire peut facilement être calculé avec la fonction dot(A, B) :

>> u=[1,2,3];
>> v=[4,5,6];
>> dot (u,v)

ans =

    32

Voir aussi


Dernière mise à jour : 13/03/2022