Calcul de la 1ère forme fondamentale et de ses coefficients


Comme son nom l'indique, la première forme fondamentale joue un rôle fondamental dans l'étude des surfaces dans R3.
Si la surface est donnée localement par une représentation paramétrique
x : (u,v) |-> x(u,v),
sa 1ère forme fondamentale est le carré de la norme de la différentielle dx de la fonction vectorielle x, <dx,dx>, donc un polynôme homogène de degré deux dans les différentielles du et dv :
I(u,v;du,dv) = E(u,v) du2 + 2 F(u,v) du dv + G(u,v) dv2
Le calcul des coefficients se résument à des dérivations et des produits scalaires.
Voici comment faire ces calculs avec Mathematica.
Pour une fonction vectorielle x, on charge donc la capsule ci-dessous, qu'on aura au préalable sauvegardé dans un fichier (je suggère fofo1.m) pour utilisation ultérieure.
Contenu du fichier fofo1.m :

(*-- calcul de la premiere forme fondamentale et de ses coefficients---*)
(*-- pour un morceau de surface mds[u,v] ---*)
fofo1[mds_][u_,v_][du_,dv_]:= Module[{x,a,b,res1,sub1,res2,sub2,res3,sub3},
    x[a_,b_]:= mds[a,b];
    res1 = Dt[x[a,b]] . Dt[x[a,b]]//Expand //Simplify;
    sub1 = Thread[Rule[{Dt[a],Dt[b]},{da,db}]];
    res2 = res1 /. sub1;
    sub2 = Thread[Rule[{a,b},{u,v}]];
    res3 = res2 /. sub2;
    sub3 = Thread[Rule[{da,db},{du,dv}]];
    res4 = res3 /. sub3
    ]
Il faudra encore simplifier au besoin …

Exemples:
1) Une sphère de rayon r
x[u_,v_]:= {r Cos[u] Sin[v],r Sin[u] Sin[v],r Cos[v]}
fofo1[x][u,v][du,dv]
2) Un ellipsoïde
y[u_,v_]:= {2 Cos[u] Sin[v],3 Sin[u] Sin[v],4 Cos[v]}
fofo1[y][u,v][du,dv]
Pour cet ellipsoïde, calculer la 1ère forme fondamentale au point y[.1,.2] par exemple, revient à l'exécution de la commande
fofo1[y][.1,.2][du,dv]
On trouve :
0.353259 du2 + 0.193414 du dv + 4.521 dv2

Retour à ma page personnelle



©jmt : création le 001016 - dernière modification le 011204