abaqus的二次開發主要有兩種語言:基于前后處理層面的Python語言以及基于求解器層面的Fortran語言。
Python是一種十分精彩又強大的解釋性語言。因其簡單易學,入手非常快;并且是跨平臺的,可移植到大多數平臺下面直接使用,例如:Windows、MacOS、Linux、Andorid、iOS等等,使得Python已成為世界上最受歡迎的語言之一。Fortran語言作為專門的科學計算語言,其地位到目前為止還是不可動搖的。Fortran語言邏輯性強,程序結構清晰,語法語義簡捷好懂,特別適合用于科學計算,數據采集處理,并行計算等。
abaqus開發者充分利用這兩種語言的優點,在前后處理用Python作為軟件的接口語言,在求解器層面則用Fortran語言調用子程序進行計算。
abaqus軟件的環境結果如圖所示。從圖中也可以看出,abaqus用Python進行二次開發主要是為了計算的前后處理方便。例如,當需要處理多個作業時,如果手動的一個一個地去提交作業,需要大量重復的操作,會浪費很多的時間。而如果同時提交所有作業,則會使CPU占有率很高,導致人們不能同時利用計算機進行其他工作。這時通過在Python腳本中設計一個運行隊列,可以給使用者節省大量的時間。但是對于一些沒有特定規律或者不常見到的問題,則沒有必要花這個時間成本去進行二次開發。在abaqus求解器中使用的則是Fortran語言。abaqus給用戶提供了42個用戶子程序以進行二次開發。用戶可以通過子程序進行一些更復雜更高級的操作。如邊界條件,接觸條件,材料特性等的設置。因此用戶可以根據自己的需要對特定的問題進行求解。具體用哪種語言進行二次開發,還需要根據自身的要求而定。
點贊是一種積極的生活態度,贊一個吧!
圖片修改自《abaqusPython二次開發攻略》