前面某期文章提到过ABAQUS 中利用Python脚本 进行后处理数据 的提取,这个问题有必要做些讨论和总结。
在ABAQUS中,利用Python脚本做简单的处理是非常方便和易懂上手的,这里做简单介绍,参考帮助文档ABAQUS Scripting User's Guide 9.5:Reading from an output database,首先清楚后处理ODB的对象模型如图1所示,基于此我们可以利用面向对象编程思想进行Python脚本的编写。
图1 odb object models
我们知道在建立分析步的时候存在场变量 和历史输出变量,这里首先针对场变量来讲解。首先假设对节点应力 (S)/位移 (U)做提取,可以看到fieldoutput输出情况,参考帮助代码:
for fieldName in lastFrame.fieldOutputs.keys():
print fieldName
需要注意的是,在场变量的输出状态下,参考文档可以看到下面的说明,也就是说应力值的提取是针对积分点 的,而位移输出则针对节点。
S : Stress components
Type: TENSOR_2D_PLANAR
Position: INTEGRATION_POINT
U : Spatial displacement
Type: VECTOR
Position: NODAL
以位移提取为例,整个参考代码如图2得到作者使用实例的节点号与合位移的输出结果:
图2 代码及结果
同样可以得到积分点处的应力值,但是有个问题,获得积分点的应力值之后,如何映射到节点上面,这个就需要额外的插值算法处理。所以是不是就可以理解为ABAQUS是不能直接提取到节点处的应力值的。
另外,针对historyoutput的提取,同样可以参考文档进行一步一步的编写,提取对应区域的物理量,大家可以尝试。
以上为针对Python对后处理中某些物理量提取的简单说明,抛砖引玉,希望对大家有用。
祝大家周末愉快,多多支持!
另欢迎关注公众号,更多文章后续将发布于weixin公众号:cae_space
扫一扫关注。
武汉格发信息技术有限公司,格发许可优化管理系统可以帮你评估贵公司软件许可的真实需求,再低成本合规性管理软件许可,帮助贵司提高软件投资回报率,为软件采购、使用提供科学决策依据。支持的软件有: CAD,CAE,PDM,PLM,Catia,Ugnx, AutoCAD, Pro/E, Solidworks ,Hyperworks, Protel,CAXA,OpenWorks LandMark,MATLAB,Enovia,Winchill,TeamCenter,MathCAD,Ansys, Abaqus,ls-dyna, Fluent, MSC,Bentley,License,UG,ug,catia,Dassault Systèmes,AutoDesk,Altair,autocad,PTC,SolidWorks,Ansys,Siemens PLM Software,Paradigm,Mathworks,Borland,AVEVA,ESRI,hP,Solibri,Progman,Leica,Cadence,IBM,SIMULIA,Citrix,Sybase,Schlumberger,MSC Products...