本文介绍了ABAQUS将曲面转化为集合的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我一直试图在我的模型中找到两个曲面的中心(见图),但没有成功。它们是元素曲面(面),并且在查询中没有选项来查找元素曲面的中心,而只查找元素集的中心。查找节点集的中心也很好,但我的节点集不会出现在工具->;查询->;质量属性选项中。 而且我找不到将元素表面转换为元素集的选项。
我最终想要的是找到两个红色高亮显示曲面的中心,并在它们之间画一条线。有人能帮我这个忙吗?
推荐答案
如果您的表面包含元素,则始终可以检索它们并在其基础上创建集。
m = mdb.models['myModel']
a = m.rootAssembly
es_l5_inferior_elems = a.surfaces['ES_L5INFERIOR'].elements
es_l5_inferior_elems_set = a.Set(
name='ES_L5INFERIOR_ELEMS_SET',
elements=es_l5_inferior_elems
)
如果您想要获取节点集,恐怕您必须遍历es_l5_inferior_elems
中的所有元素,并使用MeshElement
对象的getNodes()
方法(请记住,将有重复项需要删除)。
要获得质量/体积中心,可以使用Part或rootAssembly的专用方法getMassProperties()
。顺便说一下,要使用它,您不需要集合(只需给出元素/节点数组)!
mass_prop = a.getMassProperties(regions=es_l5_inferior_elems)
print(mass_prop['volumeCentroid'])
print(mass_prop['centerOfMass'])
这篇关于ABAQUS将曲面转化为集合的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!