580x
005367
2023-03-23

使用 Python 读取节点变形

如何使用 Python 程序读取某个节点处的变形?


回复:

在示例程序中,首先使用 IPE 200 创建悬臂梁。 加载 3.5 kN 的杆件荷载并进行计算。

在第 34 行访问该表:

ResultTables.NodesDeformations ()方法需要 3 个参数。 首先,确定要读取哪种类型的结果。 结果

  • 荷载工况
  • 荷载组合
  • 结果组合
  • 设计状况
  • 施工阶段

be.

然后给出荷载工况的编号、荷载组合等。 对于炮弹,节点编号被传递给方法。

该方法的返回值d是一个包含字典的列表。 在第 37 行中完整显示d 。 第 40 行显示了如何访问特定的值。 [0]是列表索引, [' displacement_z ']是字典的键。


            

from RFEM.enums import *
from RFEM.initModel import *
from RFEM.BasicObjects.material import Material
from RFEM.BasicObjects.section import Section
from RFEM.BasicObjects.node import Node
from RFEM.BasicObjects.member import Member
from RFEM.TypesForNodes.nodalSupport import NodalSupport
from RFEM.LoadCasesAndCombinations.staticAnalysisSettings import StaticAnalysisSettings
from RFEM.LoadCasesAndCombinations.loadCase import LoadCase
from RFEM.Loads.memberLoad import MemberLoad
from RFEM.Results.resultTables import ResultTables

Model(True, "Beam.rf6")
Model.clientModel.service.delete_all()
Model.clientModel.service.begin_modification()

Material(1, 'S235')
Section(1, 'IPE 200')

Node(1, 0.0, 0.0, 0.0)
Node(2, 5.0, 0.0, 0.0)

Member.Beam(1, 1, 2, start_section_no=1, end_section_no=1)

NodalSupport(1, '1', NodalSupportType.FIXED)

StaticAnalysisSettings.GeometricallyLinear(1, "Linear")
LoadCase(1, 'Load', [True, 0.0, 0.0, 1.0])

MemberLoad(1, 1, '1', magnitude=3500)

Calculate_all()

d = ResultTables.NodesDeformations(CaseObjectType.E_OBJECT_TYPE_LOAD_CASE, 1, 2)

# all:
print(d)

# displacement in Z
print(d[0]['displacement_z'])

Model.clientModel.service.finish_modification()



作者

Faulstich 先生负责 RFEM 的质量保证和客户支持。