孫 宇,羅會信,黨 章
(武漢科技大學機械自動化學院,湖北 武漢,430081)
有限元分析主要流程包括幾何建模、劃分網格、施加載荷、計算求解、后處理幾個步驟。計算求解的模型較少時,按照ANSYS傳統的交互式操作流程可以解決部分實際問題,但在計算求解的模型較多時,由于交互式操作的鏈式流程特點,使得計算求解、載荷施加、結果路徑定義都需要大量的重復操作,工作效率極低。隨著有限元分析在各領域的廣泛深入應用,需要研究的不再是單個物理模型在單一物理場的應用問題,這就對ANSYS分析中Batch模式提出了更多的批處理功能需求。在大規模多物理場間接耦合分析過程中,編寫批處理命令流已經不能很好地滿足復雜流程控制以及計算結果數據對比統計的要求。



圖1 大規模多物理場間接耦合批處理分析流程
Fig.1Large-scalemulti-physicsindirectcouplingbatchanalysisprocess
應用APDL語言開發兩個宏:求解計算宏和結果批量統計宏。為了高效完成計算和批量結果提取統計,有必要開發適合大規模多物理場間接耦合模型計算宏程序和結果批量提取宏程序。計算宏程序針對用戶給定的參數,在完成一個模型導入、求解計算后立即進入結果后處理器,完成用戶所關心的路徑定義、結果映射、結果保存等一系列操作。當第一個物理場所有模型計算完成后,再調用結果批量統計宏程序,用其統計計算過程中保存的用戶所關心的路徑信息。



圖2 大規模多物理場間接耦合批處理程序開發流程
Fig.2Large-scalemulti-physicsindirectcouplingbatchprogramdevelopingprocess

圖3 ANSYS多物理場耦合批處理程序界面
Fig.3ANSYSmulti-physicscouplingbatchprograminterface
采用WIN32API中的函數CreateProcess來創建一個新的進程和它的主線程[6],這個新進程運行指定的可執行文件。通過對該函數參數的設定可以創建一個新的線程來運行ANSYS,并傳遞批處理命令文件。
CreateProcess函數原型為:
BOOL CreateProcess
(
LPCTSTRlpApplicationName,
LPTSTRlpCommandLine,
LPSECURITY_ATTRIBUTESlpProcessAttributes,
LPSECURITY_ATTRIBUTESlpThreadAttributes,
BOOLbInheritHandles,
DWORDdwCreationFlags,
LPVOIDlpEnvironment,
LPCTSTRlpCurrentDirectory,
LPSTARTUPINFOlpStartupInfo,
LPPROCESS_INFORMATIONlpProcessInformation
);
其中需要設定的參數主要包括:dwFlags(設定運行方式)、lpApplicationName(創建程序完整路徑名)、lpCommandLine(指定運行參數)。
ANSYS提供了以命令方式調用的程序接口[7]:
SET ANSYS121_PRODUCT=ANE3FL !設定產品名稱
SET ANS_CONSEC=YES !設定連續運算忽略警告
"C:Program FilesAnsys IncV121ANSYSin
其中:“-b”指定以批處理模式運行;“-i vm1.dat”指定導入文件為 vm1.dat;“-o vm1.out”指定輸出文件為vm1.out。
(1)前處理部分
/WCD,CurPath !設定當前工作路徑變量
/FILNAME,JobName,0 !設定工作文件名
/INPUT,JobName,CDB, !導入CAE模型
INPUT,JobName,ANS, !導入ANS文件
FINISH
(2)通過模型上兩點定義路徑
FLST,2,2,8
FITEM,2,X1,Y1,Z1 !定義路徑起點
FITEM,2,X2,Y2,Z2 !定義路徑終點
PATH,MyPath,2,5,ARG8, !定義路徑
PPATH,P51X
/PBC,PATH,1
/REPLOT
(3)通過SET名稱定義路徑
CMSEL,S,SetName !選擇設定好的點集合
n_totalnode=ndinqr(0,13) !獲取設定點集的個數
*DIM,nnum,array,ndinqr(0,13) !定義數組變量
*GET,nnum(1),NODE,,NUM,MIN !循環獲取節點號
*DO,j,2,ndinqr(0,13)
nnum(j)=NDNEXT(nnum(j-1))
*ENDDO
FLST,2,ndinqr(0,13),1 !依次拾取節點
*DO,j,1,ndinqr(0,13)
FITEM,2,nnum(j)
*ENDDO
PATH,mypath,ndinqr(0,13),5,ARG8, !定義路徑
PPATH,P51X,1
/REPLOT
(4)映射結果文件以提取數據[8]
PAGET,CurJobName,TABL
PARSAV,all,CurJobName,txt
FINISH
SAVE,ALL
結果批量統計宏程序主要功能包括:①將計算宏程序保存的結果數據恢復到數據表以便統計操作;②通過APDL提供的矩陣操作命令對數據進行復制,完成統計并以文本和圖表形式輸出。
數據恢復關鍵代碼:
PARRES,change,CurData,txt
*VFUN,A1(1,0,1),copy,CurData(1,4,1)
繪圖控制關鍵代碼:
JPGPRF,500,100,1 !控制輸出白底圖片
/SHOW,JPEG, , !繪制圖像
*VPLOT,A1(1,0,1),A1(1,1,1),2,3,4,5,6,7,8,9
/SHOW,CLOSE
ANSYS熱-應力間接耦合是熱-結構分析方法之一,常用于溫度變化對于結構的力學影響相對很小的場合。熱-應力間接耦合分析的每個過程要分別計算兩個模型,提取兩次結果,在多個模型對比分析時,結果的提取統計量大,效率很低。本文以300 t鋼水罐罐壁為對象,研究不同材質下鋼水罐耳軸周圍的溫度和結構應力分布影響。罐壁材質分為6種,其熱導率分別為2.4、2.6、2.8、3.0、3.6、3.8 W/(m·K)。利用HYPERMESH軟件建立鋼水罐罐壁的多個有限元軸對稱模型,其中,溫度場模型包含10.8萬個單元,應力場模型包含14.7萬個單元,如圖4所示。
將6個溫度場和6個應力場的有限元軸對稱模型文件以及ANSYS批處理程序文件置于同一文件夾下,設定基本參數后,生成第一物理場批處理命令流,程序自動完成批處理程序的編寫和ANSYS的調用與計算。在計算過程中,ANSYS依照定義的宏逐一對模型進行計算求解、提取數據、保存數據,當所有模型計算完成時,再對每步計算保存的數據進行匯總、統計,輸出總的統計結果。應用所開發的批處理程序提取鋼水罐耳軸周圍的溫度和應力分布,如圖5所示。

(a)應力場模型 (b)溫度場模型
圖4鋼水罐罐壁的有限元模型
Fig.4Finiteelementmodelsofladlewall

(a)溫度

(b)應力
Fig.5Temperatureandstressdistributionaroundladletrunnions
按照傳統的多物理場分析流程,上述12個模型的計算分析和結果后處理往往需要耗費大量的人力物力資源。由于該批處理程序綜合考慮了多物理場耦合計算與結果后處理間的聯系,打破了傳統的先計算后處理的分析流程,使原本需要多臺計算機、多名技術人員協同合作花費數天時間才能算成的工作,僅用一臺電腦、一名技術人員就可完成,節約了人力和物力資源,同時,數據以文本方式儲存于磁盤中,方便管理和統計,節約了磁盤空間。

[1] 陶志雄,張其林,陳俊,等.基于ANSYS二次開發的夾層玻璃面板有限元分析[J].計算機應用與軟件,2011,28(5):8-11.
[2] 李志博,朱瑪,張高峰. ANSYS在電連接器溫升分析中的應用[J]. 計算機應用與軟件,2011,28(5):189-192.
[3] 潘紅軍,薄瑞峰,沈興全.ANG汽車儲氣罐結構優化的研究[J].機械設計與制造,2013(11):53-56.
[4] 歐陽杰,王在富,朱慶鵬,等.基于VB和ANSYS的行星輪模態分析的參數化設計[J].機電工程,2013,30(10):1196-1198.
[5] 楊磊,劉更,鄭黨黨,等.ANSYS二次開發技術在協同仿真環境中的應用[J].機械設計與制造,2011(5):71-73.

[7] ANSYSInc..APDLprogrammer’sguide[M].Sou-thpointe: ANSYS Inc.,2013:1-67.
[8] 博弈創作室.參數化有限元分析技術及其應用實例[M].北京:中國水利水電出版社,2005.