讓網格動起來(5)—配置UDF編譯環(huán)境
2017-01-18 by:CAE仿真在線 來源:互聯(lián)網
FLUENT UDF中關于動網格的DEFINE宏均要求為編譯型。FLUENT的UDF運行環(huán)境有兩種:解釋型與編譯型。雖然兩種方式都是采用編譯,但是編譯方式及編譯后獲得的結果是不同的。編譯型UDF需要通過Complied進行編譯,編譯后得到相應的dll文件。而解釋型UDF則是通過Interprete進行加載,不會生成dll文件。據我的直覺,編譯型UDF可能利用了鉤子函數的技術。
一、編譯型UDF與解釋型UDF的差異(翻譯自UDF手冊)
1、解釋型UDF
- 一個精簡的平臺
- 都能被作為編譯型UDF使用
- 不需要C編譯器(利用FLUENT自身的編譯器)
- 比編譯型UDF反應慢
- 在方法方面受到較多的限制
- 無法被鏈接到編譯系統(tǒng)或其它庫
- 只能使用預定義宏訪問存儲于ansys fluent中的數據
2、編譯型UDF
- 比解釋型UDF反應迅速
- 沒有諸多C語法限制
- 能夠使用其它語言編寫的函數
- 當具有一些解釋型UDF不能處理的功能時,無法作為解釋型UDF使用
3、選取原則
- 對于小型的、簡單的功能,使用解釋型UDF
- 復雜功能使用編譯型UDF。(如具有較大的CPU開銷、需要訪問公共庫)
二、配置UDF編譯環(huán)境
對于編譯型UDF,在fluent中加載時,需要調用C編譯器將其編譯成DLL文件。這里的C編譯器雖說理論上是沒有任何限制的,但是在windows環(huán)境下還是推薦使用microsoft visual c++,在linux環(huán)境下推薦使用GCC。我們這里只說windows環(huán)境下編譯環(huán)境的配置問題。
visual c++最高版本是6.0,再往后就是microsoft visual studio7.0、8.0、9.0、10.0。其中7.0對應microsoft visual studio2003,8.0對應2005,9.0對應2008,10.0對應2010。在一些老版的fluent中,通常需要配置環(huán)境變量。配置環(huán)境變量的方法,網絡上很多,可以搜索。這里講的是通過修改udf.bat文件來配置編譯環(huán)境。
在fluent 12.0之后的版本中,可以通過修改udf.bat文件的方式進行編譯環(huán)境配置。該文件位于
xx\ANSYS Inc\v140\fluent\ntbin\win64目錄下。本人安裝的fluent是64bit的,版本為14.0。不同版本的fluent,該文件所處的位置可能不同。大家可以利用windows的文件搜索功能尋找該文件。注意若是安裝了icepak,則會有兩個udf.bat文件,一定要注意我們只針對fluent目錄下的該文件。
我們用記事本打開此文件,由于本機上安裝的是microsoft visual studio 2010,因此只需要關注圖中橙色線框中的部分。
現在來分析橙色框中的語句。有過DOS經驗的人可能嫌我羅嗦,不過我還是要說一下。因為現在有DOS經驗的人越來越少了。
(1)第8行:echo是dos中助于在屏幕上寫出一段文本。這與c語言中的printf,c#中的Console.WriteLine,JAVA中的System.Print的功能是一樣的,只是在屏幕上打出后面一段文字,我們可以忽略了。
(2)第10行:設定MSVC_DEFAULT的值。其實是一個賦值語句。容易理解。一會兒需要動它。
(3)第11行:if exist是判斷,判斷后面的vcvarsall.bat文件是否存在,若存在,則設置變量MSVC的值。
(4)第12行:判斷MSVC是否為空,若不為空,則進入msvc_env100標記行。找到該標記行,其內容位于86~89行。該標記行的內容為:(1)設定msvc_version為100(2)調用vcvarsall.bat文件,利用amd64,因為我安裝的fluent版本是64bit,若32bit版本會有所不同。
(5)跳轉到ms_c_end行,該行是一個結束標記行。
看起來復雜,其實人們要做的工作很少。用戶所要做的僅僅是修改第10行的內容。修改microsoft visual studio的安裝路徑。若vc是全默認安裝,則什么都不需修改,否則改為正確的路徑。如本機的microsoft studio安裝在d:\program files目錄下,只需將第10行修改為:
set MSVC_DEFAULT=D:\Program Files\Microsoft Visual Studio 10.0
就可以了。
剩下要做的工作是:在fluent啟動面板中勾選Environment標簽頁下的setup compilation Environment for UDF選項。該選項默認是選中的,且不同的版本該選項所處的位置可能有所不同。
三、總結
配置12.0以上fluent UDF編譯環(huán)境,需要進行的工作:
(1)找到fluent安裝目錄下的udf.bat文件
(2)打開udf.bat文件,修改對應本機安裝的microsoft visual studio版本的路徑
OK了!這種方式配置UDF編譯環(huán)境不需要考慮計算機的操作系統(tǒng)。
本文得益于天樂樹網友博文http://blog.sina.com.cn/s/blog_4a0a8b5d0100uqht.html,在此表示感謝。
相關標簽搜索:讓網格動起來(5)—配置UDF編譯環(huán)境 Fluent培訓 Fluent流體培訓 Fluent軟件培訓 fluent技術教程 fluent在線視頻教程 fluent資料下載 fluent分析理論 fluent化學反應 fluent軟件下載 UDF編程代做 Fluent、CFX流體分析 HFSS電磁分析