Article de reference

Notation d'index

En mathématiques et en programmation informatique , la notation indicielle sert à désigner les éléments d'un tableau de nombres. Le formalisme de cette utilisation varie selon l...

En mathématiques et en programmation informatique , la notation indicielle sert à désigner les éléments d'un tableau de nombres. Le formalisme de cette utilisation varie selon le contexte. En particulier, différentes méthodes permettent de faire référence aux éléments d'une liste, d'un vecteur ou d'une matrice , selon qu'il s'agisse d'un article mathématique destiné à la publication ou d'un programme informatique .

En mathématiques

Tableaux unidimensionnels (vecteurs)

La notation indicielle permet d'indiquer les éléments du tableau en écrivant simplement a<sub> i</sub> , où l'indice i varie de 1 à n , du fait de la présence de n dimensions. Par exemple, étant donné le vecteur :

alors certaines entrées sont

Cette notation peut être appliquée aux vecteurs en mathématiques et en physique . L' équation vectorielle suivante

peut également s'écrire en fonction des éléments du vecteur (ou composantes), c'est-à-dire

où les indices prennent une plage de valeurs donnée. Cette expression représente un ensemble d'équations, une pour chaque indice. Si les vecteurs ont chacun n éléments, c'est-à-dire i = 1, 2, … , n , alors les équations sont explicitement définies.

Par conséquent, la notation indicielle constitue un raccourci efficace pour

  1. représentant la structure générale d'une équation,
  2. tout en étant applicable aux composants individuels.

Tableaux bidimensionnels

Les éléments de la matrice A sont décrits par deux indices.

Plusieurs indices sont utilisés pour décrire des tableaux de nombres, en deux dimensions ou plus, tels que les éléments d'une matrice (voir également l'image à droite) ;

L'élément d'une matrice A s'écrit à l'aide de deux indices, i et j , séparés ou non par des virgules : a <sub> ij </sub> ou a<sub> i,j</sub> , où le premier indice correspond au numéro de ligne et le second au numéro de colonne. La juxtaposition est également utilisée comme notation pour la multiplication ; cela peut prêter à confusion. Par exemple, si

alors certaines entrées sont

Pour les indices supérieurs à 9, la notation à base de virgules peut être préférable (par exemple, 3,12 au lieu de 312 ).

Les équations matricielles s'écrivent de manière similaire aux équations vectorielles, telles que :

en termes d'éléments des matrices (ou composantes)

Pour toutes les valeurs de i et j . Cette expression représente un système d'équations, une pour chaque indice. Si les matrices ont chacune m lignes et n colonnes, c'est-à-dire et , alors il y a mn équations.

Tableaux multidimensionnels

Cette notation permet une généralisation claire aux tableaux multidimensionnels d'éléments : les tenseurs. Par exemple,

représentant un ensemble de nombreuses équations.

En analyse tensorielle, les exposants sont utilisés au lieu des indices pour distinguer les entités covariantes des entités contravariantes, voir covariance et contravariance des vecteurs et élévation et abaissement des indices .

En informatique

Dans plusieurs langages de programmation, la notation par indice permet d'accéder aux éléments d'un tableau. Cette méthode est privilégiée car elle se rapproche le plus de l'implémentation en langage assembleur , où l'adresse du premier élément sert de base, et un multiple (l'indice) de la taille du tableau est utilisé pour accéder aux éléments à l'intérieur de celui-ci.

Par exemple, si un tableau d'entiers est stocké dans une zone de la mémoire de l'ordinateur commençant à la cellule mémoire d'adresse 3000 (l' adresse de base ), et que chaque entier occupe quatre cellules (octets), alors les éléments de ce tableau se trouvent aux adresses mémoire 0x3000, 0x3004, 0x3008, …, 0x3000 + 4( n − 1) (notez la numérotation à partir de zéro ). En général, l'adresse du i -ème élément d'un tableau d' adresse de base b et de taille s est i</sub> .

Détails de mise en œuvre

En langage C , on peut écrire ce qui précède sous

tableaux multidimensionnels

Les choses deviennent plus intéressantes lorsqu'on considère des tableaux à plusieurs indices, par exemple un tableau bidimensionnel. Trois possibilités se présentent :

  • Rendre le tableau bidimensionnel unidimensionnel en calculant un seul indice à partir des deux
  • Considérons un tableau unidimensionnel où chaque élément est un autre tableau unidimensionnel, c'est-à-dire un tableau de tableaux.
  • Utiliser un espace de stockage supplémentaire pour contenir le tableau des adresses de chaque ligne du tableau d'origine, et stocker les lignes du tableau d'origine sous forme de tableaux unidimensionnels distincts.

En C, les trois méthodes peuvent être utilisées. Avec la première, le programmeur définit l'organisation des éléments du tableau en mémoire et fournit les formules permettant de calculer l'adresse de chaque élément. La deuxième méthode est employée lorsque le nombre d'éléments par ligne est identique et connu au moment de l'écriture du programme. Le programmeur déclare alors un tableau à trois colonnes, par exemple, en écrivant `tableau(x, y)` void mult3x3f ( float result [][ 3 ], const float A [][ 3 ], const float B [][ 3 ]) { int i , j , k ; for ( i = 0 ; i < 3 ; ++ i ) { for ( j = 0 ; j < 3 ; ++ j ) { result [ i ][ j ] = 0 ; for ( k = 0 ; k < 3 ; ++ k ) result [ i ][ j ] += A [ i ][ k ] * B [ k ][ j ]; } } }

Dans d'autres langues

.

0-07-114328-9
  • Calcul tensoriel , DC Kay, Schaum's Outlines, McGraw Hill (États-Unis), 1988, ISBN0-07-033484-6
  • Méthodes mathématiques pour la physique et l'ingénierie , KF Riley, MP Hobson, SJ Bence, Cambridge University Press, 2010, ISBN978-0-521-86153-3
  • Plus d articles de Worldlex Wiki

    Revenez a l index pour explorer davantage de pages sur l histoire, la science, la culture, la geographie et la societe en francais.

    Explorer l index