我目前正在为我的硕士研究项目工作。我的项目涉及使用二元模型技术评估机织粗纱织物。这意味着我将织物的组织表示为线/桁架,树脂/基体表示为简单的块。在
我一直在写我的代码来运行几个模拟,虽然目前我只想运行一个。我在Python方面的经验有限,Abaqus的经验也是有限的。到目前为止,我已经能够创建我的几何体,指定我的材料,创建截面和网格所有的部分。组件由矩阵、经纱1、经纱2、纬纱1和纬纱2组成。一旦我把它们放在适当的位置,我定义了线性模式,以便创建层压板复合材料。这一切都是在python脚本中完成的,我可以选择层数、纬纱间距、经纱等等
我的问题是:
findAt
和getByBoundingBox
但是这些都需要部件的名称才能工作,我如何使它独立于有多少个部件而动态地选择它呢?我尝试使用rootAssembly.allinstances.edges.getByBoundingBox(....)
,但没有成功。我总是得到一个空数组。在这是一个模型看起来是如何组装的示例。在这种情况下,有5层机织粗纱织物。在
如果有人能帮我解决这些问题,我会非常感激的!在
这是一行手动添加的弹簧。它们被认为是经纬交叉点之间的相互作用,而不是层间的相互作用:
希望能正确理解您的描述:
{{cd2>你确实可以选择所有存在于cd2>中的边。创建集合并在集合之间操作可以简化事情。
复制每个实例时,为其指定一个名称,使其坐标易于识别(例如,
instanceName="Instance_1_3"
用于位置i=1
和j=3
中的重复。然后,您只需在i
方向上查找mdbModel.rootAssembly.instances["Instance_1_2"]
的前一个邻居,依此类推。如果你想要一个简单的弹簧在两个接近的点之间,你可以迭代边界节点并在相邻部分的节点上做一个getByBoundingSphere()
。相关问题 更多 >
编程相关推荐