Python與Abaqus系列(3)——腳本案例及代碼介紹
2017-08-18 by:CAE仿真在線 來源:互聯網
Python與Abaqus系列(1)——Python基礎介紹
Python與Abaqus系列(2)——Abaqus二次開發基礎介紹
本文以Abaqus 6.14 Documentation內的Abaqus Scripting User's Guide→Putting it all together:example→Running the example中的beamExample.py為基礎進行代碼介紹。
第一段:導入相應模塊

◆第1行代碼:導入abaqus模塊的所有對象。
◆第2行代碼:導入abaqusContants模塊的所有對象。
◆第3行代碼:通過backwardCompatibility對象的方法setValues將BackwardCompatibility對象的成員includeDeprecated和reportDeprecated設定為True值和False值。
第二段:創建模型

◆第6行代碼:使用mdb對象的Model構造函數創建Beam對象(模型),并賦值給變量myModel。如下所示

第三段:創建模型

◆第13行代碼:使用session.Viewport創造名為Cantilever Beam Example的viewport對象,新的viewport賦值給變量myViewport。視圖窗口的起點在(20,20),寬150,高120.
第三段:創建幾何模型

◆第18行代碼:導入part模塊
◆第22行代碼:通過myModel.ConstrainedSketch創建草圖對象,對其兩個參數(name和sheetSize)進行賦值。并賦值給mySketch變量。
◆第27行代碼:在mySketch對象下創建四邊形,一點坐標為(-100,10),對角坐標為(100,-10)。至此草圖beamProfile繪制完成。
第31行代碼:創建myModel模型下的創建部件對象,部件名稱為Beam,維度為3D,類型為可變性體,并賦值給myBeam。
第37行代碼:通過myBeam.BaseSolidExtrude創建拉伸部件Beam,草圖使用之前創建的mySketch,深度為25。至此部件Beam創建完成。
第三段:創建材料

◆第41行代碼:導入material模塊
◆第45行代碼:通過myModel.Material創建材料對象,將Steel賦值給其參數name。并對象賦值給mySteel變量。
◆第50行代碼:將元組(209.E3,0.3)賦值給變量elasticProperties。
◆第51行代碼:將設定的彈性模量和泊松比賦值給Elastic對象的參數table。至此材料Steel創建完成。其中Material和Elastic均是Pyhon操作的對象。導入方法如下:

同理,后邊通過section對象創建界面屬性,并賦值給材料。

通過assemble對象創建裝配體。

通過step對象創建分析步。

通過load對象創建載荷。

通過mesh對象劃分網格。

通過job對象創建分析任務。

通過visualization對象創建可視化后處理。

至此,整個abaqus的python腳本編寫完成。
用戶可通過Abaqus CAE→file→run script,運行保存的腳本文件beamExample.py,直接獲取分析結果。

想必讀者通過對案例的解釋已經了解到面向對象的Python與abaqus結合的簡單、便捷、強大。至此讀者可根據自己的需要進行Abaqus的二次開發了。
知識補充:模塊、類、對象、方法
模塊:是包含變量、函數和類的文件,是含有python代碼的文件,一個python文件(XXX.py)就是一個模塊。相關功能模塊的集合構成了我們所說的庫。
類:我們把相近屬性的“東西”歸為類,類包括屬性、變量和方法。他們被該類的實例對象所分享。
對象:我們把相近屬性的“東西”歸為類,對象就是類的實例化。為Python的操作目標。對于python來說,Python中的一切都是對象。
方法:一種對象的“行為”屬性。
關于abaqus的模塊組成、對象構成等詳細信息,讀者可查閱Abaqus的Abaqus Scripting Reference Guide
相關標簽搜索:Python與Abaqus系列(3)——腳本案例及代碼介紹 abaqus分析培訓 abaqus技術教程 abaqus巖土分析 鋼筋混凝土仿真 abaqus分析理論 abaqus軟件下載 abaqus umat用戶子程序編程 Abaqus代做 Abaqus基礎知識 Fluent、CFX流體分析 HFSS電磁分析 Ansys培訓