commit:2013:06_21
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revision | |||
| commit:2013:06_21 [2013/06/21 08:05] – [Commit 2013-06-10] biotteau | commit:2013:06_21 [2016/03/30 15:23] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ====== Commit 2013-06-21 ====== | ||
| + | |||
| + | Commit sur le couplage XFEM et ALE. | ||
| + | Pour l' | ||
| + | |||
| + | ==== X-ALE-FEM==== | ||
| + | |||
| + | |||
| + | === Principe === | ||
| + | |||
| + | J'ai implanté la ALE en utilisant une partition de l' | ||
| + | |||
| + | La phase de relocalisation des noeuds consiste à repositionner le maillage dans sa position initiale. Vu que l'on utilise des XFEM, le domaine maillé peut être un " | ||
| + | |||
| + | La phase de transfert des données est par contre plus complexe : une fois que l'on a relocalisé les noeuds et reconstruit la nouvelle level set sur le maillage (traduisant la position de la frontière dans la configuration courante), il faut redéfinir les cellules d' | ||
| + | |||
| + | === Problématique === | ||
| + | |||
| + | Après avoir passé pas mal de temps à essayer d' | ||
| + | |||
| + | Le problème venait du fait que mes objets " | ||
| + | |||
| + | J'ai essayé de créer une " | ||
| + | |||
| + | Etant donné le temps que j'ai passé sur le sujet, j'ai malgré tout commité les fichiers " | ||
| + | |||
| + | === Implémentation numérique === | ||
| + | |||
| + | Le X-ALE-FEM s' | ||
| + | |||
| + | Pour faire bref, le fonctionnement est le suivant : | ||
| + | |||
| + | * On fait un pas de calcul | ||
| + | * On vérifie la qualité du maillage | ||
| + | * Si le maillage a une qualité insuffisante, | ||
| + | * On reconstruit un nouvel objet metafor et un nouveau domain en utilisant ces frontières | ||
| + | * On transfert les données entre les deux maillages | ||
| + | * On reprend le calcul sur ce nouveau maillage | ||
| + | |||
| + | === Limitations === | ||
| + | |||
| + | Pour le moment, la stratégie X-ALE-FEM ne fonctionne que si on utilise un unique point de Gauss par sous-cellule d' | ||
| + | |||
| + | Il reste des problèmes à régler... Entre autre au niveau des sur-contraintes pour les éléments possédant une faible quantité de matière. Je n'ai pas commité de cas test X-ALE-FEM le temps de régler le problème (et je vais surement essayer de construire une toolbox pour simplifier le jeu de données). | ||
| + | |||
| + | === Nouvelles classes === | ||
| + | |||
| + | Afin d' | ||
| + | |||
| + | Pour " | ||
| + | |||
| + | === Syntaxe des cas test === | ||
| + | |||
| + | A venir une fois que j' | ||
| + | |||
| + | ==== Autour du commit ==== | ||
| + | |||
| + | Les quelques modifications effectuées en dehors des sous-dossiers XFEM et XFEMDrawables (pour contrôle). | ||
| + | |||
| + | == std::cout pendant les phases de transfert == | ||
| + | |||
| + | Il y avait quelques output pendant les phases de transfert que je trouvais " | ||
| + | |||
| + | == Fonctions virtuelles X-ALE-FEM== | ||
| + | |||
| + | J' | ||
| + | |||
| + | virtual std:: | ||
| + | virtual bool restartNeeded(double siRef, double arRef) ; | ||
| + | virtual mtGeo:: | ||
| + | |||
| + | == Forcer l' | ||
| + | |||
| + | Ajout d'un variable bool à ElemDataSet, | ||
| + | |||
| + | == Divers == | ||
| + | |||
| + | - Correction de DummyCouplingMeshes (la fonction " | ||
| + | |||
| + | - Changement de l' | ||
| + | |||
| + | - Monomesher2D construit désormais aussi bien des quad que des tri | ||
| + | |||
| + | |||
| + | == chkrep == | ||
| + | |||
| + | J'ai fait un petit chkrep.py avant de commiter. J'ai été étonné du nombre d' | ||
| + | |||
| + | Les derniers trucs que je n'ai pas réglé car incertain de la marche a suivre : | ||
| + | |||
| + | '# | ||
| + | '# | ||
| + | ' | ||
| + | VTKHAUSDORFFDISTANCEPOINTSETFILTER_H not found 3x in [D: | ||
| + | RESOURCE_H not found 3x in [D: | ||
| + | '# | ||
| + | RESOURCE_H not found 3x in [D: | ||
| + | UNISTD_H not found 3x in [D: | ||
| + | |||
| + | ===== Fichiers ajoutés/ | ||
| + | |||
| + | < | ||
| + | [r]: | ||
| + | [a]: | ||
| + | [a]: | ||
| + | [a]: | ||
| + | [a]: | ||
| + | [a]: | ||
| + | [a]: | ||
| + | [a]: | ||
| + | [a]: | ||
| + | [a]: | ||
| + | [a]: | ||
| + | [a]: | ||
| + | [a]: | ||
| + | [a]: | ||
| + | [a]: | ||
| + | [a]: | ||
| + | [a]: | ||
| + | [a]: | ||
| + | [a]: | ||
| + | [a]: | ||
| + | [a]: | ||
| + | </ | ||
| + | |||
| + | ===== Tests ajoutés/ | ||
| + | |||
| + | < | ||
| + | [r]: | ||
| + | [a]: | ||
| + | </ | ||
