Je travaille sur le plugin Abaqus 6.14 qui m'aiderait dans ma thèse d'ingénieur, que j'écris en Python. Selon Abaqus scripting reference guide il est possible d'importer des matières de bases de données de sortie (fichiers * .odb) en appelant:Est-il possible d'importer du matériel de la bibliothèque de matériaux dans Abaqus CAE en utilisant des scripts?
from abaqus import mdb
mdb.models[name].materialsFromOdb(filename)
Cependant, comme Abaqus permet à l'utilisateur d'exporter/matériaux d'importation/de bibliothèques de matériaux relativement légers (* .lib fichiers) et les partager entre les modèles Je voudrais importer les matériaux de ces fichiers plutôt que de, * souvent volumineux, *. Bien sûr, cela peut être fait manuellement avec facilité, bien que je veux réduire le nombre de tâches répétitives avec mon plugin, car j'ai besoin de faire des dizaines de simulations sur des modèles assez similaires, mais avec des matériaux différents et d'autres paramètres. Je suis conscient que je pourrais également fournir les matériaux nécessaires dans le fichier modèle * .cae, bien que cela puisse être très gênant si je devais importer manuellement de nouveaux matériaux à des dizaines de modèles ou que je devais mettre à jour les propriétés du matériau existant. Qu'est-ce que je cherche est une solution de contournement permettant d'importer des matériaux de bibliothèques de matériaux vers des modèles mdb Abaqus avec des scripts Python, mais en évitant d'implémenter l'analyseur de fichiers * .lib personnalisé, si une telle solution existe.
Merci, fonctionne exactement comme prévu. Pour être précis, la méthode que vous avez mentionnée est materials.createMaterialFromDataString (modelname, materialname, version, data). Après le dépilage du fichier de bibliothèque, vous aurez une liste de 5-tuples: le dernier élément de tuple est un dictionnaire et sa propriété 'data' devrait être passée comme argument de données à la fonction. –