====== Commit 2013-10-31 ====== ===== Modifications ===== ===Nettoyage des méthodes de contact === Désormais, un pointeur vers une méthode de contact est attribuée à chaque interaction de contact. Cette méthode de contact dépend du schéma d'intégration utilisée et peut varier d'un pas de temps à l'autre dans le cas du schéma d'intégration implicite conservatif/explicite combiné. Lors de la phase d'initialisation du schéma d'intégration, une méthode de contact est attribuée à chaque interaction de contact via setContactMethod() avant l'étape "elementsInitialisation()". Par défaut, c'est la méthode de contact classique. Dans le cas du schéma d'intégration implicite énergétiquement consistent, nous avons le choix entre trois méthodes de contact : === Gestion de l'algorithme conservatif === Les paramètres de gestion de l'algorithme conservatif sont imposés par des fonctions relatives à ''metafor.getConsistentAlgorithmFunctions()''. caf = metafor.getConsistentAlgorithmFunctions() caf.setDissipationParameter(diss) caf.setConservingContactMethod(consContactMeth) où |''consContactMeth ''| = CONSERVINGCONTACTMETHOD_ARMEROPETOCZ : la méthode du contact est par défaut celle de Armero et Petöcz. | | | = CONSERVINGCONTACTMETHOD_LAURSEN : la méthode du contact est celle de Laursen. (Non validée) | | | = CONSERVINGCONTACTMETHOD_LOVE : la méthode du contact est celle de Love (Discontinuité des vitesses) . (Non validée)| |''diss''| dissipation numérique (valeur par défaut 0.)| Certains cas tests ont été adaptés pour pouvoir tester ces méthodes là. ===== Perspectives ===== Méthode du lagrangien augmenté : * Débugger la méthode * Ajout de nouveaux critères d'arrêt * Implémentation des cas test de référence de l'article de J. C. Simo and T. A. Laursen, 1990 * Mettre à jour l'aire de contact nodale au cours des augmentations * Regarder si il est possible de faire des GPState en fonction du matériau et de la méthode de contact utilisée. (Gestion de mémoire + clarté du code) ===== Fichiers ajoutés/supprimés ====== [a]:mtFEMBase/ConservingContactMethod.h [a]:mtFEMBase/ConservingContactMethod.cpp ===== Tests ajoutés/supprimés ===== [r]:apps/bImp/contactLaursenLove.py [r]:apps/bImp/contactLaursenLoveAugLag.py [r]:apps/bImp/cylElastFrotAugLag.py [r]:apps/bImp/cylPlastAugLag.py [a]:apps/bImp/cylElastFrotLaursenAugLag.py [a]:apps/bImp/cylElastFrotLaursen.py [a]:apps/bImp/cylPlastLaursenAugLag.py [a]:apps/bImp/cylPlastLaursen.py [a]:apps/bImp/contactLove.py [a]:apps/bImp/contactLoveAugLag.py [a]:apps/bImp/contactLaursen.py [a]:apps/bImp/contactLaursenAugLag.py