Table of Contents

Commit 2008-11-21

Modifs

ALE - activable ReZoners

Les ReZoners sont maintenant Activables. Ceci permet de les activer/désactiver en cours de calcul. L'intêret est évident: changer de méthode en cours de calcul.

tsm = metafor.getTimeStepManager()
tsm.setInitialTime(0.0, 1.0e-4)
tsm.setNextTime(0.06, 1, 0.1)
tsm.setNextTime(1.0, 1, 0.1)

stages = metafor.getStageManager()

rez1 = UpdEulerCurveReZoner(curve)
rez1.deactivate(stages[1])
rez.add(rez1)
rez2 = SplineCurveReZoner(curve)
rez2.deactivate(stages[0])
rez2.activate(stages[1])
rez.add(rez2)

La courbe curve est remaillée via UpdEulerCurveReZoner entre t=0 et t=0.06 et SplineCurveReZoner pour la suite.

ALE - Nouveau rezoner

MirrorReZoner: permet de conserver la même distance entre deux MeshedObjects au cours du temps selon une direction spécifiée. Par exemple, si la distance est nulle, on retrouve la méthode “miroir” de la thèse de JPP.

ALE - contact

Précédemment, j'avais essayé de gérer le contact ALE (convection du gap tangent) de manière la plus externe possible vis à vis de l'élément de contact. Ceci dans l'esprit d'une “lib ALE” externe qui ne vient pas perturber le développeur non-ALE… Malheureusement, cette manière de faire me ralentit beaucoup dans mes développements et m'empêche d'essayer pas mal de trucs pour résoudre les derniers problèmes que j'ai dans la gestion du contact ALE. Et vu que rien d'autre est fait dans cet esprit, je devrais, pour continuer dans cette voie et pour bien faire, modifier tout le reste…

Donc, momentanément, j'ai modifié la manière utilisée pour gérer le “post” ALE (classe PostStep). J'ai modifié l'ancien algo pour coller à ce qui existe déjà c'est à dire l'interface “beginStep”, “endStep”, “beginALE”, … et finalement “endALE”. Je trouve ça pas terrible puisqu'on vient mettre des commandes relatives au schéma d'intégration dans l'élément mais bon, tout le reste est fait ainsi (cfr. les “if conservatif” par exemple). Je n'ai pas le temps de continuer dans l'autre voie et faire du propre… ce sera pour plus tard.

Au niveau de l'interface utilisateur, rien ne change:

# recalcul du glissement
pst = ContactPostStep()
pst.add(ci1)
pst.add(ci2)
ale.add(pst)

Nouveautés:

Nouveaux tests

Autres

Projet

Les SWIG directors de CurveReZoner sont maintenant testés dans apps.ale.pyReZoner. Normalement ça change rien mais si ce test ne passe pas chez vous, c'est qu'il y a une merde a ce niveau dans votre projet.

Fichiers ajoutés/supprimés

mtALE/MirrorReZoner.cpp	added
mtALE/MirrorReZoner.h	added

apps/ale/dCupExtrusion.py	added
apps/ale/parallelCurvesRZ.py	added
apps/ale/pyReZoner.py	added

Romain BOMAN 2008/11/21 09:39