对于许多材料,Abaqus 读取输入文件非常慢

Abaqus read input file very slow for many materials

编辑*:毕竟事实证明这不是导致导入缓慢的原因。然而,给出的答案解释了一种用一个 material 实现不同密度的更好方法。所以我会让这个问题存在。 (缓慢导入是由于 运行 来自 abaqus PDE 的脚本而不是使用文件菜单中的 'Run script' 造成的。特别感谢 droooze 发现了问题)

我正在尝试优化某个 material 的孔隙率分布。因此,我在一个部分中使用 +-500 个不同的 material 执行 abaqus FEA 模拟。模拟本身只需要大约 40 秒,但读取输入文件需要 3 多分钟。 (我使用了 python 脚本来生成 inp 文件)

我正在使用这些命令在输入文件中生成我的 material:

*SOLID SECTION, ELSET = ES_Implant_MAT0 ,MATERIAL=Implant_material0
*ELSET, ELSET=ES_Implant_MAT336
6,52,356,376,782,1793,1954,1984,3072
*MATERIAL, NAME = Implant_material0
*DENSITY
4.43
*ELASTIC
110000, 0.3

知道为什么这么慢吗?有没有更有效的方法来减少加载输入文件的时间?

如果你的 ~500 material 都是同一类(例如,所有线弹性各向同性质量密度),那么你可以将它们全部折叠成一个 material 然后定义一个分布 table 将这些 material 直接分发到实例元素标签上。

语法:

(在 Part 定义中的某处,在 section 下)

*SOLID SECTION, ELSET = ES_Implant_MAT0 ,MATERIAL=Implant_material0

(在 Assembly 定义的某处;part= 应该引用上面部分的名称)

**  
**
** ASSEMBLY
**
*Assembly, name=Assembly
**  
*Instance, name=myinstance, part=mypart
*End Instance
**  
*Elset, elset=ES_Implant_MAT0, instance=myinstance
1,2,...

(在 Materials 定义中的某处;有关关键字 *DISTRIBUTION TABLE*DISTRIBUTION,请参阅 Abaqus 关键字参考指南)

** 
** MATERIALS
** 
*DISTRIBUTION TABLE, NAME=IMPLANT_MATERIAL0_ELASTIC_TABLE
         MODULUS,RATIO
*DISTRIBUTION, NAME=Implant_material0_elastic, LOCATION=element, TABLE=IMPLANT_MATERIAL0_ELASTIC_TABLE
        ,110000,0.3 # First line is some default value
myinstance.1,110000,0.3 # syntax: instance name [dot] instance element label
myinstance.2,110000,0.3 # these elements currently use the material properties assigned to `ELSET = ES_Implant_MAT0`. You can define the material properties belonging to other element sets in this same table, making sure you reference the element label correctly.
...
*DISTRIBUTION TABLE, NAME=IMPLANT_MATERIAL0_DENSITY_TABLE
         DENSITY
*DISTRIBUTION, NAME=Implant_material0_density, LOCATION=element, TABLE=IMPLANT_MATERIAL0_DENSITY_TABLE
        ,4.43 # Default value
myinstance.1,4.43
myinstance.2,4.43
...
*Material, name=Implant_material0
*Elastic
 Implant_material0_elastic # Distribution name
*Density
 Implant_material0_density # Distribution name