Personnaliser les préférences

Nous utilisons des cookies pour vous aider à naviguer efficacement et à exécuter certaines fonctions. Vous trouverez ci-dessous des informations détaillées sur tous les cookies sous chaque catégorie de consentement.

Les cookies classés comme « Nécessaires » sont stockés sur votre navigateur car ils sont essentiels pour activer les fonctionnalités de base du site.... 

Toujours actif

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

Aucun cookie à afficher.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

Aucun cookie à afficher.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

Aucun cookie à afficher.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

Aucun cookie à afficher.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

Aucun cookie à afficher.

Comment calculer un produit croisé dans R



En supposant que nous ayons le vecteur A avec des éléments (A 1 , A 2 , A 3 ) et un vecteur B avec des éléments (B 1 , B 2 , B 3 ), nous pouvons calculer le produit vectoriel de ces deux vecteurs comme suit :

Produit croisé = [(A 2 *B 3 ) – (A 3 *B 2 ), (A 3 *B 1 ) – (A 1 *B 3 ), (A 1 *B 2 ) – (A 2 *B 1 )]

Par exemple, supposons que nous ayons les vecteurs suivants :

  • Vecteur A : (1, 2, 3)
  • Vecteur B : (4, 5, 6)

Nous pourrions calculer le produit vectoriel de ces vecteurs comme suit :

  • Produit croisé = [(A 2 *B 3 ) – (A 3 *B 2 ), (A 3 *B 1 ) – (A 1 *B 3 ), (A 1 *B 2 ) – (A 2 *B 1 )]
  • Produit croisé = [(2*6) – (3*5), (3*4) – (1*6), (1*5) – (2*4)]
  • Produit croisé = (-3, 6, -3)

Vous pouvez utiliser l’une des deux méthodes suivantes pour calculer le produit vectoriel de deux vecteurs dans R :

Méthode 1 : utiliser la fonction cross() du package pracma

library(pracma)
  
#calculate cross product of vectors A and B
cross(A, B)

Méthode 2 : définissez votre propre fonction

#define function to calculate cross product 
cross <- function(x, y, i=1:3) {
  create3D <- function(x) head(c(x, rep(0, 3)), 3)
  x <- create3D(x)
  y <- create3D(y)
  j <- function(i) (i-1) %% 3+1
  return (x[j(i+1)]*y[j(i+2)] - x[j(i+2)]*y[j(i+1)])
}

#calculate cross product
cross(A, B)

Les exemples suivants montrent comment utiliser chaque méthode dans la pratique.

Exemple 1 : Utiliser la fonction cross() du package pracma

Le code suivant montre comment utiliser la fonction cross() du package pracma pour calculer le produit vectoriel entre deux vecteurs :

library(pracma)
  
#define vectors
A <- c(1, 2, 3)
B <- c(4, 5, 6)
  
#calculate cross product
cross(A, B)

[1] -3  6 -3

Le produit vectoriel s’avère être (-3, 6, -3) .

Cela correspond au produit croisé que nous avons calculé manuellement plus tôt.

Exemple 2 : définissez votre propre fonction

Le code suivant montre comment définir votre propre fonction pour calculer le produit vectoriel entre deux vecteurs :

#define function to calculate cross product 
cross <- function(x, y, i=1:3) {
  create3D <- function(x) head(c(x, rep(0, 3)), 3)
  x <- create3D(x)
  y <- create3D(y)
  j <- function(i) (i-1) %% 3+1
  return (x[j(i+1)]*y[j(i+2)] - x[j(i+2)]*y[j(i+1)])
}

#define vectors
A <- c(1, 2, 3)
B <- c(4, 5, 6)

#calculate cross product
cross(A, B)

[1] -3 6 -3

Le produit vectoriel s’avère être (-3, 6, -3) .

Cela correspond au produit vectoriel que nous avons calculé dans l’exemple précédent.

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans R :

Comment calculer le produit scalaire dans R
Comment créer la matrice d’identité dans R
Comment créer une matrice vide dans R

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *