Bonjour,
Après avoir lu un fichier maillage au format MED, j'en extrais la liste des noeuds sous la forme d'un tableau avec la commande suivante :
coords = mesh.getCoordinates().toNumpy()
Maintenant, dans un objectif de chargement particulier noeud par noeud, j'ai besoin d'accéder à la correspondance entre ces noeuds et leur nom dans le maillage correspondant au format ASTER : N1, N2, etc.
Voilà ce que je faisais "avant " :
mesh = partition.MAIL_PY()
mesh.FromAster('MAIL')
Noms des mailles
linomma = np.array(mesh.correspondance_mailles)
Noms des noeuds
linomno = np.array(mesh.correspondance_noeuds)
Ces commandes n'existent plus.
J'ai essayé avec MAIL.sdj.NOMNOE, mais ça ne fonctionne pas.
Je ne trouve pas non plus dans les méthodes Python ici : https://codeaster.readthedocs.io/en/latest/devguide/code_aster/Objects/Objects.html
J'ai besoin des ces noms dans un calcul par phases successives pour une commande LIAISON_DDL dans AFFE_CHAR_MECA du type :
for n1, n2, d1, d2 in zip(grnu1, grnu2, u, v):
mfa['LIAISON_DDL'].append({'NOEUD'🙁linomno[n1],linomno[n2]), 'DDL'🙁ddl, ddl), 'COEF_MULT'🙁1.,-1.), 'COEF_IMPO'🙁d1 - d2)*ratio})
Puis :
LIAIS[phase+1] = AFFE_CHAR_MECA(
MODELE = MODEL[phase+1],
**mfa
);
Pour l'instant, j'ai supposé que les numéros suivent l'ordre des noeuds mais cela ne me satisfait pas.
Merci pour votre aide !
Cordialement,
Michel