许可优化
产品
解决方案
服务支持
关于
软件库
当前位置:服务支持 >  软件文章 >  abaqus script提取应力应变位移 odb学习 addData

abaqus script提取应力应变位移 odb学习 addData

阅读数 6
点赞 0
article_banner

在这里插入图片描述得到结果

在这里插入图片描述
S,U,RF,LE这四个value的成员名称竟然完全一模一样,里面竟然都有mises(应该只有应力才有mises应力的说法)。这实在是说不通,唯一说得通的可能是,这些value的成员都是应力。但经过实验发现他们各自不相等,不可能都代表应力。
但根据官网这个说法,那么实际上确实都是应力,只不过有的不合理

进行个数统计的结果:

在这里插入图片描述得到

3200
1681
3200
1681
  • 1
  • 2
  • 3
  • 4

在这里插入图片描述
就个人感觉,官方文档似乎也没有很详细的把abaqus script每个涉及到的内置的结构体讲的很清楚。
这里还有一本书
在这里插入图片描述
是讲解这方面知识的。

那么,提取位移,应变等正确的办法是什么呢?
在这里插入图片描述

v.data。就可以提取出想要的3个自由度的位移了
应变出了一点问题:
field Output request里面明明有E,但是最后

# E_output = o1.steps['Step-1'].frames[-1].fieldOutputs['E'] # 报错——根本没有E,即使在fieldoutput中增加E request,最后字段里也没有,但是好消息是,有EE。我大概明白这个逻辑了,就是在abaqus里面E选上之后,最后就会同时有PE,EE.但似乎也不太对。。。

python
运行
  • 1
  • 2

原来在这里
http://130.149.89.49:2080/v2016/books/ker/default.htm?startat=book01.html#ker
有详尽的介绍

FieldValue object
http://130.149.89.49:2080/v2016/books/ker/default.htm?startat=book01.html#ker

根据这个说法,那么实际上确实都是应力。

abaqus里面的 conjugate data 是指
the imaginary portion of a complex result

最终答案:
通过查文档以及
https://www.cnpython.com/qa/171659
得到

S11_output = o1.steps['Step-1'].frames[-1].fieldOutputs['S'].getScalarField(componentLabel='S11') # 这一行仍然报错。
  • 1
经过这三行的实验,成功确定了 elementfieldvalues.data 
第一个元素(共四个元素)是S11,
第四个元素是S12,
第二个元素是S22,
第三个元素是S33。
S13,S23两个直接就不存在
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
print S_output.getSubset(region=ElementSet[i]).values # 这一行返回2个 <type 'FieldValue'> array
  • 1

在这里插入图片描述

我推测为什么fieldValueArray有2个元素,是因为一个是全局的,一个是局部的。经过实验确认第一个是全局的。
通过自己搭模型也可以确认很多事情——例如values[0]是全局的,values[1]不知道是什么东西,等等.
现在明确了 values的成员是不同积分点的输出
另外,abaqus很特殊的一点是:其位移输出是全局坐标系下的量,但是对复合材料,**它的应力和应变输出都是主方向坐标轴的量。**对于普通材料,师兄给我演示的例子显示似乎输出的是全局坐标系的量

哈哈,这个不是和式分解吗?(abaqus theory guide)
在这里插入图片描述
S4R单元在我本次实验3方向的应力和应变似乎都被强制设置为0.
 
 
 
 

在撤去BC-3(z=0),以及增加横向载荷( magnitude =10)后,静力分析的结果不再收敛。调整magnitude=1后,结果收敛,而且εz\varepsilon_zεzε33\varepsilon_{33}ε33仍然为0.如下图
在这里插入图片描述通过下图这段话,结合上面的应力、应变均为0的实验结果,可以做这样一个判断:abaqus认为我们使用的S4R单元是thin-only shell elements.
在这里插入图片描述

在这里插入图片描述
http://130.149.89.49:2080/v2016/books/usb/default.htm?startat=pt06ch29s06alm19.html#usb-elm-eusingshellsection
这是这个页面有用的地方——如何定义泊松比:
在这里插入图片描述OdbFile可以用来生成模型
在这里插入图片描述odb的显示问题
在这里插入图片描述原来odb的信息还可以直接在窗口查看(如下,查看了所有的fieldoutput,果然没有E)
在这里插入图片描述控制台的输出:

hahaha
({'baseElementTypes': ('S4R',), 'bulkDataBlocks': ' object', 'componentLabels': (), 'description': 'Active yield flag', 'isComplex': OFF, 'locations': 'FieldLocationArray object', 'name': 'AC YIELD', 'type': SCALAR, 'validInvariants': (), 'values': 'FieldValueArray object'})
({'baseElementTypes': (), 'bulkDataBlocks': ' object', 'componentLabels': ('CF1', 'CF2', 'CF3'), 'description': 'Point loads', 'isComplex': OFF, 'locations': 'FieldLocationArray object', 'name': 'CF', 'type': VECTOR, 'validInvariants': (MAGNITUDE,), 'values': 'FieldValueArray object'})
({'baseElementTypes': (), 'bulkDataBlocks': ' object', 'componentLabels': ('CM1', 'CM2', 'CM3'), 'description': 'Point moments', 'isComplex': OFF, 'locations': 'FieldLocationArray object', 'name': 'CM', 'type': VECTOR, 'validInvariants': (MAGNITUDE,), 'values': 'FieldValueArray object'})
({'baseElementTypes': ('S4R',), 'bulkDataBlocks': ' object', 'componentLabels': ('LE11', 'LE22', 'LE33', 'LE12'), 'description': 'Logarithmic strain components', 'isComplex': OFF, 'locations': 'FieldLocationArray object', 'name': 'LE', 'type': TENSOR_3D_PLANAR, 'validInvariants': (MAX_INPLANE_PRINCIPAL, MIN_INPLANE_PRINCIPAL, OUTOFPLANE_PRINCIPAL, MAX_PRINCIPAL, MID_PRINCIPAL, MIN_PRINCIPAL), 'values': 'FieldValueArray object'})
({'baseElementTypes': ('S4R',), 'bulkDataBlocks': ' object', 'componentLabels': ('PE11', 'PE22', 'PE33', 'PE12'), 'description': 'Plastic strain components', 'isComplex': OFF, 'locations': 'FieldLocationArray object', 'name': 'PE', 'type': TENSOR_3D_PLANAR, 'validInvariants': (MAX_INPLANE_PRINCIPAL, MIN_INPLANE_PRINCIPAL, OUTOFPLANE_PRINCIPAL, MAX_PRINCIPAL, MID_PRINCIPAL, MIN_PRINCIPAL), 'values': 'FieldValueArray object'})
({'baseElementTypes': ('S4R',), 'bulkDataBlocks': ' object', 'componentLabels': (), 'description': 'Equivalent plastic strain', 'isComplex': OFF, 'locations': 'FieldLocationArray object', 'name': 'PEEQ', 'type': SCALAR, 'validInvariants': (), 'values': 'FieldValueArray object'})
({'baseElementTypes': ('S4R',), 'bulkDataBlocks': ' object', 'componentLabels': (), 'description': 'Magnitude of plastic strain', 'isComplex': OFF, 'locations': 'FieldLocationArray object', 'name': 'PEMAG', 'type': SCALAR, 'validInvariants': (), 'values': 'FieldValueArray object'})
({'baseElementTypes': (), 'bulkDataBlocks': ' object', 'componentLabels': ('RF1', 'RF2', 'RF3'), 'description': 'Reaction force', 'isComplex': OFF, 'locations': 'FieldLocationArray object', 'name': 'RF', 'type': VECTOR, 'validInvariants': (MAGNITUDE,), 'values': 'FieldValueArray object'})
({'baseElementTypes': (), 'bulkDataBlocks': ' object', 'componentLabels': ('RM1', 'RM2', 'RM3'), 'description': 'Reaction moment', 'isComplex': OFF, 'locations': 'FieldLocationArray object', 'name': 'RM', 'type': VECTOR, 'validInvariants': (MAGNITUDE,), 'values': 'FieldValueArray object'})
({'baseElementTypes': ('S4R',), 'bulkDataBlocks': ' object', 'componentLabels': ('S11', 'S22', 'S33', 'S12'), 'description': 'Stress components', 'isComplex': OFF, 'locations': 'FieldLocationArray object', 'name': 'S', 'type': TENSOR_3D_PLANAR, 'validInvariants': (MISES, MAX_INPLANE_PRINCIPAL, MIN_INPLANE_PRINCIPAL, OUTOFPLANE_PRINCIPAL, MAX_PRINCIPAL, MID_PRINCIPAL, MIN_PRINCIPAL, TRESCA, PRESS, INV3), 'values': 'FieldValueArray object'})
({'baseElementTypes': (), 'bulkDataBlocks': ' object', 'componentLabels': ('U1', 'U2', 'U3'), 'description': 'Spatial displacement', 'isComplex': OFF, 'locations': 'FieldLocationArray object', 'name': 'U', 'type': VECTOR, 'validInvariants': (MAGNITUDE,), 'values': 'FieldValueArray object'})
({'baseElementTypes': (), 'bulkDataBlocks': ' object', 'componentLabels': ('UR1', 'UR2', 'UR3'), 'description': 'Rotational displacement', 'isComplex': OFF, 'locations': 'FieldLocationArray object', 'name': 'UR', 'type': VECTOR, 'validInvariants': (MAGNITUDE,), 'values': 'FieldValueArray object'})
['baseElementTypes', 'bulkDataBlocks', 'componentLabels', 'description', 'isComplex', 'locations', 'name', 'type', 'validInvariants', 'values']
<type 'FieldValue'>
['baseElementType', 'conjugateData', 'conjugateDataDouble', 'data', 'dataDouble', 'elementLabel', 'face', 'instance', 'integrationPoint', 'inv3', 'localCoordSystem', 'localCoordSystemDouble', 'magnitude', 'maxInPlanePrincipal', 'maxPrincipal', 'midPrincipal', 'minInPlanePrincipal', 'minPrincipal', 'mises', 'nodeLabel', 'outOfPlanePrincipal', 'position', 'precision', 'press', 'sectionPoint', 'tresca', 'type']
['baseElementType', 'conjugateData', 'conjugateDataDouble', 'data', 'dataDouble', 'elementLabel', 'face', 'instance', 'integrationPoint', 'inv3', 'localCoordSystem', 'localCoordSystemDouble', 'magnitude', 'maxInPlanePrincipal', 'maxPrincipal', 'midPrincipal', 'minInPlanePrincipal', 'minPrincipal', 'mises', 'nodeLabel', 'outOfPlanePrincipal', 'position', 'precision', 'press', 'sectionPoint', 'tresca', 'type']
['baseElementType', 'conjugateData', 'conjugateDataDouble', 'data', 'dataDouble', 'elementLabel', 'face', 'instance', 'integrationPoint', 'inv3', 'localCoordSystem', 'localCoordSystemDouble', 'magnitude', 'maxInPlanePrincipal', 'maxPrincipal', 'midPrincipal', 'minInPlanePrincipal', 'minPrincipal', 'mises', 'nodeLabel', 'outOfPlanePrincipal', 'position', 'precision', 'press', 'sectionPoint', 'tresca', 'type']
['baseElementType', 'conjugateData', 'conjugateDataDouble', 'data', 'dataDouble', 'elementLabel', 'face', 'instance', 'integrationPoint', 'inv3', 'localCoordSystem', 'localCoordSystemDouble', 'magnitude', 'maxInPlanePrincipal', 'maxPrincipal', 'midPrincipal', 'minInPlanePrincipal', 'minPrincipal', 'mises', 'nodeLabel', 'outOfPlanePrincipal', 'position', 'precision', 'press', 'sectionPoint', 'tresca', 'type']
3200
1681
3200
1681
0
({'coordinates': array([254.0, 247.649993896484, 0.0], 'f'), 'instanceName': 'MENGPI_REAL-1', 'label': 1640})
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25

这个图是shell element里面的thickness change,在membrane单元里也有类似的thickness change
在这里插入图片描述

20220219:终于被我找到藏在这里——

For plane stress, membrane, and shell elements, only the in-plane tensor components (11, 22, and
12 components) are stored by Abaqus/Standard. The out-of-plane direct component for stress (S33) is
reported as zero to the output database as expected, and the out-of-plane component of strain (E33) is
reported as zero even though it is not. This is because the thickness direction is computed based on
section properties rather than at the material level. The out-of-plane components can be requested for
field-type output and cannot be requested for history-type output. The out-of-plane stress components
are not reported to the data (.dat) file or to the results (.fil) file.

此外,Script User Guide 里搜索S11,或component或试试其他分量名称可以找到一张完整分量的表格。

addData方法:

向odb中增加数据。这个方法是在创建odb时使用的,像我只是读取job默认生成的odb文件(只是读取odb),用不到addData方法。


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

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

* 公司名称:

姓名不为空

手机不正确

公司不为空