Produit vectoriel (cross product)

Formule

Le produit vectoriel de deux vecteurs est un vecteur perpendiculaire au plan formé par les deux vecteurs. Le produit vectoriel de \(\vec{V}\) et \(\vec{U}\) peut être calculé grâce à la formule suivante :

$$ \vec{V} \times \vec{U} = \left ( \begin{matrix} V_y.U_z - V_z.U_y \\ V_z.U_x - V_x.U_z \\ V_x.U_y - V_y.U_x \end{matrix} \right ) $$

Propriétés

Properties
Si \(\vec{V}\) et \(\vec{U}\) sont collinéaires, \(\vec{V} \times \vec{U}\) est un vecteur nul.
Si \(\vec{V}\) est nul, \(\vec{V} \times \vec{U}\) est un vecteur nul.
Si \(\vec{U}\) est nul, \(\vec{V} \times \vec{U}\) est un vecteur nul.
\(\vec{V} \times \vec{U}\) est normal au plan formé par les vecteurs \(\vec{V}\) and \(\vec{U}\).
\(\vec{V} \times \vec{U}=-(\vec{U} \times \vec{V}) = (-\vec{U}) \times \vec{V}\).

Code source C++

/*!
 * \brief   Compute the cross product of two vectors (this x V)
 *          The current vector is the first operand
 * \param   V is the second operand
 * \return  a vector = the cross product of the current vector by V
 */
inline rOc_vector rOc_vector::cross(const rOc_vector V)
{
    rOc_vector Res;
    Res.x()=this->y()*V.z() - this->z()*V.y();
    Res.y()=this->z()*V.x() - this->x()*V.z();
    Res.z()=this->x()*V.y() - this->y()*V.x();
    return Res;
}

Voir aussi


Dernière mise à jour : 11/06/2018