Un vecteur contravariant est un vecteur, un vecteur covariant est une forme linéaire, encore appelé covecteur, ou encore vecteur dual[Information douteuse]. Et si on dispose d'un produit scalaire, on peut représenter une forme linéaire (= un vecteur covariant = un covecteur) par un vecteur à l'aide du théorème de représentation de Riesz (cette représentation dépend du choix du produit scalaire).
Toutes ces notions sont indépendantes de représentation dans une base : mais à partir du moment où on choisit une base
, la représentation des composantes des vecteurs, et des composantes des formes linéaires, est standard : elle se fait avec un indice en haut pour les composantes des vecteurs, comme
, et un indice bas pour les composantes des formes linéaires, comme
où
est la base duale.
Ce vocabulaire a été longtemps (et est encore souvent) associé au comportement des composantes lors d'un changement de base, en particulier les composantes d'un vecteur se transformant de manière inverse aux transformations des vecteurs de base : quand la transformation pour les vecteurs de base se lit matriciellement
, alors la transformation pour les composantes se lit matriciellement
, d'où le nom "contravariant" donné aux vecteurs (transformation "dans le sens inverse de
"). Et les composantes des formes linéaires se transforment comme
(transformation "dans le sens
").
L'importance de la distinction entre vecteur covariant et contravariant se voit également dans l'étude de changement de base des tenseurs. Par exemple un tenseur 1 fois covariant et 1 fois contravariant (comme en endomorphisme) se transforme comme
, alors qu'un tenseur deux fois covariant (comme un produit scalaire) se transforme comme
. Dans le cadre usuel d'un changement de systèmes de coordonnées (non orthonormé), comme un changement du système cartésien au système polaire, on ne peut confondre ces formules.
On confond souvent tenseur et calcul tensoriel ou matriciel (le calcul avec les formes multilinéaires), calculs indispensables entre autres en physique. Cependant, le calcul matriciel se concentre sur les calculs après représentation dans une base (où on retrouve la représentation en indices et en exposants), alors que les tenseurs, ou les champs de tenseurs (ici les champs de vecteurs et de formes linéaires), permettent une représentation par objets qui ont une existence indépendamment d'un "utilisateur" (indépendamment du choix d'une base ou du choix d'un produit scalaire). Ces tenseurs permettent, lorsqu'on fait un calcul tensoriel, d'être assuré que ce calcul est intrinsèque (résultat numérique indépendant de l'utilisateur). C'est un des apports essentiels de la géométrie différentielle à la physique.
Les expressions vecteur contravariant et vecteur covariant semblent être utilisées l'une pour l'autre
suivant les origines scientifiques. Citons par exemple Spivak, A Comprehensive Introduction to Differential Geometry, Volume 1, 3rd edition, p. 113 :
"...Classical terminology used these same words, and it just happens to have reversed this... And no one has had the gall or authority to reverse terminology so sanctified by years of usage...".
On adopte l'approche géométrie différentielle, où en particulier une forme linéaire est appelée un vecteur covariant (ou covecteur, ou vecteur dual). Après avoir rappelé les définitions, on se donnera une base, on en déduira la base duale, et retrouvera la représentation d'un vecteur et d'une forme linéaire (un vecteur covariant) à l'aide de leurs composantes.
On s'intéresse ici aux espaces vectoriels de dimension finie. On notera
un espace vectoriel de dimension
.
Un vecteur est un élément d'un espace vectoriel
, par exemple
, ou
l'espace des fonctions affines par morceaux, ou
l'espace des fonctions d'énergie finie (espace des fonctions de carré intégrable).
Un vecteur est également appelé un vecteur contravariant, en référence au comportement de ses coordonnées dans une base.
Une forme linéaire sur
est une application linéaire
à valeurs dans un corps commutatif
. Dans la suite
. On note
l'ensemble des formes linéaires sur
, appelé le dual de
.
est un espace vectoriel dont les éléments (qui sont donc des vecteurs) sont appelés vecteurs covariants (ou vecteurs duaux, ou covecteurs) : ils covarient avec les vecteurs de
au sens où ils agissent sur les vecteurs.
Ainsi un covecteur (une forme linéaire)
agit sur un vecteur
pour donner le réel
.
Interprétation : une forme linéaire
est un "instrument de mesure" qui donne une valeur
aux objets "les vecteurs"
.
N.B. : un vecteur et une forme linéaire ont une existence par eux-mêmes (ils sont intrinsèques) : ils ne nécessitent ni l'introduction d'une base ni l'introduction d'un produit scalaire (qui dépendent du choix d'un "utilisateur"). Les vecteurs et formes linéaires sont les exemples les plus simples de tenseurs.
N.B. : plus loin on représentera une forme linéaire par un "vecteur de représentation" (théorème de représentation de Riesz), sous la condition essentielle de disposer d'un nouvel outil : un produit scalaire (le choix d'un tel outil dépend d'un "utilisateur"). Et il n'y a rien de "naturel" dans le choix d'un tel "vecteur de représentation". Ici le mot "naturel" a un sens mathématique précis : il signifie qu'il n'y a pas d'isomorphisme canonique entre
et
(un isomorphisme entre
et
existe mais nécessite l'introduction d'un nouvel outil comme un produit scalaire).
N.B. : il n'y a pas d'ambiguïté sur ce qu'est un vecteur covariant : c'est une forme linéaire sur
, c'est-à-dire un élément de
(c'est un tenseur covariant). On lève les ambiguïtés sur ce qu'est un vecteur contravariant (par rapport à un vecteur) en commençant par considérer les formes linéaires sur
,
c'est-à-dire
le bidual (c'est l'ensemble
des tenseurs contravariants
l'espace des dérivations directionnelles). Puis, par isomorphisme canonique (en dimension finie), on identifie
(l'ensemble des vecteurs
) et son bidual
(l'ensemble des dérivations dans les directions de vecteurs
). Cet isomorphisme permet de rebaptiser un vecteur contravariant en vecteur, et, de même, de rebaptiser un vecteur en un vecteur contravariant.
Soit
vecteurs
de
formant une base. On définit la forme linéaire
(vecteur covariant) comme étant la projection
sur la direction
parallèlement aux autres directions :
étant le symbole de Kronecker.
Les
formes linéaires
forment une base de
(vérification simple)
appelée la base duale de la base
. La base duale
est donc constituée des formes linéaires de projection définies ci-dessus.
Si
, les réels
vérifiant
sont appelés les composantes de
dans la base
.
Connaissant la base
, on calcule la base duale
, et les composantes du vecteur
sont calculées en appliquant les projections
sur
: par linéarité de
on a
la i-ème composante de
(valeur de la projection de
sur
parallèlement aux autres directions).
Donner une "valeur" à un objet, comme la taille d'un homme, la masse, la température..., n'a de sens que relativement à un "objet de référence". C'est donc définir une fonction
qui à l'objet
associe la valeur
, où la fonction
est construite à l'aide de l'objet de référence. Ici on souhaite donner une taille "proportionnelle", et on choisit donc une fonction
linéaire.
Modélisation en une dimension : l'objet de référence (dont la valeur sera par exemple le pied anglais Pied (unité) est représenté par un vecteur
. Lui attribuer la dimension 1 c'est prendre la fonction linéaire
définie par
. La fonction
est alors notée
.
Ainsi si un homme est modélisé par un vecteur
alors sa taille est donnée par
en unités de
. Autrement dit, ayant posé
(décomposition sur la base
), sa taille est donnée (en unités de
) par
la composante de
sur la base.
Ainsi un homme de 6 pieds fait référence à l'objet de référence "le pied anglais", et donc ici
avec
en pieds. Si on préfère utiliser les mètres, on prend l'objet `mètre étalon' qu'on modélise par un vecteur
, on prend la forme linéaire
qui vérifie
, et la taille de l'homme en mètres est la valeur
en mètres, composante de
sur la base
.
Modélisation en n dimensions : la i-ème composante sur la base donne `la taille le long du i-ème vecteur de base'.
Donnons l'exemple usuel en aviation. Pour fixer les idées considérons un aéroport qui a deux pistes d'atterrissages, une dirigée Nord, et l'autre dirigée Nord-Ouest. Les dimensions internationales en aviation sont le mille nautique ou mille marin (Nautical Mile NM) pour les distances horizontales et le pied anglais (foot ft) pour les distances verticales. Le contrôleur aérien, qui veut connaître la position des avions en approche, demande au pilote son altitude et sa distance à l'aéroport. Le repère le plus simple pour le contrôleur est
où O est la position de la tour de contrôle, et, par exemple,
indique le nord et modélise un objet de longueur 1 NM,
indique le nord-ouest et modélise un objet de longueur 1 NM, et
indique la verticale et modélise un objet de 1 ft. Ainsi, un avion est repéré par sa position
dans le référentiel
du contrôleur.
À partir de cette base, on définit la base duale
où
est la forme linéaire donnée par
,
,
(une forme linéaire est définie par ses valeurs sur les vecteurs de base), de même pour
et
(avec
). Si on veut connaître l'altitude de l'avion (en pieds), on calcule
(la troisième composante), valeur en pieds anglais. Et comme ce n'est que l'altitude qui nous intéressait, on a choisi la forme linéaire
, car elle s'annule sur l'espace engendré par
et
(son noyau) et vaut 1 sur
. Et si l'avion arrive par la piste nord et qu'on souhaite connaître son éloignement, on calcule
(la première composante), valeur en NM. Et on vérifie qu'il n'arrive pas par la piste nord-ouest car dans notre cas
(la deuxième composante).
N.B. : on peut également se servir d'un produit scalaire pour définir une dimension. Un produit scalaire
étant une forme bilinéaire, un produit scalaire est entièrement déterminé par ses valeurs sur les vecteurs de base, c'est-à-dire par les réels
notés usuellement
. Ainsi
s'écrit
. Et donc on se sert explicitement de la base duale
qui justement sert à donner la "taille" 1 aux objets modélisés par les vecteurs
.
Autrement dit, la représentation d'un produit scalaire dans une base nécessite au préalable la définition de la base duale
.
Soit
une « ancienne » base
et
une « nouvelle » base de
.
On notera
et
les bases duales respectives.
A
fixé, soit
les composantes de
dans la base
,
soit génériquement
La matrice
stocke dans sa colonne
les composantes de
dans la base
:
c'est la matrice de changement de base dite matrice de passage.
Et la matrice
est la matrice de passage de la nouvelle base vers l'ancienne :
En effet
. Ainsi
stocke dans sa colonne
les composantes de
dans la base
.
Soit
, et soit :
où donc
et
sont les matrices colonnes stockant les composantes de
sur ces bases.
(Un vecteur est représenté dans une base par une matrice colonne.)
Un calcul simple donne
(on applique les formes linéaires
de la base duale de
à l'égalité ci-dessus) :
.
Donc les nouvelles coordonnées varient en fonction de
, inverse de
, d'où le nom contravariant (les composantes se transforment « dans le sens contraire » au sens de la base).
Soit
et soit
ses composantes dans la base duale
, c-à-d
Les composantes
sont calculées en appliquant les vecteurs
: par linéarité de
on a
la j-ème composante de
.
On représente une forme linéaire dans une base à l'aide d'une matrice ligne, soit avec les notations ci-dessus
. On dispose ainsi des règles usuelles du calcul matriciel :
Voir la convention d'Einstein ci-dessous.
Soit
, et soit :
où donc
et
sont les composantes de
sur les bases duales.
(Une forme linéaire est représentée dans une base par une matrice ligne.)
Un calcul simple
(on calcule les
à l'aide de l'égalité ci-dessus)
donne :
.
D'où le nom (vecteur) covariant donné aux formes linéaires
(les composantes se transforment "dans le même sens" que la base).
On vérifie immédiatement avec ces formules de changement de base que la quantité
ne dépend pas de la base,
car
(matrice identité) : la valeur
ne dépend pas du choix de la base : on a bien :
.
La différence de sens est visible si on utilise les notations génériques :
où
matrice inverse. La première égalité donne
(on est ici dans le cadre des changements de coordonnées cartésiens,
cas où les vecteurs de base ne dépendent pas de
),
d'où la notation générique :
N.B. : il se trouve que pour un changement de bases orthonormées, on a
(matrice transposée), et qu'alors les règles de changement de bases sont les mêmes...
à la transposition près (matrices lignes transformées en matrices colonnes).
C'est bien sûr faux si le changement de base n'est pas orthonormé.
Et indépendamment des règles de changement de base, les physiciens sont très attachés au caractère "covariant" (l'instrument de mesure) ou "contravariant" (l'objet à mesurer).
Pour "représenter" une forme linéaire par un vecteur, on introduit un nouvel outil : un produit scalaire sur
noté ici
(une forme bilinéaire symétrique définie positive). L'existence et l'unicité d'un vecteur de représentation est alors donné par le théorème de représentation de Riesz :
si
est une forme linéaire continue sur
, espace de Hilbert
pour le produit scalaire
, alors :
,
où
est le vecteur représentant
au travers du produit scalaire
.
(En dimension finie les formes linéaires sont toutes continues, et les espaces vectoriels munis d'un produit scalaire sont tous des espaces de Hilbert ; c'est faux en dimension infinie.) Un intérêt essentiel de cette représentation vectorielle d'une forme linéaire est la représentation graphique.
Définition : le vecteur
est appelé le vecteur de représentation de
pour le produit scalaire
.
Une base
étant fixée, le produit scalaire
étant fixé,
on note
la matrice du produit scalaire. Comme
est un produit scalaire, il est bilinéaire, et donc, en notant
et
, on a
.
Si
et
, où donc
et
sont les matrices des composantes de
et de
, par définition du vecteur de représentation
de
, la définition
donne la relation matricielle
pour tout
. Donc :
Soit explicitement :
où par définition on a noté
.
Le "vecteur covariant" (la forme linéaire) a ses composantes qui suivent les règles de changement
de base des formes linéaires, alors que le vecteur de représentation
représentant
, après choix d'un produit scalaire, a ses composantes qui suivent les règles de changement de base des vecteurs :
.
En effet, relativement aux bases "old" et "new" les relations entre
et
sont
et
.
Donc avec les règles de changement de bases des formes linéaires, soit
, et des formes bilinéaires, soit
(facile à vérifier), on obtient :
.
Les règles de changement de base pour
sont bien contravariantes.
Exemple : soit
et son produit scalaire canonique (euclidien) :
si
et
sont deux vecteurs exprimés dans la base canonique, ce produit scalaire est donné par
.
Soit alors la forme linéaire
donnée par
.
On représente la forme linéaire
par la matrice ligne
, et le résultat
est donné par le produit matriciel usuel.
On a également
, où le vecteur de représentation
est, comme tout vecteur, représenté par une matrice colonne
.
Et trivialement, pour le produit scalaire euclidien, on a
.
Ici l'utilisation du produit scalaire euclidien dans la base euclidienne rend les calculs immédiats avec :
Représentation graphique : le vecteur
est orthogonal (relativement au produit scalaire euclidien) à la droite d'équation
. Autrement dit le noyau
de la forme linéaire est l'ensemble des vecteurs orthogonaux à
.
Noter l'incohérence de la position des indices et exposants (voir la convention d'Einstein plus loin). La cohérence est retrouvée en appliquant la formule
sachant qu'ici
.
Exemple bis : soit
mais qu'on munit du produit scalaire de matrice
relativement à la base canonique :
c'est typiquement le cas lors de la résolution d'un problème matriciel par la méthode
du gradient conjugué, ou encore de l'analyse d'image (exemple : un cercle est dessiné au sol,
mais vu de loin vu d'un avion il ressemble à une ellipse de petit axe ici deux fois plus petit que le grand axe).
Dans ce cas, si
alors
.
Soit
une application
au voisinage d'un point
.
La différentielle de
en ce point est la forme linéaire
vérifiant
(développement limité au premier ordre), dans un voisinage de
,
pour tout vecteur
:
,
et on note généralement
.
Si on dispose, en plus, d'un produit scalaire
sur
,
on définit alors le vecteur gradient
de
en
comme étant le vecteur de représentation de la différentielle
relativement au produit scalaire.
Donc par définition, pour tout vecteur
:
.
Exemple : le gradient d'une fonction
en un point
est le vecteur de représentation relativement au produit scalaire euclidien donné en coordonnées polaires par :
.
Calcul
Réponse condensée.
On donne ici une démarche générique permettant de trouver l'expression du gradient dans tout système de coordonnées.
1- Soit
le système de coordonnées polaires (le vecteur
est le vecteur des coordonnées paramétriques et
le vecteur
est le vecteur des coordonnées géométriques).
Soit
la base canonique de
.
La base du système polaire en un point géométrique
est par définition
où
la matrice colonne représentant les composantes de
dans la base canonique de l'espace géométrique, et
(Dessin : en
on dessine le vecteur
: c'est un vecteur "radial" unitaire.
Et on dessine le vecteur
: c'est un vecteur orthogonal au précédent
de longueur
.)
2- La base duale du système en
est la base
(ce sont effectivement les différentielles usuelles des fonctions
et
composantes de
).
3- Soit une fonction
définie sur l'espace géométrique : elle est de type
.
De manière générique, étant donné une base
de base duale associée
, sa différentielle s'exprime donc comme :
où, par définition des notations :
est la dérivée suivant le premier vecteur de base du système polaire, et de même
est la dérivée suivant le deuxième vecteur de base du système polaire.
N.B. : c'est bien une définition de notations car
est une fonction qui dépend de
et non de
. Plus précisément
où
est la fonction définie par
quand
, c'est-à-dire de
.
Par dérivation de fonctions composées,
on obtient
, ou dans la notation habituelle de la linéarité
, et donc
,
et de même
.
Et comme
est l'expression
de la différentielle
dans la base
duale de la base canonique de l'espace paramétrique (le nom des variables est
et
dans l'espace de définition de
),
on écrit
à l'aide des définitions ci-dessus.
Cela a le sens :
,
la base
étant en
la base duale de la base
du système de coordonnées en
(espace géométrique).
4- Par définition du gradient, le produit scalaire étant ici le produit scalaire canonique, on a (théorème de représentation de Riesz)
pour tout vecteur
.
Notant
les composantes de
dans la base du système polaire, c'est-à-dire
, puis prenant successivement
puis
, on obtient
puis
, soit donc
et
puisque
.
Et donc
.
5- La base du système de coordonnées polaires n'est pas la base polaire choisie par les mécaniciens : ils lui préfèrent
la base orthonormée
où
et
.
D'où
,
expression usuelle du gradient en "coordonnées polaires", ou bien, si on préfère (sans abus de notation),
,
où on a posé
quand
.
6- Exemple :
quand
(avec donc
et
). Ici
et donc
![{\displaystyle {\begin{pmatrix}{\partial F \over \partial r}({\vec {q}})\\{1 \over r}\,{\partial F \over \partial \theta }({\vec {q}})\end{pmatrix}}={\begin{pmatrix}\tan \theta \\1+\tan ^{2}\theta \end{pmatrix}}={\vec {\nabla }}f({\vec {x}})}](https://wikimedia.org/api/rest_v1/media/math/render/svg/30fe62626072c5bcd748cbdadcf2f98be97623ea)
, au point
![{\displaystyle {\vec {x}}=(r\,\cos \theta ,r\,\sin \theta )}](https://wikimedia.org/api/rest_v1/media/math/render/svg/c4cd72d75d6d47ea3d5e64f992125d288a5c1b74)
, dans la base polaire
![{\displaystyle ({\vec {e}}_{\rho }({\vec {x}}),{\vec {e}}_{\theta }({\vec {x}}))}](https://wikimedia.org/api/rest_v1/media/math/render/svg/7a67fad750d1268f649f3881d9638379b353213e)
des mécaniciens.
En mécanique l'effort nécessaire pour déplacer un objet ponctuel
est modélisé par le travail
.
Ce travail est une forme linéaire (fonction linéaire des déplacements), et cette
forme linéaire est représentée par un vecteur force
(vecteur de représentation supposant implicitement l'emploi du produit scalaire euclidien) :
,
où
est un vecteur déplacement.
Si on dispose de
objets ponctuels, chacun pouvant être déplacé de
,
la linéarité du travail s'exprime :
,
les vecteurs
permettant de représenter le travail.
Et si on dispose d'un milieu continu déformable, la somme
s'écrit
et le travail s'exprime :
,
où ici
est par exemple l'ensemble des fonctions de carré intégrable,
auquel cas
.
Dans ce dernier cas,
est une fonction à valeurs vectorielles représentant
grâce à l'utilisation du produit scalaire de
.
Les composantes d'un vecteur (contravariant) sont notées avec des exposants, comme dans
,
alors que les composantes d'un vecteur covariant
(une forme linéaire dans la base duale) sont notées avec des indices, comme dans
. Rappelons (voir plus haut) que le calcul de ces composantes ne nécessite pas l'utilisation d'un produit scalaire, mais juste d'une base et de sa base duale.
Cette convention, dite d'Einstein, va d'ailleurs plus loin : écrire
signifie
: la sommation est sous-entendue.
On ne peut pas se retrouver avec des produits de type
,
car cela voudrait dire que l'on aurait utilisé implicitement un produit scalaire (lequel ?), or, dans la convention d'Einstein, un produit scalaire doit être exprimé explicitement .
Dans le cas des surfaces (ou plus généralement des variétés), les bases usuelles ne sont pas orthonormées (notion qui dépend d'un produit scalaire) : ce sont des bases
d'un système de coordonnées, bases qui varient avec le point où on se trouve.
Si on introduit un produit scalaire (plus généralement une métrique), le produit scalaire en un point est par exemple noté
et est représenté par sa matrice dans cette base. Cette matrice est souvent notée
, où donc
(produit scalaire en un point de deux vecteurs de base).
Ainsi le passage `covariant'
`covecteur contravariant' est explicite et non ambigu avec la convention d'Einstein :
et la relation entre les composantes covariantes
et les composantes
(du vecteur
représentant
) est explicite :
avec cohérence des positions des indices et exposants et visibilité du produit scalaire. De même
.