Re: Contrazione sugli indici di un tensore
Ammirati colleghi
---[ 1 ]---
In effetti, le menzionate dispense, che piu'
di una volta mi hanno chiarito le idee, sono
state tra le mie prime consultazioni. Ma in
questo caso non sono stato capace di soffiarne
nelle vele i venti che ingegni piu' alti del mio
avrebbero suscitato.
---[ 2 ]---
Tento di manifestare il mio pensiero con un
esempio: se mostrassi ad uno studente del
primo anno come si effettua il prodotto righe
per colonne e lui mi chiedesse perche' ci
affanniamo a perpetrare quel singolare
procedimento, potrei rispondergli che le
matrici rappresentano funzioni lineari tra
spazi di dimensione finita e che la pratica
di comporne gli elementi in quella maniera
corrisponde esattamente alla esecuzione di
due di tali trasformazioni in sequenza.
NOTA: in quanto segue le righe che iniziano con
un asterisco * sono dimostrazioni (giuste ??) di
quanto affermato e possono essere omesse in
una prima lettura
---[ 3a ]---
Il famigerato prodotto triplo di tre vettori di R^2
e' una funzione multilineare
* myPseudoT[x_,y_,z_]:=Dot[Cross[x,y],z]//ExpandAll
* x={x1,x2,x3};
* y={y1,y2,y3};
* w={w1,w2,w3};
* z={z1,z2,z3};
* myPseudoT[x,y,z]
* myPseudoT[ x+w,y,z]==myPseudoT[x,y,z]+myPseudoT[w,y,z]
* myPseudoT[x,y+w,z]==myPseudoT[x,y,z]+myPseudoT[x,w,z]
* myPseudoT[x,y,z+w]==myPseudoT[x,y,z]+myPseudoT[x,y,w]
* myPseudoT[5 x,y,z]==(5myPseudoT[x,y,z])//ExpandAll
---[ 3b ]---
La definizione sopra data in termini di prodotto scalare e
vettoriale puo' essere equivalentemente espressa in termini
di componenti dell'indicatore di Levi-Civita
(dovrebbe, insomma, essere uno pseudotensore, se non
lo e', abbiate pazienza, e' che c'ho ancora il Pentium
prima maniera, con il bug)
* sig[i_, j_, k_] := Module[{tmp},
* If[
* i == j || j == k || i == k,
* 0,
* If[
* {i, j, k} == {1, 2, 3} || {i, j, k} == {2, 3, 1} || {i, j,
* k} == {3, 1, 2},
* 1,
* -1
* ]
* ]
* ]
* myNewPseudoT[x_, y_, z_] := Module[{tmp},
* tmp = Table[
* sig[i, j, k] x[[i]] y[[j]] z[[k]], {i, 1, 3}, {j, 1, 3}, {k, 1,
* 3}] // Flatten;
* Apply[Plus, tmp]
* ]
* myNewPseudoT[x, y, z]
* myPseudoT[x, y, z]
* myNewPseudoT[x, y, z] == myPseudoT[x, y, z]
---[ 3c ]---
A questo punto avrei voluto operare la contrazione su due dei
suoi indici e verificare se in questa maniera si passasse dalla
forma di volume (del parallelepipedo costruito sui tre vettori)
ad una misura di una delle sue facce.
---[ 3d ]---
Ma mi aggranchia un dubbio atroce: il myPseudoT e'
1 volta controvariante
2 volte covariante
oppure
0 volta controvariante
3 volte covariante
come temo, ?
---[ 3d ]---
Se sussistesse questa seconda ipotesi, la possibilita'
di condurre oltre l'esempio andrebbe perduta.
---[ 3e ]---
Che stanchezza ... buonanotte.
Imago Mortis
Received on Wed Oct 22 2008 - 23:36:54 CEST
This archive was generated by hypermail 2.3.0
: Thu Nov 21 2024 - 05:10:07 CET