- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 Abaqus 中编写脚本,在那里我用切圆(如奶酪)粉碎圆形和正方形。我需要在部件之间放置 Contact,所以我需要 Surface。
宏管理器生成:
s1 = a.instances['kolo-1'].edges
side1Edges1 = s1.getSequenceFromMask(mask=('[#1 ]', ), )
a.Surface(side1Edges=side1Edges1 , name='kolkoSurf')
问题是:getSequenceFromMask(mask=('[#1 ]', ), )如何获得这个#1?我可以更换它吗?我搜索得很少,有一些想法可以使用:'find'、'face'、'COORDS',但我无法管理它。请帮我。我梦想得到一个简单的示例,说明如何使用 X、Y 或其他方式提取此 Surface。
BR,万曼
最佳答案
您使用带有默认日志选项的宏管理器记录了上述日志。因此,变量 side1Edges1
使用 getSequenceFromMask()
在您的日志中定义-方法。此方法是记录您在记录过程中通过单击 GUI 执行的选择。这意味着您单击 GUI 以选择一条边,结果是 getSequenceFromMask()
-作用于s1
的方法这是实例所有边的集合 'kolo-1'
.
根据 Abaqus 脚本引用指南 6.14 - 7.2.2 方法 getSequenceFromMask()
当涉及大量对象时效率很高。但是,如果您尝试自定义日志文件以选择要使用的另一个几何元素,这不是很有帮助。有两种解决方案:
解决方法:粘贴命令
session.journalOptions.setValues(replayGeometry=COORDINATE, recoverGeometry=COORDINATE)
进入Abaqus CAE底部的Abaqus命令行设置成员replayGeometry
和 recoverGeometry
您的 JournalOptions 对象的 COORDINATE
并重复记录你的日记。在大多数情况下,您可以在发出上述命令后通过执行旧日志来省略再次单击 GUI。然后您可以保存您的项目,最好使用新名称,并使用新创建的日志。在新日志中,命令 getSequenceFromMask(mask=('[#1 ]', ), )
将替换为基于坐标的选择,以表示您记录的 GUI 单击。然后您可以修改坐标以自定义您的日志文件并选择您喜欢在后续建模步骤中使用的边。
解决方案:定义 side1Edges1
使用您在 python 脚本的前几行中从 Scratch 定义的变量。我建议使用日志文件作为蓝图,其中所有点击事件都必须使用您自己定义的众所周知的变量进行替换。例如,定义点列表 myPoints = [(0,0), (0,1) ]
使用您自己的逻辑,然后将这些点用作方法的参数,例如myLine = mySketch.Line(point1=myPoints[0], point2=myPoints[1])
, 构建新变量,如 myLine
用于后续建模步骤。
要对使用 Abaqus Python API 的建模工作流有一个基本的了解,我可以推荐Puri, G.M., 2011。Abaqus 的 Python 脚本:通过示例学习,第 1 版,而且它在大多数大学中几乎不可用。
查看 Abaqus 基准指南可能会有帮助,因为一些较新的基准包含 Python 脚本(例如断裂力学)。
关于python - Abaqus 曲面 getSequenceFromMask,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47293330/
我在 Abaqus 中编写脚本,在那里我用切圆(如奶酪)粉碎圆形和正方形。我需要在部件之间放置 Contact,所以我需要 Surface。 宏管理器生成: s1 = a.instances['kol
我是一名优秀的程序员,十分优秀!