abaqus中如何在不选择物体的情况下输出各时间点的最大应力值
In abaqus, how to output the maximum stress value at each time point without selecting an object
在压缩测试中,如何在不selecting object
的情况下输出每个时间点的最大应力值
步骤&问题
我创建了一个场输出,MISESMAX maximum mises equivalent stress-submit this job-creat XY data-click ODB field output- select MISESMAX(我在这部分选择了积分点)然后我保存,但是abaqus提示“至少应选择一个实体。
目标
我想在XY数据中输出每一步的最大应力值,但是每一步的最大应力值的面积会不同,所以如何在没有面积的情况下输出XY值。select
为了创建 XY data
,您必须 select 模型的部分或全部部分。因此来自 Abaqus 的错误。我发现此方法对您的应用程序来说很慢。
或者,您可以使用以下方法:
在 Abaqus/CAE 中:从 Report
菜单 -> select Field Output
-> select 合适的 Step/Frame
-> select MISESMAX variable
-> select position
(如果你想要节点结果,那么 select Unique Nodal
) -> 在设置选项卡中检查 Column Min/Max
选项。
请注意,这只会将一帧的场输出数据写入文件。在文件的末尾,您将看到最大值及其位置(如果您 select 编辑的位置是 Unique Nodal
,则会写入节点标签。)。
同样,您可以为步骤的每一帧重复此过程。或者您可以使用以下代码:
import displayGroupOdbToolset as dgo
import odbAccess
odbName = 'example.odb'; outFile = 'example.dat'
odb = odbAccess.openOdb(path=odbName)
session.viewports['Viewport: 1'].setValues(displayedObject=odb)
leaf = dgo.Leaf(leafType=DEFAULT_MODEL)
session.viewports['Viewport: 1'].odbDisplay.displayGroup.replace(leaf=leaf)
for stp in odb.steps.keys():
stpNum = odb.steps[stp].number
tframe = len(odb.steps['Step-1'].frames) - 1
session.writeFieldReport(fileName=outFile, append=ON,
sortItem='Node Label', odb=odb, step=stpNum, frame=tframe, outputPosition=NODAL,
variable=(('S', INTEGRATION_POINT, ((INVARIANT, 'Mises'), )), ))
请根据您的字段输出数据将上述代码中的参数更改为 variable
选项。
在帮助文档中找到了有效的方法
找出 von Mises 应力的最大值
https://help.3ds.com/2020/english/dssimulia_established/simacaecmdrefmap/simacmd-c-odbintroexamaxmisespyc.htm?contextscope=all
在压缩测试中,如何在不selecting object
的情况下输出每个时间点的最大应力值步骤&问题 我创建了一个场输出,MISESMAX maximum mises equivalent stress-submit this job-creat XY data-click ODB field output- select MISESMAX(我在这部分选择了积分点)然后我保存,但是abaqus提示“至少应选择一个实体。
目标 我想在XY数据中输出每一步的最大应力值,但是每一步的最大应力值的面积会不同,所以如何在没有面积的情况下输出XY值。select
为了创建 XY data
,您必须 select 模型的部分或全部部分。因此来自 Abaqus 的错误。我发现此方法对您的应用程序来说很慢。
或者,您可以使用以下方法:
在 Abaqus/CAE 中:从 Report
菜单 -> select Field Output
-> select 合适的 Step/Frame
-> select MISESMAX variable
-> select position
(如果你想要节点结果,那么 select Unique Nodal
) -> 在设置选项卡中检查 Column Min/Max
选项。
请注意,这只会将一帧的场输出数据写入文件。在文件的末尾,您将看到最大值及其位置(如果您 select 编辑的位置是 Unique Nodal
,则会写入节点标签。)。
同样,您可以为步骤的每一帧重复此过程。或者您可以使用以下代码:
import displayGroupOdbToolset as dgo
import odbAccess
odbName = 'example.odb'; outFile = 'example.dat'
odb = odbAccess.openOdb(path=odbName)
session.viewports['Viewport: 1'].setValues(displayedObject=odb)
leaf = dgo.Leaf(leafType=DEFAULT_MODEL)
session.viewports['Viewport: 1'].odbDisplay.displayGroup.replace(leaf=leaf)
for stp in odb.steps.keys():
stpNum = odb.steps[stp].number
tframe = len(odb.steps['Step-1'].frames) - 1
session.writeFieldReport(fileName=outFile, append=ON,
sortItem='Node Label', odb=odb, step=stpNum, frame=tframe, outputPosition=NODAL,
variable=(('S', INTEGRATION_POINT, ((INVARIANT, 'Mises'), )), ))
请根据您的字段输出数据将上述代码中的参数更改为 variable
选项。
在帮助文档中找到了有效的方法 找出 von Mises 应力的最大值 https://help.3ds.com/2020/english/dssimulia_established/simacaecmdrefmap/simacmd-c-odbintroexamaxmisespyc.htm?contextscope=all