混合C++語言與APDL編程的ANSYS二次開發(fā)

2016-08-15  by:CAE仿真在線  來源:互聯(lián)網(wǎng)

有時候我們會用到ANSYS的批處理功能,它避免了GUI界面顯示占用內(nèi)存,因此數(shù)值計算速度是很快的。在工程應(yīng)用中,尤其是設(shè)計產(chǎn)品,經(jīng)常要重復(fù)一些操作來確定最優(yōu)的產(chǎn)品設(shè)計,通過傳統(tǒng)的手動GUI操作會顯得很費力。因此,如果在外部開發(fā)程序界面,通過這個界面來定義產(chǎn)品的尺寸布置,點擊運行,就可以執(zhí)行ANSYS的核心計算功能,就再好不過了。
    這個功能是可以實現(xiàn)的?;贑++面向?qū)ο缶幊?外部程序的界面是通過C++生成ANSYS的APDL命令流文件,然后再編程將該文件傳送給ANSYS去計算,就可以實現(xiàn)了。
    其中最關(guān)鍵的一步就是如何將輸入文件傳送給ANSYS呢?這就需要找到程序接口。在該文中,提供了兩個接口:

1、WinExec("D:\\Program Files\\ANSYS Inc\\v145\\ansys\\bin\\winx64\\ANSYS145.exe -p ane3flds -dir E:\\APDL\\exercise2 -j file14 -s read -l en-us -b -i E:\\APDL\\exercise2\\exercise2.txt -o E:\\APDL\\exercise2\\file.out",SW_HIDE);

用到WinExec函數(shù),需要指定ANSYS.exe的文件目錄,工作目錄,輸入文件的位置,輸出文件的位置。

其中:
1:-p表示指定license  ane3flds表示指定的license為ANSYS Multiphisics
2:-j表示該任務(wù)的名稱
3:-s表示模式為read
4:-l表示語言環(huán)境
5:-b表示ANSYS的batch模式,即批處理模式

2、混合C++語言與APDL編程的ANSYS二次開發(fā)
    第二種方法是用CreatProcess函數(shù),同樣需要設(shè)置ANSYS的執(zhí)行文件目錄,輸入文件目錄,輸出文件目錄。
 
關(guān)于WinExec與CreatProcess這兩個函數(shù)的描述可以參考這個博客,講得十分詳細(xì):
http://blog.sina.com.cn/s/blog_4950d6160100pz0f.html
 
    執(zhí)行上述程序前,工作目錄中只有exercise.txt命令流文件,執(zhí)行完后,生成許多結(jié)果文件,進而可以對結(jié)果進行處理,避免了ANSYS的GUI界面操作。
混合C++語言與APDL編程的ANSYS二次開發(fā)
混合C++語言與APDL編程的ANSYS二次開發(fā)
 
總而言之,基于外部C++編程對ANSYS進行二次開發(fā),核心是找到調(diào)用ANSYS的接口,這樣才能將生成的APDL命令流文件傳給ANSYS進行操作,這個功能在工業(yè)產(chǎn)品設(shè)計上十分重要。

開放分享:優(yōu)質(zhì)有限元技術(shù)文章,助你自學(xué)成才

相關(guān)標(biāo)簽搜索:混合C++語言與APDL編程的ANSYS二次開發(fā) C++語言與APDL的ANSYS二次開發(fā) apdl+c++ ansys Ansys有限元培訓(xùn) Ansys workbench培訓(xùn) ansys視頻教程 ansys workbench教程 ansys APDL經(jīng)典教程 ansys資料下載 ansys技術(shù)咨詢 ansys基礎(chǔ)知識 ansys代做 Fluent、CFX流體分析 

編輯
在線報名:
  • 客服在線請直接聯(lián)系我們的客服,您也可以通過下面的方式進行在線報名,我們會及時給您回復(fù)電話,謝謝!
驗證碼

全國服務(wù)熱線

1358-032-9919

廣州公司:
廣州市環(huán)市中路306號金鷹大廈3800
電話:13580329919
          135-8032-9919
培訓(xùn)QQ咨詢:點擊咨詢 點擊咨詢
項目QQ咨詢:點擊咨詢
email:kf@1cae.com