定义Abaqus模型的外表面并计算距离积分点最近的表面

问题描述 投票:0回答:2

我有一个问题要解决数周,但没有结果。在Abaqus中进行模拟之后,一旦用各自的坐标导出了每个积分点的应力,就需要为每个积分点计算距最近表面的距离。当然,几何形状可以任意复杂。

[我首先想到的是确定属于模型表面的节点的坐标(其想法是在不确定先验表面或集合的情况下进行此操作。]]

我在另一个线程中找到了这段代码:
p = mdb.models[name].parts[name]
surf_nodes = []
for face in p.elementFaces():
    if len(face.getElements()) == 1:
        # Then the face has only one associated element, ie it's on the surface.
        # Get the nodes on the face:
        surf_nodes.extend([node for node in face.getNodes() if node not in surf_nodes])


问题是当我大声播放脚本时,我收到此消息:

TypeError:MeshFaceArray对象不可调用。

您知道我该如何解决这个问题?当然,您是否知道如何实现我的最终目标?

真的非常感谢您:)

我有一个问题要解决数周,但没有结果。在Abaqus中进行模拟后,一旦导出了每个积分点的坐标并具有各自的坐标,则I ...

python abaqus
2个回答
0
投票

尝试一下,让我知道它是否不起作用,那么我可以为您提供进一步的帮助。


0
投票

它不起作用。我的意思是我得到了一些节点,但这些节点不仅是表面上的节点。例如,在我的模型中,我有8800个节点,启动脚本后,surf_nodes的长度约为7600。此外,从脚本的输出中选择一些节点,您可以清楚地看到它们位于模型的内部。 >

© www.soinside.com 2019 - 2024. All rights reserved.