用Python提取ABAQUS中节点集合的反力

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

⽤Python提取ABAQUS中节点集合的反⼒
⽤Python提取ABAQUS中节点集合的反⼒
注:节点反⼒可以通过PATH路径来提取(还是较为⽅便)
1>>>from odbAccess import *
2>>> myodb=openOdb('Job-1.odb') #该ODB⽂件⽤myodb表⽰
此处的job-1:表⽰第⼀个作业名称。

上图则job-1的位置就应该⽤beam-1来代替
3>>> print myodb.rootAssembly.nodeSets.keys() #查看全部的节点集合
4>>> Noderegion=my odb.rootAssembly.nodeSets[‘nodeset’]
#nodeset为3步骤的节点集合,同时odb中的该节点集合信息赋予给Noderegion 5>>> REACTIONRF= my odb.steps[‘Step-1’].frame s[1] .fieldOutputs[‘RF’]
#将odb⽂件中step-1中frame=1时的RF(节点反⼒)赋予REACTIONRF 6>>>NODESETRF=
REACTIONRF.getSubset(region= Noderegion).values
#节点集合的反⼒数值赋予到NODESETR中
#5,6两部可以合并为:
NODESETRF = my odb.steps[‘Step-1’].frame[1] .fieldOutputs[‘RF’]. getSubset(region=
Noderegion).values
#如果将4,5,6三步合并到⼀个步骤⾥⾯为:
val=myodb.steps['Step-1'].frames[1].fieldOutputs['RF'].getSubset(region=myodb.rootAsse mbly.nodeSets['SET-2']).values 7>>>map(lambda x:[x.nodeLabel, x.data[0],x.data[1],x.data[2]], val)
#⽤map函数进⾏输出全部的节点值:x.nodeLabel:表⽰节点编号,x.data[0]:节点x ⽅向的反⼒[1],[2]表⽰y,z⽅向的反⼒。

Val,也可以是6步骤中的NODESETRF
内容为1、5
得到的结果和⽤探针probe values得到的结果是⼀样的节点信息输出正确。

相关文档
最新文档