当前位置:服务支持 >  软件文章 >  Abaqus脚本读取结果创建新输出场教程

Abaqus脚本读取结果创建新输出场教程

阅读数 12
点赞 0
article_banner

Abaqus利用脚本读取结果并创建新的输出场

长安CAE


Abaqus的后处理有时候采用Python脚本会比较方便,此次实例通过脚本语言读取已经存在的Odb结果文件,并且通过程序实现不同载荷步下的结果场数据运算,以得到新的场数据,并显示其云图。

该段程序主要以下功能:

1)打开结果文件;

2)创建载荷步对象

3)创建帧对象

4)读取位移和应力场

5)进行场数据运算

6)设置默认的变形

7)选择创建的应力场作为场输出

8)显示云图

代码解释如下;

 

from abaqus import *

from abaqusConstants import *

import visualization

#引入相关模块

 

myViewport = session.Viewport(name='Superposition example',

    origin=(10, 10), width=150, height=100)

#创建一个视图窗口,通过Viewport函数,名称是Superposition example,这个视图被赋值给变量myViewport

 

#打开已经存在的odb结果文件,通过path指定odb文件,此文件需要在工作目录下面

myOdb = visualization.openOdb(path='viewer_tutorial.odb')

 

#在当前视图窗口显式结果对象,设置默认的plot对象

myViewport.setValues(displayedObject=myOdb)

 

#创建两个载荷步对象,firstStepsecondStep

firstStep = myOdb.steps['Step-1']

secondStep = myOdb.steps['Step-2']

 

#创建两个帧对象,-1表示最后一帧

frame1 = firstStep.frames[-1]

frame2 = secondStep.frames[-1]

 

#读取两个载荷步最后一帧的位移场,赋值给displacement1displacement2

displacement1 = frame1.fieldOutputs['U']

displacement2 = frame2.fieldOutputs['U']

 

#读取两个载荷步最后一帧的应力场,赋值给stress1stress2

stress1 = frame1.fieldOutputs['S']

stress2 = frame2.fieldOutputs['S']

 

#创建新的输出场,两个位移场和应力场之差作为新的输出场

deltaDisplacement = displacement2 - displacement1

deltaStress = stress2 - stress1

 

#设置形状变形是依据新的位移场,Abaqus通过这个变量来显示变形形状

myViewport.odbDisplay.setDeformedVariable(deltaDisplacement)

 

#创建新的应力场云图,场数据是新的应力场,输出位置是积分点,显式其中的Mises应力

myViewport.odbDisplay.setPrimaryVariable(field=deltaStress,

    outputPosition=INTEGRATION_POINT,

    refinement=(INVARIANT, 'Mises'))

 

#显式新的Mises云图,并且在变形后的图形上显示,Deformation打开

myViewport.odbDisplay.display.setValues(plotState=(

                                          CONTOURS_ON_DEF,))


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删
相关文章
QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空