Les tenseurs d'ordre 0 sont les scalaires, c'est à dire les éléments du corps sur lequel est contruit l'espace vectoriel.
Les tenseurs d'ordre 1 sont les vecteurs de scalaires, ils possèdent une dimension qui est le nombre de leur composantes et qui doit être supérieur à 1. En effet on ne va pas s'embêter à concevoir des vecteurs à une seul composante, on les identifie à la composante elle-même, ce que nous notons par :
(x) = x
Les parenthèses entourant une énumération séparée par des virgules désignent un vecteur, parcontre lorsqu'elles entourent une expression dont l'opérateur racine n'est pas une virgule cela désigne une priorisation d'opérations qui peut par la suite produire éventuellement un vecteur.
Les tenseurs d'ordre 2 sont les vecteurs de vecteurs de scalaires, des matrices de scalaires, et possèdent deux dimensions que sont le nombre de composantes et le nombre de composantes de leur composante, et qui doivent être toutes deux supérieures à 1. En effet nous avons pour la même raison que précédement :
((x,y)) = ((x),(y)) = (x,y)
Les tenseurs d'ordre trois sont des sortes de parallépipèdes de scalaires. Ils possèdent trois dimensions que sont le nombre de composantes, le nombre de composantes de leur composante, et le nombre de composantes d'une composantes de leur composante, et qui doivent être toutes trois supérieures à 1. En effet nous avons :
((((x,y),(a,b)))) = (((x,y)),((a,b))) = (((x),(y)),((a),(b))) = ((x,y),(a,b))
Pour éviter le recours à la notation tensorielle particulièrement obscure, on choisie d'adopter une notation algorithmique, qui décrit l'algorithme de calcul le plus simplement possible, en s'inspirant du chapitre Les_matrices,_approche_algorithmique, mais en supprimant la notion artificielle de vecteur ligne et de vecteur colonne.
Le tenseur d'ordre n sera sous la forme d'un vecteur de vecteurs de vecteurs etc., de niveau d'emboitement n. Etant donné 8 scalaires x,y,z,t,a,b,c,d, voici quelques exemples :
Tenseur d'odre 0 : x
Tenseur d'ordre 1 : (x,y)
Tenseur d'ordre 2 : ((a,b),(c,d))
Tenseur d'ordre 3 : (((x,y),(z,t)),((a,b),(c,d)))
On réservera le nom de vecteur aux vecteurs de niverau d'emboitement supérieur ou égale à 1. Un vecteur de niveau d'emboitement 1 est un vecteur de scalaires. Un vecteur de niveau d'emboitement 2 est un vecteur de vecteurs de scalaires, et ainsi de suite. C'est une façon récurcive simple d'aborder les tenseurs. Mais cela demande quelque exercice pour rompre avec les habitudes classiques de lecture d'une matrice. Pour se défaire de cette lecture globale, et procéder finalement à une lecture linéaire, niveau d'emboitement par niveau d'emboitement, composante par composante, il nous faut suivre une rééducation selon une méthode similaire à la méthode de lecture verticale découverte par J. Drévillon, pour rééduquer les prersonnes à la lecture syllabique, en les plaçant dans un cadres où les mécanismes de lecture global, auquels elles sont trops soumises, ne peuvent plus s'appliquer.
Comme nous le verrons au chapitre 6, un vecteur peut être considéré comme un signal échantillonné fini. Mais il y a une difficulter à considérer des signaux finis au sense classique du terme, c'est à dire coupé à gauche et à droite. En effet on ne peut pas considérer un arret brutal absolu du signal. Cela est trop contraignant. Cela suppose des forces colossales extérieurs qui se mettent en jeux comme autant de réactions de nature inercive qui ont toute chance d'être jugées arbitraires. Il est beaucoup plus simple et naturel de concevoir une continuité dans la répétition, et une simplicité dans sans caractère indéfinie. L'arbitraire y est beaucoup moins grand. On ne s'autorise pas des hypothèses foles, juste la répétition de ce qui s'est déja produit. Le calcul des harmoniques confirment ce choix comme nous le verrons.
Et il existe un rapport étroit entre le principe harmonique qui est dans la nature des ondes, et les signaux échantillonnés périodiques. C'est pourquoi il est judicieux et naturel de vouloir transcrire les équations de Maxwell dans un langage adapté au traitement des signaux échantillonnés périodiques et de leurs développements harmoniques.
Le vecteur dénote un signal qui se répète indéfiniement, avant comme après. Il est donc comme inscrit dans un vecteur beaucoup plus vaste de dimension infinie dans les deux senses, c'est à dire avec des composantes d'indice négatif et positif aussi grand que l'on souhaite. Néanmoins on ne retient que la partie générative qui contient toute l'information suffisante et nécessaire pour reconstruire le signal par simple répétition, et que nous regroupons dans ce que nous appelons vecteur. La dimension de ce vecteur correspond alors exactement à sa période exprimée par un nombre entier qui est le nombre de ses composantes.
Du fait de l'identification d'un vecteur de dimension 1 avec sa composante, l'emboitement est également un mécanisme qui se répète sans fin, un infini également dans les deux senses : Tout vecteur peut être considéré comme unique composante d'un vecteur. Et tout vecteur possède au moins une composante, lui-même s'il n'y en a pas d'écrite. Néanmoins on ne retient que ce qui est écrit, et qui doit différer de la valeur par défaut qui est lui-même. Ainsi les vecteurs ont-il un nombre de composantes finie et un niveau d'emboitement finie. Dans le nombre d'emboitements ne sont comptés que les niveaux ayant au moins 2 composantes distinctes et dans le nombre des composantes ne sont comptées que la partie générative du signal non répété.
Les vecteurs sont vu comme des énumérations, et leur nature algorithmique va les munir d'un ensemble d'opérations fondamentals et naturels qui constituerons un langage spécifique (appelé notation algorithmique) qui possède de nombreuses qualités : Interopérabilité, densité (toutes combinaisons à un sens valide et distinct), efficacité (les opérations sont de faible complexité), clarté (simple à comprendre), éclectisme (utilise les propriétés intéressantes provenant de différents domaines). Somme toute, tout ce qu'il faut pour ce présenter aux éléections. La puissance sans arbitraire, point de vecteur à une seul composante, objet superfetatoire et donc arbitraire, il faudra au moins deux valeurs pour définir un vecteur, point de vecteur ligne ou colonne qui n'est qu'une mauvaise représentation de la dualité, et donc arbitraire, et la possibilité de combiner des vecteurs quelque soit leur dimension et leur niveau d'emboitement, une grande intéropérabilité qui si elle épouse les opérations dont nous avons besoin, démultiplira la puissance du langage.
Voici quelques exemples de simplification :
(1,3,2,1,3,2,1,3,2) = (1,3,2)
(6,2,6,2) = (6,2)
(5,5,5) = 5
((2,2),2,(2,2,2)) = 2
Un vecteur vide pourrait ressemblé à 0, au signal constant 0.
Une matrice possède des composantes qui sont des vecteurs et qui doivent être de même dimension. La dimension est infini mais dans la pratique elle correspondra au plus petit commun diviseur. Ainsi nous avons :
((2,3),5) = ((2,3),(5,5))
((1,2,3),(5,6)) = ((1,2,3,1,2,3),(5,6,5,6,5,6))
(1,2,(3,4)) = ((1,1),(2,2),(3,4))
L' analyse du langage montre que la virgule joue un rôle d'opérateur de construction des vecteurs tout à fait particulier. Mais si nous accordons aux parenthèses le seul rôle de priorisation des opérations, alors certaines incohérences apparaissent. La composition x,y,z selon le sens de priorisation est égale à x,y,z = (x,y),z = ((x,y),z) ou bien à x,y,z = x,(y,z) = (x,(y,z)) alors que le résultat devrait être : x,y,z = (x,y,z). Pour corriger cela, soit on considère que l'opérateur virgule est d'arité variable supérieur à 1, mais cette solution n'est pas trés constructive, soit on s'inspire de l'implémentation des listes en LISP, à l'aide des paires pointées et des opérations de séparation car et cdr. Mais il faut les adapter à notre environnement où les listes d'un seul éléments n'existe pas, ou plus exactement que tout élément scalaire est une liste à un seul élément, et que les listes sont circulaires car elles se répètent. Par une autre voie, on peut repenser la constructivité des vecteur à l'aide de quelques opérateurs : Un première opérateur | qui crée un vecteur de deux composantes à partir de deux arguments distincts, et un second opérateur >> qui concatène deux vecteurs à la suite. Voici quelques exmeples avec 5 scalaires x,y,z,a,b :
car(x) = x
car(x,y) = x
car(x,y,z) = x
cdr(x) = vide
cdr(x,y) = y
cdr(x,y,z) = (y,z)
Le car retourne la première composante du signal racine. Le cdr retourne le signal racine en enlevant sa première valeur. Mais la longueur du signal racine peut être multplier par un facteur selon le contexte, selon qu'il y a d'autres composantes de périodes différentes car dans ce cas il faut considérer le plus petit commun multiple de toutes ces périodes.
x|x = x
x|y = (x,y)
x>>x = x
(x,y)>>(a,b) = (x,y,a,b)
La première opération que l'on conçoit est le produit constructif que l'on note par l'absence de symbôle. Ce produit prend deux arguments et retourne un vecteur de niveau d'emboitement égal à la sommes des niveaux d'emboitement des deux arguments. Autrement dit il retourne un tenseur d'ordre égale à la sommes des ordres des tenseurs des deux arguments.
L'ordre des produits est scrupuleusement respecté car celui-ci n'est pas toujours commutatif. Pour que ce produit soit cohérent, il doit être fait en respectant une règles de distribution toujours la même, dans le même sense. Deux choix sont possibles. Soit on choisi arbitrairement de distribuer l'argument de gauche d'abord, c'est à dire si le produit possède un vecteur comme second argument alors il doit distribuer son premier argument sur les composantes du second argument. Soit on choisi arbitrairement de distribuer l'argument de droite d'abord. Pour bien comprendre cette rupture de symétrie dans la représentation, il nous faut explorer les deux voies.
Puis il faut préciser le cas où l'argument est un scalaire. Car le scalaire est en faite de multiple formes, il est à la fois scalaire, vecteur à une composante, vecteur de vecteurs à une composante etc..., ce que l'on note par x=(x)=((x))... Le principe reste toujours le même : réduire l'arbitraire autant que possible. La règle doit s'appliquer de la façon la plus générale et son adaptation à la forme ne doit souffrir d'aucun autre choix arbitraire. Lorsqu'il est distribué, la question ne se pose pas. Parcontre lorsqu'il reçoit la distribution, on fait appel à ses composantes. Le scalaire est alors perçu comme un vecteur à une composante. Se faisant le calcul ne se résoud pas, il boucle et ne donne pas de résultat. Alors nous pouvons compléter sans rompre la cohérence. On choisie le résultat qui est conforme à l'intuition, le produit classique d'un vecteur par un scalaire. Autrement dit on distribue dans l'autre sense le scalaire sur les composantes du vecteur. Et si il s'agit de deux scalaires, on les multiplie simplement ensemble.
Voici quelques exemples :
Distribution de l'argument de gauche d'abord |
Distribution de l'argument de droite d'abord |
(x,y)a = (xa,ya) a(x,y) = (ax,ay) |
(x,y)a = (xa,ya) a(x,y) = (ax,ay) |
(x,y)(a,b) = ((x,y)a,(x,y)b)) = ((xa,ya),(xb,yb)) |
(x,y)(a,b) = (x(a,b),y(a,b)) = ((xa,xb),(ya,yb)) |
(x,y)(a,b)(c,d) = ((x,y)(a,b))(c,d) = ((x,y)a,(x,y)b))(c,d) = ((xa,ya),(xb,yb))(c,d) = (((xa,ya),(xb,yb))c,((xa,ya),(xb,yb))d) = (((xa,ya)c,(xb,yb)c),((xa,ya)d,(xb,yb)d)) = (((xac,yac),(xbc,ybc)),((xad,yad),(xbd,ybd))) |
(x,y)(a,b)(c,d) = ((x,y)(a,b))(c,d) = (x(a,b),y(a,b))(c,d) = ((xa,xb),(ya,yb))(c,d) = ((xa,xb)(c,d),(ya,yb)(c,d)) = ((xa(c,d),xb(c,d)),(ya(c,d),yb(c,d))) = (((xac,xad),(xbc,xbd)),((yac,yad),(ybc,ybd))) |
(x,y)(a,b)(c,d) = (x,y)((a,b)(c,d)) = (x,y)((a,b)c,(a,b)d) = (x,y)((ac,bc),(ad,bd)) = ((x,y)(ac,bc),(x,y)(ad,bd)) = (((x,y)ac,(x,y)bc),((x,y)ad,(x,y)bd)) = (((xac,yac),(xbc,ybc)),((xad,yad),(xbd,ybd))) |
(x,y)(a,b)(c,d) = (x,y)((a,b)(c,d)) = (x,y)(a(c,d),b(c,d)) = (x,y)((ac,ad),(bc,bd)) = (x((ac,ad),(bc,bd)),y((ac,ad),(bc,bd))) = ((x(ac,ad),x(bc,bd)),(y(ac,ad),y(bc,bd))) = (((xac,xad),(xbc,xbd)),((yac,yad),(ybc,ybd))) |
(x,y)(a,b)(c,d)(e,f) = ( (((xace,yace),(xbce,ybce)),((xade,yade),(xbde,ybde))), (((xacf,yacf),(xbcf,ybcf)),((xadf,yadf),(xbdf,ybdf))) ) |
(x,y)(a,b)(c,d)(e,f) = ( (((xace,xacf),(xade,xadf)),((xbce,xbcf),(xbde,xbdf))), (((yace,xacf),(yade,xadf)),((ybce,xbcf),(ybde,xbdf))) ) |
Ordre lexicographique avec poid fort à droite |
Ordre lexicographique avec poid fort à gauche |
Vous vérifirez que le produit constructif est bien associatif.
Avec cette représentation, il n'existe plus de distinction entre les vecteurs lignes et vecteurs colonnes.
Les deux arguments du produits constructifs sont néanmoins soumis à une contrainte, ils doivent possèder un nombre de composantes égale. On s'inspire des pratiques des sciences statistiques et du traitement du signal. Lorsque le nombre de composantes ne coïncide pas, les vecteurs sont complétés de manière cyclique par répétition plusieurs fois jusqu'à atteindre un nombre de composantes égals au plus petit multiple commun des dimensions de chaque arguments. Par exemple le produit (a,b,c)(x,y) est rendu conforme en répétant le signal un nombre entier de fois jusqu'à atteindre le plus petit commun multiple de 3 et 2, et ainsi égaliser le nombre de composantes. Nous avons :
(a,b,c)(x,y) = (a,b,c,a,b,c)(x,y,x,y,x,y)
Avec cette généralisation, le produit constructif est définie pour tous les tenseurs.
La seconde opération est le produit destructif, noté •, qui généralise le produit scalaire. Cette opération effectue la somme des produits constructifs des composantes de même indice, de ses deux arguements (le produit est effectué dans le même ordre). Ainsi nous avons :
(a,b)•(x,y) = ax+by
((a,b),(c,d))•(x,y) = (a,b)x + (c,d)y
= (ax,bx) + (cy,dy)
= (ax+cy, bx+dy)
(x,y)•((a,b),(c,d)) = x(a,b) + y(c,d)
= (xa,xb) + (yc,yd)
= (xa+yc, xb+yd)
Les deux arguments du produits destructifs sont néanmoins soumis à une contrainte, ils doivent possèder un nombre de composantes égale.
Une forme de produits destructifs plus générale existe. On le généralise de la même façon que précédement. Lorsque le nombre de composantes ne coïncide pas, les vecteurs sont complétés de manière cyclique par répétition plusieurs fois jusqu'à atteindre un nombre de composantes égals au plus petit multiple commun, mais le résultat doit être néanmoins normé en le divisant par la dimension faisant qu'il ne change pas si la dimension est multiplier par un facteur entier. Ainsi le produit (a,b,c)•(x,y) est rendu conforme en répetant le signal que constitue la liste des composantes des deux arguments jusqu'à atteindre le plus petit commun multiple de 3 et 2, et ainsi égaliser le nombre de composantes, et en divisant le résultat par se nombre :
(a,b,c)•(x,y) = (a,b,c,a,b,c)•(x,y,x,y,x,y)
= (ax + by + cx + ay + bx + cy)/6
Nous avons également :
a•(x,y) = (a,a)•(x,y)
= (ax+ay)/2
= a(x+y)/2
a•b = ab
Avec cette généralisation, le produit destructif est définie pour tous les tenseurs.
---- 3 Mars 2013 ----
4) Matrice
(Produit constructif avec distribution de l'argument de gauche d'abord)
Dans la représentation classique d'une matrice, les vecteurs colonnes de la matrices correspondent à ses composantes, et le produit matriciel de la matrice par un vecteur colonne correspond au produit destructif comme suit :
[a,b,c]
A = [d,e,f] = ((a,d,g),(b,e,h),(c,f,i))
[g,h,i][x]
V = [y] = (x,y,z)
[z][a,b,c] [x] [ax+by+cz]
A*V = [d,e,f]*[y] = [dx+ey+fz]
[g,h,i] [z] [gx+hy+iz]3((a,d,g),(b,e,h),(c,f,i))•(x,y,z) = ((a,d,g)x + (b,e,h)y + (c,f,i)z)
= (ax+by+cz, dx+ey+fz, gx+hy+iz)Les tenseurs d'ordre 2 peuvent être transposé :
t((a,d,g),(b,e,h),(c,f,i)) = ((a,b,c),(d,e,f),(g,h,i))
On peut établir une correspondance entre la notation algorithmique et la notation classique de produit matriciel :
3A•V = A*V = (ax+by+cz, dx+ey+fz, gx+hy+iz)
3V•A = tV*tA = (xa+yb+zc, xd+ye+zf, xg+yh+zi)
3tA•V = tA*V = (ax+dy+gz, bx+ey+hz, cx+fy+iz)
3V•tA = tV*A = (xa+yd+zg, xb+ye+zh, xc+yf+zi)[j,k,l]
B = [m,n,o] = ((i,m,p),(k,n,q),(c,f,i))
[p,q,r]3A•B = A*B =
-------------------------------
La troisième opération algorithmique est le produit vectoriel. Elle ne s'applique qu'à deux tenseurs ayant le même nombre de composantes. Soit A1, A2, A3, A4, B1, B2, B3, B4, des tenseurs quelconques, nous avons par définition :
(a,b,c,d)∧(x,y,z,t) =(bz-cy, ct-dx, dx-at, ay-bx)
(a,b)∧(x,y) = (bx-ay, ay-bx)
L'algorithme est relativement simple. On calcule chaque composante d'indice i par : a(i+1)b(i+2)-a(i+2)b(i+1), en sachant que les composantes d'indice supérieur à la dimension sont égale à celles qui auraient suivie si le vecteur était répété.
On généralise le produit vectoriel de la façon suivants : lorsque le nombre de composantes n'est pas égale, les vecteurs sont complétés de manière cyclique par complète répétition plusieurs fois jusqu'à atteindre un nombre de composantes égale au plus petit multiple commun des premières dimensions de chaque arguments. Par exemple le produit (a,b,c)^(x,y) est rendu conforme en répétant le signal que constitue la liste des composantes des deux arguments jusqu'à atteindre le ppcm (plus petit commun multiple avec 3 et 2) et ainsi égaliser le nombre de composantes. Nous avons :
(a,b,c)∧(x,y) = (a,b,c,a,b,c)∧(x,y,x,y,x,y)
= (bx-cy, cy-ax, ax-by, by-cx, cx-ay, ay-bx)
Nous avons également :
a∧(x,y) = (a,a)∧(x,y) = (ax-ay, ay-ax)
a∧b =(a,a)∧(b,b) = (ab-ab, ab-ab) = (0,0) = 0
Avec cette généralisation, le produit vectoriel est définie pour tous les tenseurs.
Selon le théorème de l'échantillonnage (théorème de Shannon), l'échantillonnage d'un signal par intervalle de temps dt détermine le spectre pour les périodes allant de 2*dt à l'infini, ou dit autrement, l'échantillonnage d'un signal à la fréquence f détermine le spectre des fréquences de 0 à f/2. Mais il ne s'agit pas d'une détermination approximative, elle est mathématiquement exacte. L'échantillonage discret transporte toute l'information qui existe dans le signal continue, dont il est une représentation, à l'exception de la partie du signal généré par les fréquences supérieur à f/2.
Le signal échantillonnés périodique est un vecteur où l'indice des composantes joue le rôle du temps, les valeurs des composantes joue le rôle des valeurs du signal, et la dimension du vecteur est égale à la période.
Des opérations courantes +, -, *, /, ^ sont définie parmis ces vecteurs. Lorsque le nombre de composantes n'est pas égale, les vecteurs sont complétés de manière cyclique par complète répétition plusieurs fois jusqu'à atteindre un nombre de composantes égale au plus petit multiple commun des premières dimensions de chaque vecteurs. Par exemple la somme (a,b,c)+(x,y) est rendu conforme en répétant le signal que constitue la liste des composantes des deux arguments jusqu'à atteindre le ppcm (plus petit commun multiple avec 3 et 2) et ainsi égaliser le nombre de composantes. Nous avons :
(a,b,c)+(x,y) = (a,b,c,a,b,c)+(x,y,x,y,x,y)
= (a+x,b+y,c+x,a+y,b+x,c+y)(a,b,c)*(x,y) = (a,b,c,a,b,c)*(x,y,x,y,x,y)
= (a*x,b*y,c*x,a*y,b*x,c*y)2*(x,y) = (2,2)*(x,y)
= (2*x,2*y)1/(x,y) = (1,1)/(x,y)
= (1/x,1/y)(x,y)^2 = (x,y)^(2,2)
= (x^2,y^2)(x,y)^(a,b,c) = (x,y,x,y,x,y)^(a,b,c,a,b,c)
= (x^a,y^b,x^c,y^a,x^b,y^c)-(x,y) = (-1,-1)*(x,y)
= (-x,-y)5+(x,y) = (5,5)+(x,y)
= (5+x,5+y)
Le vecteur étant périodique, il se réduire à sa période, et sa dimension doit toujours être égale à sa période. Lorsque un vecteur possède une dimension égale à 1, alors il s'identifie à sa composante qui le remplace dans la représentation. Lorsque un vecteur possède une dimension égale à 0, par convention cela désigne le signal constant 0, il est donc remplacé par 0.
Cette transformation est le lien algorithmique qui lie le signal à sa représentation vectoriel, et qui en donne toute sa substance. Sa représentation vectoriel est donnée par son échantillonnage. Selon le théorème de Shannon toutes les fréquences au dessus de la demie fréquence d'échantillonage échappent à cette représentation vectorielle. Elle positionne donc un curseur sur l'échelle des fréquences, et exclut du système toutes les fréquences au delà de ce curseur. Ces fréquences existent pourtant mais on ne les voie plus.
La représentation vectoriel d'un signal va échantillonner celui-ci par intervalle de temps dt. Les composantes seront numérotées à partir de zéro. Le zéro est l'instant 0, le début de la mesure. Et le nombre n d'échantillons détermine la période du signal n*dt, c'est à dire sa durée avant qu'il ne se répète.
Interval d'échantilonage : dt
Signal u = (u0, u1, u2, u3..., un)
Période du signal : n*dt
Il y a deux unités physiques en présence, une unité de temps qui peut être la seconde, et une unité de valeur du signal qui pourrait être des voltes. L'échantillonnage s'effectue relativement à un paramètre essentiel qui est l'intervale de temps dt entre deux échantillons, qui constitue la fréquence d'échantillonnage 1/dt, et qui correspond à un choix de l'observateur, à l'echelle de temps dans laquelle se situe l'observateur.
La transformation de Fourrier rapide, qui est souvent présentée comme un accessoire de calcule pour approcher des objects mathématiques jugés plus fondamentaux, est ici au contraire non pas un accessoire mais l'object fondamental en question qui porte toute notre attention. En dévoilant ses principes de fonctionnement, on dévoilera ce qu'est réellement la représentation vectorielle des signaux.
La transformation de Fourrier rapide notée fft (Fast Fourier Transform) s'applique à un vecteur u pour produire un autre vecteur c de dimenssion égale mais qui n'a pas la même signification, qui se situe dans un autre univers au propriété dual inconnue, et qui ne correspond pas au shéma précédement décrit. Tout reste à décrire et à explorer.
fft(u) = c
Elle produit le spectre discret qui est constitué d'une liste de n valeurs complexes :
Spectre c = (c0, c1, c2, c3..., cn)
Chacune de ces valeurs complexes correspond à une ondes sinusoïdale exacte. Voyez comment nous sommes déjà dans un autre univers, où une simple composante scalaire, certe complexe, désigne à elle seul un signal non trivial, une onde pure (Noter que le même principe de décomposition peut s'appliquer pour d'autre famille de signaux dit orthogonaux, autres que les signaux sinusoïdaux purs.)
Une onde pure est définie exactement par 3 paramètres que sont sa fréquence, son amplitude et sa phase.
Onde désignée ck
Fréquence : k*dt
Amplitude : |ck|
Phase : arg(ck)
Et cette représentation est biunivoque, à chaque scalaire complexe distinct correspond une onde distincte de même fréquence. Le complexe est déterminé par sa norme qui est un réel, et son argument qui est un angle exprimé en radian compris entre 0 et 2π, et qui forme ce que l'on appelle la représentation polaire du complexe [a, φ] où a est la norme (appellé aussi amplitude) et φ est l'argument (appellé aussi angle, ou phase), et qui se met sous forme d'une expression exponentielle :
[a,φ] = a * ei*φ
Pourquoi les complexes apparaissent-il ?. Le corps des complexes n'est pas une extenssion arbitraire, c'est la plus grande extention de corps commutatif possible sur les réels en restant de dimenssion finie sur les réels (la démonstration en est relativement simple mais sort du cadre de notre discution).
Mais cette extention est à la fois trop grande et pas suffisament générale. Reprenons le processus de construction. Le corps de départ n'est pas forcement celui des réels. Cela peut être n'importe quel corps. Et dans un premier temps on étudira le cas des corps finis, les corps Z/pZ où p est premier, et leur extentions finies, les corps de cardinalitées p^n qui s'obtiennent simplement par l'ajout d'éléments racines de polynôme.
L'étude des corps finies n'est pas accessoire, elle est cenrtrale dans l'élaboration de notre notation vectorielle :
Il est important de développer notre sense intuitif des structures, grace à la vulgarisation, à la pédagogie et à la recherche, sans faire d'ostracisme. Mais est privilégié l'approche algorithmique et constructive. Le corps est la structure mettant en oeuvre l'addition et le produit, où l'addition représente une opération inversible et commutative, et où la multiplication représente une opération également inversible sauf pour l'élément absorbant zéro, et distributive sur l'addition. Il joue un rôle essentiel dans les algorithmes utilisant ces deux opérations, faisant qu'il existe un ensemble clos par ces deux opérations qui se trouve par définition être un corps. D'autres structures vont jouer un rôle important dans les algorithmes utilisant d'autres opérations.
D. Mabboux-Stromberg
2010