ANSYS的二次開(kāi)發(fā)技術(shù)
ANSYS提供的二次開(kāi)發(fā)工具有三個(gè):參數化設計語(yǔ)言(ANSYS Parametric Design Language,APDL),用戶(hù)界面設計語(yǔ)言(User Interface Design Language,UIDL)以及用戶(hù)可編程特性(User Programmable Features,UPFs)。其中,前兩種可歸類(lèi)為標準使用特性,后一種為非標準使用特性。
ANSYS參數化設計語(yǔ)言(APDL)
APDL 擴展了傳統有限元分析范圍之外的能力,提供了建立標準化零件庫、序列化分析、設計修改、設計優(yōu)化以及更高級的數據分析處理能力,包括靈敏度研究等。
ANSYS 用戶(hù)可編程特性(UPFs)
利用UPFs,用戶(hù)可以開(kāi)發(fā)下列方面的功能程序:(1) 開(kāi)發(fā)用戶(hù)子程序實(shí)現從ANSYS數據庫中提取數據或將數據寫(xiě)入ANSYS數據庫。該種子程序可以編譯連接到ANSYS中,此時(shí)ANSYS提供了10個(gè)數據庫操作命令;如果作為外部命令處理,可以在A(yíng)NSYS的任何模塊中運行;(2) 利用ANSYS提供的子程序定義各種類(lèi)型的載荷,其中包括BF或BFE載荷、壓力載荷、對流載荷、熱通量和電荷密度等;(3) 利用ANSYS提供的子程序定義各種材料特性,包括塑性、蠕變、膨脹、粘塑性、超彈、層單元失效準則等;(4) 利用ANSYS提供的子程序定義新單元和調整節點(diǎn)方向矩陣,ANSYS最多可以有6個(gè)獨立的新單元USER100-USER105;( 5) 利用ANSYS提供的子程序修改或控制ANSYS單元庫中的單元;(6) 利用UEROP創(chuàng )建用戶(hù)優(yōu)化程序,可以用自己的算法和中斷準則替換ANSYS優(yōu)化過(guò)程。(7) ANSYS程序作為子程序在用戶(hù)程序中調用,如用戶(hù)自定義的優(yōu)化算法。
ANSYS 軟件本身是通過(guò)FORTRAN和C語(yǔ)言開(kāi)發(fā)的。使用UPFs進(jìn)行二次開(kāi)發(fā),在安裝ANSYS的基礎上,還需要Compaq Visual FORTRAN和MS Visual C++的支持。
ANSYS軟件Windows 版本在安裝目錄下的customUserintel 位置,提供了大量模塊用戶(hù)可編程子程序的源程序,大部分是基于FORTRAN77語(yǔ)言編寫(xiě)的。
修改以上基于FORTRAN的源代碼后,使用ANSYS ANS_ADMIN工具的Relink方式或者在通過(guò)當前文件目錄下的anscust.bat, makefile, ansysex.def 文件,在滿(mǎn)足上述條件的情況下,鏈接編譯可生成新的ANSYS.EXE文件,復制到安裝目錄的BIN文件夾下,運行則為用戶(hù)自定義版本的ANSYS 程序。
二次開(kāi)發(fā)的一般步驟:(1)安裝時(shí)需要選擇自定義安裝并選中自定義工具;(2)需要相關(guān)開(kāi)發(fā)工具的支持,不同的ANSYS版本需要的條件不一樣;(3)尋找到相應的FORTRAN 或C語(yǔ)言源文件修改成符合自己要求的新程序代碼;(4)通過(guò)正確的鏈接、編譯生成新的用戶(hù)版本的ANSYS程序。
ANSYS用戶(hù)界面設計語(yǔ)言(UIDL)
標準ANSYS 交互圖形界面可以驅動(dòng)AN SYS命令, 提供命令的各類(lèi)輸入參數接口和控制開(kāi)關(guān), 用戶(hù)在圖形驅動(dòng)的級別上進(jìn)行有限元分析, 整個(gè)過(guò)程變得直觀(guān)輕松。UIDL主要完成以下三種圖形界面的設計: 主菜單系統及菜單項、對話(huà)框和拾取對話(huà)框以及在線(xiàn)幫助系統。
用UIDL 語(yǔ)言編寫(xiě)的程序文件稱(chēng)為控制文件,必須以“.GRN”為擴展名。在A(yíng)NSYS中,所有的菜單和標準對話(huà)框都是由控制文件(用于建立功能操作的UIFUNC1.GRN、UIFUNC2.GRN和用于建立各級菜單的UIMENU.GRN)建立起來(lái)的。這些控制文件被保存在A(yíng)nsys Incv80ANSYSguien-usUIDL目錄下??刂莆募梢粋€(gè)控制文件頭和至少一個(gè)結構塊結構構成。而結構塊結構按照其不同的類(lèi)型可劃分為菜單結構塊,命令結構塊和幫助結構塊??刂莆募^和結構塊結構都有嚴格的格式。
評論