我正在用Abaqus写脚本,我用切好的圆圈(像奶酪)把圆圈和正方形压碎。我需要把零件之间的接触,所以我需要曲面。
宏管理器生成:
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或任何方式提取这个曲面。
BR,Wonman
发布于 2017-11-15 05:29:48
您已使用带有默认日记帐选项的宏管理器录制了上述日记帐。因此,变量side1Edges1是使用getSequenceFromMask()-method在日记中定义的。此方法用于录制您在录制过程中通过单击GUI执行的选择。这意味着您单击图形用户界面选择了一条边,结果是作用于s1的getSequenceFromMask()-method,它是实例'kolo-1'的所有边的集合。
根据Abaqus脚本参考指南6.14 - 7.2.2,当涉及大量对象时,getSequenceFromMask()方法是非常高效的。但是,如果您尝试自定义日记文件以选择要使用的另一个几何图元,则这不是很有帮助。有两种解决方案:
session.journalOptions.setValues(replayGeometry=COORDINATE,recoverGeometry=COORDINATE)
进入Abaqus CAE底部的Abaqus命令行,将JournalOptions对象的成员replayGeometry和recoverGeometry设置为COORDINATE,然后重复记录日志。在大多数情况下,您可以在发出上述命令后执行旧的日志,从而避免再次单击GUI。然后,您可以保存项目,最好使用新名称,并使用新创建的日记帐。在新的日志中,命令getSequenceFromMask(mask=('[#1 ]', ), )将被替换为基于坐标的选择,以表示您记录的图形用户界面点击。然后,您可以修改坐标以自定义日志文件,并使用在steps.
side1Edges1。我建议使用日志文件作为蓝图,其中所有的点击事件都必须使用您自己定义的众所周知的变量来替换。例如,使用您自己的逻辑定义点的列表myPoints = [(0,0), (0,1) ],然后使用这些点作为方法的参数,例如myLine = mySketch.Line(point1=myPoints[0], point2=myPoints[1]),构造新的变量,如myLine,以便在后续建模步骤中使用。为了对使用Abaqus Python API的建模工作流程有一个基本的了解,我可以推荐Puri,G.M.,2011。Abaqus的Python脚本:通过示例学习,第一版,在大多数大学里也很难找到。
查看Abaqus基准测试指南可能会有所帮助,因为一些较新的基准测试包含Python脚本(例如,断裂力学)。
发布于 2017-11-16 11:46:08
我想你是在创建一个基于边的曲面。有很多方法可以做到这一点,最简单的一种是
创建要为其创建曲面的那些边的基于组件的集合("setName")。
instance=mdb.rootAssembly.instances["InstanceName"]
set_for_surface=instance.sets["setName"].edges
assembly.Surface(side1Edges=set_for_surface, name="surf_name")查看findAt()或通过边界框"getBoundingBox()“选择区域。请看这个SO answer,它有点类似。
编辑:如果集合是基于装配的集合,则直接从装配而不是实例访问它。然后,使用相同的过程。
mdb.rootAssembly.sets['Set_name'].edges发布于 2021-02-06 03:01:04
回答晚了,但我找到了通过给出坐标来选择所有边的更简单的方法:
p = mdb.models['Model-1'].parts['Part-1']
e = p.edges
edges = e.getByBoundingBox(x1,y1,z1,x2,y2,z2)
p.Set(edges=edges, name='AllPartSet')x,y和z是制作盒子的两个坐标。
https://stackoverflow.com/questions/47293330
复制相似问题