如何使用Abapy提取应变及其坐标?

时间:2018-04-17 09:53:40

标签: python abaqus

我正在尝试从obd文件中提取Strain数据。 我发现我可以使用这些命令行:

odb.steps [stepname] .frames [-1] .fieldOutputs [' LE']。values [1] .data [0]

odb.steps [stepname] .frames [-1] .fieldOutputs [' LE']。values [1] .data [1]

访问LE11和LE22。 但是我如何得到这些菌株所在的位置? 用其他词语;如何获得与这些值相关的坐标?

亲切的问候, 西奥

1 个答案:

答案 0 :(得分:1)

实际上比你想象的更乏味。我将在这里概述:

假设您已请求集成点字段数据,请从

获取元素和集成点
AccessToken

获取元素和连接:

  val=odb.steps[ stepname ].frames[-1].fieldOutputs['LE'].values[1]
  lab=val.elementLabel
  ip=val.integrationPoint
然后是节点坐标..

  el=instance.getElementFromLabel(lab)
  c=el.connectivity

最后,您需要从节点坐标和元素类型/形状函数的知识手动计算积分点坐标。如果你想要变形位置,你需要抓住节点位移并进行数学运算。

如果您请求节点平均字段值,但是相同的基本过程会更简单。

注意根据您的输出请求,您可以同时拥有积分点和节点数据。在这种情况下,您需要检查 instance.getNodeFromLabel(c[0]).coordinates 以查看您的类型。