日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

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

發(fā)布時間:2023/12/20 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 abaqus script提取应力应变位移 odb学习 addData 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

得到結(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,但是最后

# E_output = o1.steps['Step-1'].frames[-1].fieldOutputs['E'] # 報(bào)錯——根本沒有E,即使在fieldoutput中增加E request,最后字段里也沒有,但是好消息是,有EE。我大概明白這個邏輯了,就是在abaqus里面E選上之后,最后就會同時有PE,EE.但似乎也不太對。。。

原來在這里
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}ε33?仍然為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)容還不錯,歡迎將生活随笔推薦給好友。