得到結(jié)果
S,U,RF,LE這四個value的成員名稱竟然完全一模一樣,里面竟然都有mises(應(yīng)該只有應(yīng)力才有mises應(yīng)力的說法)。這實(shí)在是說不通,唯一說得通的可能是,這些value的成員都是應(yīng)力。但經(jīng)過實(shí)驗(yàn)發(fā)現(xiàn)他們各自不相等,不可能都代表應(yīng)力。 但根據(jù)官網(wǎng)這個說法,那么實(shí)際上確實(shí)都是應(yīng)力,只不過有的不合理
進(jìn)行個數(shù)統(tǒng)計(jì)的結(jié)果:
得到
3200
1681
3200
1681
就個人感覺,官方文檔似乎也沒有很詳細(xì)的把a(bǔ)baqus script每個涉及到的內(nèi)置的結(jié)構(gòu)體講的很清楚。 這里還有一本書 是講解這方面知識的。
那么,提取位移,應(yīng)變等正確的辦法是什么呢?
v.data。就可以提取出想要的3個自由度的位移了 應(yīng)變出了一點(diǎn)問題: field Output request里面明明有E,但是最后
原來在這里 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
根據(jù)這個說法,那么實(shí)際上確實(shí)都是應(yīng)力。
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') # 這一行仍然報(bào)錯。
經(jīng)過這三行的實(shí)驗(yàn),成功確定了 elementfieldvalues.data
第一個元素(共四個元素)是S11,
第四個元素是S12,
第二個元素是S22,
第三個元素是S33。
S13,S23兩個直接就不存在
print S_output.getSubset(region=ElementSet[i]).values # 這一行返回2個 <type 'FieldValue'> array
我推測為什么fieldValueArray有2個元素,是因?yàn)橐粋€是全局的,一個是局部的。經(jīng)過實(shí)驗(yàn)確認(rèn)第一個是全局的。 通過自己搭模型也可以確認(rèn)很多事情——例如values[0]是全局的,values[1]不知道是什么東西,等等. 現(xiàn)在明確了 values的成員是不同積分點(diǎn)的輸出 。 另外,abaqus很特殊的一點(diǎn)是:其位移輸出是全局坐標(biāo)系下的量,但是對復(fù)合材料,**它的應(yīng)力和應(yīng)變輸出都是主方向坐標(biāo)軸的量。**對于普通材料,師兄給我演示的例子顯示似乎輸出的是全局坐標(biāo)系的量
哈哈,這個不是和式分解嗎?(abaqus theory guide) S4R單元在我本次實(shí)驗(yàn)3方向的應(yīng)力和應(yīng)變似乎都被強(qiáng)制設(shè)置為0. ? ? ? ?
在撤去BC-3(z=0),以及增加橫向載荷(magnitude=10)后,靜力分析的結(jié)果不再收斂。調(diào)整magnitude=1后,結(jié)果收斂,而且εz\varepsilon_z ε z ? 即ε33\varepsilon_{33} ε 3 3 ? 仍然為0.如下圖 通過下圖這段話,結(jié)合上面的應(yīng)力、應(yīng)變均為0的實(shí)驗(yàn)結(jié)果,可以做這樣一個判斷:abaqus認(rèn)為我們使用的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})
這個圖是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中增加數(shù)據(jù)。這個方法是在創(chuàng)建odb時使用的,像我只是讀取job默認(rèn)生成的odb文件(只是讀取odb),用不到addData方法。
總結(jié)
以上是生活随笔 為你收集整理的abaqus script提取应力应变位移 odb学习 addData 的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔 網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔 推薦給好友。