Variante II, 2010-09
Je n'ai pas testé la variante II.
Variante I-C, 2010-09-22
-
J'ai modifié un peu votre code (variante I-C) pour le rendre conforme au style
Fortran 95 que j'ai adopté. Il s'agit essentiellement de cosmétique.
La variante modifiée est dans Tetra1.f95. J'ai ajouté une routine qui calcule
les fonctions d'interpolation et leurs dérivées en une suite de points
d'intégration. J'espère ne pas avoir introduit de bug(s).
-
J'utilise le compilateur gratuit G95 (www.G95.org). Il est excellent et compatible
avec les autres compilateur GNU (C, C++, etc.)
Compilation: g95 -c Tetra1.f95 ==> Tetra1.o
Sous Windows, il faut installer MinGW que l'on trouve sur Internet également.
-
Le problème de l'intégration est essentiel. La discussion de votre thèse est théorique;
compte tenu que les problèmes 3D, pour lesquels votre formulation est intéressante,
sont généralement non linéaires, avec des propriétés très variables à l'intérieur des
éléments, on ne peut valablement que miser sur une intégration approchée.
J'ai trouvé dans la littérature une suite de règles (coordonnées dans le tétra unité
et poids). Je les ai introduites dans Tetra1.
-
Le premier test Test1.f95 et ses résultats resu1.txt vérifie l'intégration des
monômes de degré 2.
Compilation: g95 Test1.f95 Tetra1.o -o Test1.exe
-
Le test 2 (Test2.f95 et resu2.txt) compare l'intégration des fonction de base et
de leurs dérivées. Ici, les résultats ne sont acceptables qu'à partir de 14 points d'intégration.
Compilation: g95 Test2.f95 Tetra1.o -o Test2.exe
-
Le test 3 utilise Tetra1 pour former la matrice de rigidité d'un tétra élastique.
Le calcul de ses valeurs propres montre bien les six modes rigides.
J'utilise ensuite cette matrice pour calculer les déplacements du tétra sous l'effet
de forces unité le long des axes. On trouve bien les symétries attendues.
Le calcul répété avec plusieurs schémas d'intégration montre, ici aussi, qu'il
faut au moins 14 points et que plus n'apporte pas d'amélioration sensible.
Programme et résultats: Test3.f95 et resu3.txt.
Compilation: g95 Test3.f95 Tetra1.o eigenval.o -o Test3.exe
Il reste à comparer ces résultats avec d'autres formulations et à passer à des
maillages comportant plus que 1 élément! et à étudier la variante II.
Variante I-C, 2010-09-28
Voici quelques résultats complémentaires.
Le fichier summary.txt contient les résultats relatifs au tétraèdre élastique déjà mentionné. Le fichier Tetra0.f95 est relatif aux
interpolations de Lagrange.
J'ai essayé d'extraire le maximum d'information sur la base d'un unique élément. Il faut naturellement continuer les analyses
sur des cas plus réels, avant de tirer quelques conclusions.
|