Welcome to the forums. Please post in English or French.

You are not logged in.

#1 2017-02-03 17:36:46

Youssef T
Member
Registered: 2017-02-03
Posts: 4

Lancement calcul ASTER : Pivots nuls et matrices non factorisables

Bonjour à tous .

Dans le cadre d'un projet à L'école des mines de DOUAI , on essaye de développer une plateforme web , qui permettrai a des utilisateurs ( lambda ; en ce qui concerne l'utilisation du CODE ASTER )  de générer des cas de calculs et de les lancer sur SalomeMeca et de visualiser les résultats ou même de les traiter .
Donc pour faire cela , on a du scripter la génération des fichiers de maillages et des  fichiers de commandes  et export qui seront essentiels au lancement des calculs  avec la commande AS_RUN .

Le cas traité dans cette problématique , porte sur une poutre appuiée sur deux appuis et chargée sur sa partie supérieure par un chargement uniforme.
les fichiers que vous allez trouvez ci-joint sont les fichiers qui vont permettre de lancer les calculs et son exempt de tout caractère variable car c'est un script python en amont qui se charge de les générer ; l'utilisateur pourras donc définir avec quelques paramètres entré dans un formulaire web et ainsi par exemple pouvoir contrôler la position des appuis et de leurs degrés de libertés   , ou même changer la  valeur du chargement et la zone de chargement . ( ce qui reviens donc a contrôler les physicals groupes du problème) .

une fois les fichiers générés , et au lancement du calcul  via la commande AS_RUN à travers notre script python on obtiens donc des erreurs impliquants des pivots nuls et des matrices non factorisables comme suit :

<A> <CALCULEL2_63>                                                                  !
   !                                                                                     !
   ! -> La maille M883 porte un élément fini de bord, mais elle ne borde                 !
   !      aucun élément ayant une "rigidité".                                            !
   !                                                                                     !
   !   -> Risque & Conseil :                                                             !
   !      Cela peut entrainer des problèmes de "pivot nul" lors de la résolution.        !
   !      Si la résolution des systèmes linéaires ne pose pas de problèmes, vous         !
   !      pouvez ignorer ce message.                                                     !
   !      Sinon, vérifier la définition du modèle (AFFE_MODELE) en évitant l'utilisation !
   !      de l'opérande TOUT='OUI'.

et

<EXCEPTION> <FACTOR_21>                                                                !
   !                                                                                        !
   ! (Solveur linéaire LDLT ou MULT_FRONT) Matrice non factorisable !                       !
   !   On sait en plus que:                                                                 !
   !    - pivot est presque nul à la ligne 1306 pour le noeud N348 et                       !
   !      la composante DX.                                                                 !
   !                                                                                        !
   !   -> Conseil & Risque :                                                                !
   !      Verifiez votre mise en données (absence ou surabondance de conditions limites,    !
   !      caractéristiques matériaux licites...).                                           !
   !      Si vous avez deja validé cette mise en données, vous pouvez essayer a la place le !
   !      solveur linéaire MUMPS (mot-cle SOLVEUR/METHODE='MUMPS').                         !
   !----------------------------------------------------------------------------------------


Malheureusement  , étant des étudiants qui viennent tout juste de découvrir le Code ASTER , nous arrivons à lancer des calculs avec la commande AS_RUN  , des cas qui ont été modélisés à travers l'interface graphique de SalomeMeca... mais on a bien l'impression que ces détails dépassent  nos moyens .

Vous trouverez donc ci-joint , tous les fichiers de maillage , de commande , export etc.. pour que vôtre aide puisse être bien plus efficace . (dans un fichier .rar)
N'hésitez pas à demander plus d'indications ou de précisions sur le cas si vous pensez que c'est nécessaire .
Merci d'avance et passez une excellente journée .


Attachments:
tesmed.rar, Size: 16.24 KiB, Downloads: 288

Offline

#2 2017-02-04 10:58:54

stephaneberger
Member
From: Strasbourg (France)
Registered: 2012-10-15
Posts: 70

Re: Lancement calcul ASTER : Pivots nuls et matrices non factorisables

Bonjour,

Votre problème vient de votre maillage qui comporte des noeuds doubles.
Pour voir çà, il faut faire Mesh information en cliquant droit sur le maillage dans salome, puis dernier onglet et cliquer sur les engrenages

Je pense que ces noeuds sont générés lorsque vous faites votre face ZC qui a l'air d'être superposée au maillage.
Vous devez réaliser votre géométrie différemment, en ne superposant pas top et ZC.
Je pense que dans votre cas il faut utiliser la fonction partition qui sert à créer des sous-domaines (par exemple, avoir un noeud géométrique qui sera identique à un noeud du maillage, ou dans votre cas, à créer une sous face (ZC) d'une face principale (top).

Globalement, pour obtenir ce que vous voulez, vous devez partitionner votre volume (le parallélépipède) avec la face ZC et les arêtes d'appui AG et AD. Vous obtiendrez alors une géométrie qu'il faudra exploser en faces et arêtes.

Je vous joins un exemple d'une telle utilisation qui correspond à votre utilisation

Vous pouvez également aller voir le tuto 1 sur cette page
http://salome-platform.org/user-section … -tutorials

Bonne continuation

Stéphane


Attachments:
poutre.hdf, Size: 865.35 KiB, Downloads: 282

Offline

#3 2017-02-04 15:27:23

Youssef T
Member
Registered: 2017-02-03
Posts: 4

Re: Lancement calcul ASTER : Pivots nuls et matrices non factorisables

Merci pour votre réponse Stéphane .

Il faut savoir que la génération de notre maillage doit se faire d'une maniere totalement indépendante de l'interface graphique de SalomeMeca . D'ailleurs c'est pour cela que l'on réprésente la géometrie de notre structure par des points et des lignes  dans le fichier .geo  et plus important c'est pour cela , que l'on réalise les groupes de maillages AG , AD et ZC (  appui gauche , appui droit , zone de chargement) dans le fichier .geo ( géometrie) , ce qui nous permet de pouvoir avoir un control sur le paramètrages de ces donnés et de les ajuster en fonction des entrés de l'utilisateur et par la suite on procéde a la conversion de ce fichier .geo en un fichier .med , par la commande bash  .


os system  gmsh nomfichier.geo -3 -0 nomfichier.med


en gros , on aimerai que tout notre maillage puisse se faire sans l'aide de l'interface de SalomeMeca , maintenant la question est ;
est ce possible d'effectuer une partition  de zone de maillage ( plus précisement de "physical groupes ") mais cette fois en utilisant une fonction du langage Gmsh que l'on pourrais introduire dans le fichier .geo ??

sinon avez vous une autre suggestion ?

merci d'avance pour votre aide . smile

Offline

#4 2017-02-04 16:33:03

stephaneberger
Member
From: Strasbourg (France)
Registered: 2012-10-15
Posts: 70

Re: Lancement calcul ASTER : Pivots nuls et matrices non factorisables

Bonjour

Vous pouvez procéder exactement de la même façon mais avec Salome.

Salome peut lire et exécuter un script python en mode batch. Pour cela il faut utiliser

SALOME_MECA_INSTALL_DIR/salome_meca/appli_V2016/salome -t script.py 

Je vous joins le script python qu m'a permis de faire une poutre comme dans votre exemple.

Pour obtenir un script python, vous pouvez dessiner la géométrie et mailler dans salome puis utiliser la commande
File/Dump Study

Ensuite, vous n'aurez qu'à mettre des variables à la place des valeurs fixes et rejouer votre fichier avec la commande donnée plus haut.

Stephane


Attachments:
poutre3.py, Size: 6.74 KiB, Downloads: 486

Offline

#5 2017-02-04 16:48:58

Youssef T
Member
Registered: 2017-02-03
Posts: 4

Re: Lancement calcul ASTER : Pivots nuls et matrices non factorisables

Encore merci Stephane .

Cela pourrais bien nous aider a trouver une solution , mais afin de bien pouvoir tout paramètrer il faudrait comprendre tous les termes qui sont utilisé dans le python que vous nous avez envoyé ou bien dans ce qui va ètre généré par SalomeMeca comme vous l'avez dit ,  y  a til une documentation que l'on pourrais consulter pour bien comprendre les choses ?

Offline

#6 2017-02-05 09:21:46

stephaneberger
Member
From: Strasbourg (France)
Registered: 2012-10-15
Posts: 70

Re: Lancement calcul ASTER : Pivots nuls et matrices non factorisables

Bonjour,

Pour SALOME :

Il faut vous servir des tutoriels dispo sur le net. Par exemple, cette page. http://www.salome-platform.org/user-sec … -tutorials .
Si vous voulez apprendre la syntaxe, je vous conseille de ''dumper'' le fichier régulièrement lors de vos étude et d'observer les lignes générées. Vous pourrez ainsi comprendre plus facilement la structure globale.

Pour GMSH :

Dans gmsh, je ne crois pas (à vérifier tout de même) qu'il existe la fonction partition comme salome. En revanche, vous pouvez quand même presque tout faire ave gmsh. Pour votre problème, c'est votre géométrie du parallélipède qui n'est pas correcte. Lorsque vous savez que vous allez avoir besoin de sous-surface (ZC dans votre exemple), vous devez construire le parallélépipède à partir de ces sous surfaces.
Dans votre cas, afin d'obtenir votre poutre, vous devriez avoir 2 sous-surfaces supérieures (ZC et le reste) qui forment à elles-deux la surface supérieure complète. Pour la surface inférieure, vous devriez avoir 3 sous-surfaces (du bord gauche à AG, entre AG et AD et de AD au bord droit). Toutes les autres surfaces peuvent être réalisées à partir d'un seul contour. Le volume sera crée à partir des 9 surfaces/sous-surfaces obtenues.

stéphane

Offline