commit:futur:yannick
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionLast revisionBoth sides next revision | ||
commit:futur:yannick [2017/02/20 14:29] – crutzen | commit:futur:yannick [2017/03/13 10:29] – crutzen | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ======= Commit 2017-02-20 ======= | + | ======= Commit 2017-03-?? ======= |
- | ======Sticking element : ALE, extracteurs et visualisation + nouveau ReZoner====== | + | ======Modèles de profilage====== |
=====Contexte===== | =====Contexte===== | ||
- | Les industriels ont couramment recours, | + | Ce commit marque essentiellement l’aboutissement des nouveaux développements que j’ai apportés à nos modèles numériques de profilage dans le cadre du papier IJSS. L’objectif premier poursuivi dans ce papier est la modélisation de l’enchaînement de procédés utilisés |
- | Pour ce faire, les '' | + | |
- | {{ :commit:futur:bavoletalewelding.png?900 |}} | + | =====Cas-tests de profilage===== |
+ | Les trois cas-tests de profilage mis au point pour le papier IJSS sont ajoutés dans la batterie de tests. Ceux-ci sont chargés sans réaliser l’intégration temporelle. | ||
+ | De plus, des cas-tests extrêmement réduits (limités à une seule station de mise à forme) sur base de ces précédents gros cas-tests sont inclus dans la batterie. Pour ceux-ci, l’enchaînement du profilage avec collage des rives et découpe est simulé. | ||
+ | <WRAP centeralign column 100%> | ||
+ | < | ||
+ | <iframe width=" | ||
+ | </ | ||
+ | </ | ||
+ | <WRAP centeralign column 100%> | ||
+ | < | ||
+ | <iframe width=" | ||
+ | </ | ||
+ | </ | ||
+ | <WRAP centeralign column 100%> | ||
+ | < | ||
+ | <iframe width=" | ||
+ | </ | ||
+ | </ | ||
+ | =====Répertoire rollForming/ | ||
+ | * Modifications de la ligne de profilage d’un tube cylindrique (Tube.CPE/ | ||
+ | * Ajout de la version originelle de la ligne de profilage du tube (Tube.orig.CPE/ | ||
- | En outre, les développements apportés aux '' | + | =====CopraImportUtilities.py===== |
- | * ajout de nouveaux extracteurs, | + | * L’utilisateur peut définir des conditions aux limites en un nœud de son choix des sections droites amont et aval (utilisé dans le cas de la post-découpe Lagrangienne d’un profil fermé). |
- | * visualisation | + | * Une liste de stations peut désormais être supprimée. |
- | * les forces de collage sont basculées des forces internes en forces externes (possible réduction | + | * Possibilité d’élargissement |
+ | * Possibilité d’écrire un fichier Matlab décrivant | ||
+ | * La définition | ||
- | =====Extension au formalisme ALE===== | + | =====copraRollForming.py===== |
- | L' | + | * Ajout d’une option pour le calcul parallèle de la détection du contact. |
+ | * Possibilité d’utiliser le schéma d’intégration alpha-généralisé amorti pour le calcul de la phase finale du retour élastique. | ||
+ | * Le fichier Matlab | ||
- | Il est important | + | =====copraRollFormingALE.py===== |
+ | * Ajout d’une option pour le calcul parallèle de la détection du contact. | ||
+ | * Le fichier Matlab des paramètres du cas-test | ||
+ | * Possibilité | ||
+ | * Possibilité d’un nombre d’éléments finis différent pour chacun | ||
+ | * Possibilité d’élargir les zones de raffinement du maillage par un facteur différent pour chacun | ||
+ | * Possibilité | ||
+ | * Possibilité d’utiliser le schéma d’intégration alpha-généralisé amorti | ||
+ | * Ajout de paramètres de contrôle de la taille du pas de temps. | ||
+ | * Ajout d’un paramètre de contrôle du nombre de mailles fixées | ||
+ | * Sélection des nœuds milieux des profils amont et aval plus robuste. | ||
+ | * Possibilité d’ajouter des interactions de contact spécifiques (exemple | ||
+ | * La convection de '' | ||
+ | * Ajout d’options pour contrôler les méthodes de flux. | ||
+ | * Possibilité de remailler les rives à coordonnées curvilignes constantes ou bien à coordonnées cartésiennes constantes. | ||
- | Durant le post-step ALE, les opérations successives sont les suivantes : | + | =====importCopra.py===== |
- | | + | La fonction ''importCopraFiles(testName)'' |
- | - Mise à jour éventuelle de l'aire de collage nodale sur la configuration remaillée. | + | |
- | - Mise à jour du point de collement à partir de la force de collage équilibrée. | + | |
- | - Recherche de l' | + | |
- | - Modification éventuelle des coordonnées réduites selon les options de l’utilisateur. | + | |
- | - Mise à jour du flag de reconstruction de la connectivité si l' | + | |
- | La recherche géométrique de l’élément maître est remontée | + | =====materialDataBase.py===== |
+ | Ajout d’un modèle | ||
- | =====Extracteurs===== | + | =====utilitiesCopra.py===== |
- | * Ajout d'un extracteur de la force de collage sur l'entité esclave ('' | + | Correction de petits bugs dans les outils de preprocessing : |
- | * Ajout d'un extracteur | + | * La classe |
+ | * Prise en compte dans le dictionnaire | ||
- | =====Visualisation===== | + | =====marc2py.py===== |
- | Affichage dans la fenêtre VizWin : | + | Depuis que les éléments 0D sont générés au travers de '' |
- | * du nœud esclave | + | < |
- | | + | volume = groupset.add(Group(idx+100)) |
- | * de l'aire de collage au nœud esclave (scalar0DValues et scalarValues). | + | mesh.define(idx+1,CELL_HEXA, |
+ | mesh.define(idx+2, | ||
+ | mesh.define(idx+3, | ||
+ | mesh.define(idx+4, | ||
+ | ... | ||
+ | </ | ||
+ | Lors de la construction | ||
- | {{ : | + | =====Imports relatifs===== |
+ | Dans '' | ||
- | =====ReZoner à coordonnées cartésiennes constantes===== | + | =====workspace des cas-tests par enchaînement===== |
- | '' | + | Pour tous les cas-tests |
- | Si au cours de la simulation, la spline s’allonge, | + | |
+ | =====Réorganisation des cas-tests de profilage===== | ||
+ | * Réorganisation des répertoires '' | ||
+ | * Ajout du répertoire '' | ||
+ | * Ajout du répertoire '' | ||
+ | => Modification des CMakeLists.txt respectifs. | ||
+ | * Move de différents cas-tests. | ||
+ | * Ajout de $Id$ dans l' | ||
- | =====Batterie===== | + | =====toolbox/ |
+ | Petite correction sur la position courante des nœuds. | ||
- | Dans la batterie, j'ai ajouté les petits cas-tests | + | =====toolbox/ |
+ | Ajout d’un export de la connectivité | ||
- | Sollicitation dans le plan : | + | =====toolbox/utilities.py===== |
- | * collage simple passe maître/esclave, | + | Depuis la révision [[commit: |
- | * collage simple passe esclave/ | + | |
- | * collage double passe, | + | |
- | * conditions aux limites | + | |
- | Sollicitation hors plan : | + | =====Renaming dans mtDrawables===== |
- | | + | Les classes '' |
- | * collage simple passe esclave/ | + | |
- | * collage double passe. | + | |
+ | =====mtALE/ | ||
+ | Avec le reZoner à coordonnées cartésiennes constantes de mon [[commit: | ||
+ | |||
+ | =====mtGeo/ | ||
+ | Après avoir réorganisé le module des modèles de profilage, j’ai lancé la batterie de tests pour ce module en particulier ('' | ||
+ | |||
+ | Tout d’abord, observer le problème dans le maillage ALE ne fut pas évident vu la taille considérable du modèle. J’ai commencé par déterminer la demi-partie du profil concernée par le problème. Ensuite, j’ai identifié l’inter-tête du maillage en réduisant le nombre de stations importées dans le modèle. De cette manière, j’ai abouti au modèle réduit illustré ci-après. On y observe un défaut dans la géométrie des coins de la rive. La construction des deux polyCurves frontières à partir de la polyCurve à mi-épaisseur paraît être en cause. | ||
+ | {{ : | ||
+ | Ensuite, avec ce cas-test extrêmement réduit, j’ai pu utiliser le debugger et j’ai pu cerner le problème dans les opérateurs de projection de la polyCurve. En effet, la coordonnée réduite de chaque nœud de la polyCurve est calculée par l’opérateur de projection. Dans le cas particulier du nœud à l’extrémité de la polyCurve, la coordonnée réduite était erronée et conduisait, à son tour, à une évaluation erronée de la normale à la courbe avec pour conséquence le défaut géométrique de la rive observé. En effet, dans les routines de prise de décision de l’opérateur de projection de la polyCurve, dans le cas d’un segment frontière, j’ai observé que le type d’appartenance initialement à '' | ||
+ | |||
+ | **En définitive, | ||
+ | |||
+ | =====Divers===== | ||
+ | * Le répertoire '' | ||
+ | * Dans la méthode '' | ||
+ | * Petit retour des warnings à la compilation. | ||
===== Fichiers ajoutés/ | ===== Fichiers ajoutés/ | ||
< | < | ||
- | Added : oo_meta\mtALE\SplineCartCurveReZoner.h/.cpp | + | Renamed |
- | Added : oo_meta\mtDrawables\SFScalars.h/.cpp | + | Renamed |
- | Added : oo_meta\mtDrawables\SFVectors.h/ | + | Added : oo_nda/ |
- | Added : oo_meta\mtDrawables\StickingElementCloud.h/.cpp | + | Added : oo_nda/montataire/ |
- | Added : oo_meta\mtDrawables\StickingElementDataSet.h/.cpp | + | Added : oo_nda/ |
- | Added : oo_meta\mtDrawables\StickingInteractionDrawable.h/.cpp | + | Added : oo_nda/rollForming/ |
- | Added : oo_meta\mtDrawables\StickingMesh.h/.cpp | + | Added : oo_nda/ |
- | Added : oo_meta\mtElements\StickingForceValueExtractor.h/.cpp | + | Added : oo_nda/ |
- | Added : oo_meta\mtElements\StickingInteractionValueExtractor.h/.cpp | + | Added : oo_nda/ |
- | Added : oo_meta\mtElements\StickingSpringLengthValueExtractor.h/.cpp | + | Added : oo_nda/ |
+ | Added : oo_nda/ | ||
+ | Added : oo_nda/ | ||
</ | </ | ||
===== Tests ajoutés/ | ===== Tests ajoutés/ | ||
< | < | ||
- | Added : oo_meta\apps\sticking\sheets3dALE.py | + | |
- | Added : oo_meta\apps\sticking\sheets3dALEInPlane.py | + | Added : oo_nda/ |
- | Added : oo_meta\apps\sticking\sheets3dALEInPlaneDP.py | + | Added : oo_nda/ |
- | Added : oo_meta\apps\sticking\sheets3dALEInPlaneFixFormer.py | + | Added : oo_nda/ |
- | Added : oo_meta\apps\sticking\sheets3dALEInPlaneFixRevised.py | + | Added : oo_nda/ |
- | Added : oo_meta\apps\sticking\sheets3dALEInPlaneRev.py | + | Added : oo_nda/ |
- | Added : oo_meta\apps\sticking\sheets3dALEOutPlane.py | + | Added : oo_nda/ |
- | Added : oo_meta\apps\sticking\sheets3dALEOutPlaneDP.py | + | Added : oo_nda/ |
- | Added : oo_meta\apps\sticking\sheets3dALEOutPlaneRev.py | + | |
+ | Added : oo_nda/ | ||
+ | Added : oo_nda/ | ||
+ | Added : oo_nda/ | ||
+ | Added : oo_nda/ | ||
+ | Added : oo_nda/ | ||
+ | Added : oo_nda/ | ||
+ | |||
+ | Added : oo_nda/ | ||
+ | Added : oo_nda/ | ||
+ | |||
+ | Added : oo_nda/ | ||
+ | Added : oo_nda/ | ||
+ | |||
+ | Added : oo_nda/ | ||
+ | Added : oo_nda/ | ||
+ | Added : oo_nda/ | ||
+ | Added : oo_nda/ | ||
+ | Added : oo_nda/ | ||
+ | |||
+ | Added : oo_nda/ | ||
+ | Added : oo_nda/ | ||
+ | Added : oo_nda/ | ||
+ | Added : oo_nda/ | ||
+ | |||
+ | Added : oo_nda/ | ||
+ | Added : oo_nda/ | ||
+ | |||
+ | Added : oo_nda/ | ||
+ | Added : oo_nda/ | ||
+ | Added : oo_nda/ | ||
+ | Added : oo_nda/ | ||
+ | |||
+ | Renamed : oo_nda/ | ||
+ | |||
+ | Added : oo_nda/ | ||
+ | |||
+ | Added : oo_nda/ | ||
+ | Added : oo_nda/ | ||
+ | Added : oo_nda/ | ||
+ | Added : oo_nda/ | ||
+ | Added : oo_nda/ | ||
+ | Added : oo_nda/ | ||
+ | |||
+ | Moved : oo_nda/ | ||
+ | Moved : oo_nda/ | ||
+ | Moved : oo_nda/ | ||
+ | Moved : oo_nda/ | ||
</ | </ | ||
- | --- // | + | --- // |
commit/futur/yannick.txt · Last modified: 2024/03/01 16:05 by boman