在Abaqus中Python通過findAt方法定位建立region區域的方法匯總
在Abaqus中Python通過findAt方法定位建立region區域的方法匯總
(轉帖自 <http://blog.sina.com.cn/s/blog_4fff04900102vff3.html>)
Abaqus腳本接口中許多命令都包含region參數,包括:
1)Load命令:使用region指定施加荷載的區域。例如集中力施加在頂點上,壓力施加在邊或面上。
2)Mesh命令:使用region指定單元的類型、網格種子的定義區域。
3)Set命令:使用region參數指定集合的區域。例如:節點集,單元集等。
4)Coupling命令:使用region參數指定需要耦合的區域或者參考點,節點等。
如果在Abaqus/CAE中,Abaqus將自動為模型的特征進行編號,例如節點編號,單元編號,表面中各條邊的編號,參考點的編號。但在腳本中無法獲知這些模型特征的ID,而且對某個模型特征編輯后ID將發生變化,新舊版本ID不同不兼容。
鑒于定位尋找模型特征(頂點(vertex)、邊(edge)、面(face)、體(cell)、參考點(referencePoint))的重要性——可以用來施加荷載邊界條件,劃分網格、建立集合、建立耦合,有必要通過坐標的方法尋找定位這些模型特征!
findAt方法就可以達到這一點。用法參考《Abaqus Scripting Reference Manual》。
a.ReferencePoint(point=(f1Mid_tr[0][0],f1Mid_tr[0][1],f1Mid_tr[0][2]))#建立參考點此時是一個feature對象
#####解釋:The ReferencePoint object has no direct constructor; it is created when a Feature object is created. TheReferencePoint method creates a Feature object that creates a ReferencePoint object.
###########################################################################
r1 = a.referencePoints###建立ReferencePoint object 并存入庫中
refPoints1=r1.findAt((f1Mid_tr[0][0],f1Mid_tr[0][1],f1Mid_tr[0][2]),)###取出庫中的對象
region1=(refPoints1,)###建立區域
尋找模型特征最重要的要明白需要的模型特征的路徑!
例如,Face這一模型特征路徑如下,可以是部件、實例、集合等,在需要的路徑下調用findAt方法定位關心的魔性特征。例如,vertices.findAt、faces.findAt、edges.findAt、referencePoints.findAt、cells.findAt
Vertex路徑:

Edge路徑:

Face路徑:

Cell路徑:

ReferencePoint路徑:

findAt命令經返回相應的模型特征的對象或者對象的序列,例如An Edge object or a s equence o f Edge o bjects.
如果返回的是一個對象,那么需要region=((返回的那個對象),)來建立一個序列賦值給region。
如果返回的是對象的序列則不需要。
在rpy文件顯示出findAt命令,按如下方法:
session.journalOptions.setValues(replayGeometry=COORDINATE,recoverGeometry=COORDINATE)
在命令行中直接輸入上述語句
結果.rpy文件中的findAt語句就會以坐標形式出現
session.graphicsOptions.setValues(backgroundStyle=SOLID,backgroundColor='#000000', translucencyMode=2)
在命令行中直接輸入上述語句
背景顏色就會變成黑色
工程師必備
- 項目客服
- 培訓客服
- 平臺客服
TOP




















