===== Commit 2015-05-07 ===== * Force Driven Rotating Rigid Tool ===== Force Driven Rotating Rigid Tool ===== * Implémentation dans le cadre du pilotage en force des outils rigides (Force Driven Rigid interaction) d'un outil rigide soumis à rotation (imposée). * Ceci permet par exemple de définir un tambour tournant piloté en force, déformant une tôle et piloté à travers la mise sous compression d'un ressort (oo_meta/mtContact/tests/fdRotcontactSpring2/3D.py) {{ :commit:2015:fdrotcontactspring3d.jpg?200 |}} * L'usage est principalement de modéliser le cedage d'une cage d'outil de mise à forme (rollForming, redressage, laminage (pour peu qu'on considère le cylindre comme rigide), ... * Devant coupler un mouvement de rotation et de translation, et le pilotage en force mettant à jour l'outil sur base de sa translation globale (et non incrémentale), le mouvement est géré à travers les Operateurs de transformation géométrique (mtGeoOperator, mtGeoRotationOperator,...) qui étaient principalement utilisés en prépro * Les transferts operators peuvent dorénavant avoir une configuration d'entrée et de sortie différente * en prépro : on veut modifier la config ini => confIn = initiale / confOut = initiale (défaut) * en fdRd : la référence de déplacement est ini, mais on veut adapter le déplacement : => confIn = initiale / confOut = actuelle * La gestion mémoire des mtGeoOperator est maintenant gérée par ''RefCounted'' * Le ''mtGeoRotationOperator'' permet maintenant d'appliquer un déplacement pré-rotation et un déplacement post-rotation * la gestion mémoire des objets mtGeoAxe & mtGeoTriedre a aussi été corrigée * Pour brancher correctement les mécanismes sur les outils rgides de contact, Le ''rigidToolMesher'' peut désormais imposer la position initiale de son noeud '' RigidToolMesher::setNodePos(double x,double y,double z)'' ===== ExtrusionMesher3D ===== * Many thanks to Christian grace à qui, on peut faire des extrusion tournant (twist) ou dans une direction qui n'est parfaitement droite (insertion de défaut dans la direction d'extrusion) * Attention : Je n'ai pas encore commité les cas tests de Christian validant ces implémentations ===== Divers ===== * AdamKhaleelDamage : * correction d'un bug dans computeDOmegaDDamage (erreur dans le nom d'une variable => terme non calculé. * Merci [[http://cppcheck.sourceforge.net/|cppCheck]] pour avoir touvé le bug... (identifié comme warning "variable non utilisée", mais c'était un vrai bug...) * Ceci démontre encore la nécessité de faire la chasse aux Warning (on est en train avec Romain de regarder les solutions de qualité logicielle, mais n'hésitez pas à déjà utiliser [[http://cppcheck.sourceforge.net/|cppCheck]] c'est gratuit et facile à utiliser ... * PostLag : * pour Khalifa Marmi, un doctorant de Anne-Marie, j'ai écrit un script (oo_meta/toolbox/postLag.py) permettant d'extraire le maillage et l'historique (limité aux temps des facs) des contraintes aux points d'intégration au format demandé * Ca pourrait toujours servir à l'avenir (interactions avec lagamine) ou comme base d'export vers d'autres logiciels ... ===== Fichiers ajoutés/supprimés ===== Adding: oo_meta\mtContact\src\RotativeContactTool.h/cpp Adding: oo_meta\toolbox\postLag.py ===== Tests ajoutés/supprimés ===== Adding: oo_meta\mtContact\tests\fdContactSpring2D.py Adding: oo_meta\mtContact\tests\fdContactSpring3D.py Adding: oo_meta\mtContact\tests\fdRotContactSpring2D.py Adding: oo_meta\mtContact\tests\fdRotContactSpring3D.py Adding: oo_meta\mtContact\tests\fdRotMu0ContactSpring2D.py Adding: oo_meta\mtContact\tests\fdRotMu0ContactSpring3D.py --- //[[L.Papeleux@ulg.ac.be|Luc Papeleux]] 2015/05/07 //