用户登录

你在这里

Abaqus Python:读取字段帧数据的odb文件

你好,

我正在运行一个python脚本,对Abaqus odb文件做一些后期处理。当在Abaqus/Explicite输出文件上运行它时,我发现它花费了比平时更多的时间。在计算完运行时间后,我惊讶地发现,最耗时的事情就是读取每一帧的时间值。我有下面的脚本。

def main ():

odb = openOdb (F: /脚本/…/…/ Example.odb”)

stkeys = odb.steps.keys ()

stp = odb.steps [stkeys [1]]

纳= stp.frames

frm_T=[(i,x. framevalue) for i,x in enumerate(frms)]

如果__name__ == "__main__":

main ()


对于一个特定的odb文件(大小50MB),有50个输出帧。读取每一帧的“frameValue”大约需要9~10秒。我有一个非常快的处理器,有64GB内存,所以这也不是一个问题。但它在I/O中需要时间,每次我必须获得一个frameValue,它似乎再次提取数据,并花费相同的时间。

我已经尝试了这个代码的许多版本,但没有任何区别。即使我试着打印纳“这需要同样多的时间。我需要解决这个问题。我可以看到其他软件,如Hypermesh, FE-SAFE在10秒内完全读取这个ODB文件,包括每个节点和元素的数据。而且它只有50MB的文件,所以我必须做一些事情来获取内存中的信息,而不是花费时间在I/O上。

非常感谢你的帮助

哈斯。

评论

弗兰克·里希特的照片

订阅及寻求协助
ABAQUS邮件列表
https://groups.yahoo.com/group/ABAQUS

http://www.eng-tips.com/threadminder.cfm?pid=799
或者在ResearchGate论坛上。

在发布之前搜索列表的存档。

祝你好运

弗兰克

我确实在这个话题上搜索了很多。但没有发现任何相关信息。那时我问有没有人用不同的方法来解决这个问题。

谢谢你的建议。

订阅“Abaqus Python:读取字段帧数据的odb文件”的评论

最近的评论

更多的评论

辛迪加

订阅辛迪加