Fluent UDF【15】:外部編譯UDF【轉(zhuǎn)發(fā)】
2017-06-11 by:CAE仿真在線 來源:互聯(lián)網(wǎng)
前面提到可以在vs提供的命令行界面編譯UDF。見Fluent UDF【8】:編譯型UDF。利用命令行形式編譯UDF可以加載外部函數(shù)庫,可以不用打開Fluent就可以編譯UDF,還可以方便地調(diào)試UDF。
今天嘗試了一下,發(fā)現(xiàn)了很多的問題。
在Fluent外部編譯UDF的基本步驟:
-
創(chuàng)建目錄結(jié)構(gòu)
-
在case文件夾下創(chuàng)建libudf文件夾
-
在libudf文件夾中創(chuàng)建兩個文件夾,分別命名為src及win64
-
在win64文件夾中創(chuàng)建文件夾2ddp
-
將UDF源文件拷貝到src文件夾中
-
將Fluent安裝目錄(如c:\ANSYS Inc\v180\fluent\fluent18.0.0\src\udf)下的user_nt.udf及makefile.udf文件拷貝到2ddp目錄下
-
修改user_nt.udf文件的內(nèi)容
-
修改makefile.udf文件名為makefile
-
啟動visual studio的win64工具提示命令進入命令行界面,采用cd命令進入到2ddp目錄
-
使用nmake命令進行編譯
按道理來說事情應(yīng)該能夠解決,然而事情沒那么簡單。出現(xiàn)了N多的錯誤。
直接使用nmake后出現(xiàn)下圖所示的錯誤。
錯誤提示:resolve.exe不是內(nèi)部或外部命令。
用文本編輯器打開makefile文件,搜索resolve.exe。在第170行發(fā)現(xiàn)目標,如下圖所示。
發(fā)現(xiàn)此行沒什么大的作用,這個resolve也不知道哪里來的,搜索了整個電腦硬盤也沒找到。干脆去掉這一行。
保存文件繼續(xù)nmake編譯。
真是禍不單行,又出錯了。
錯誤提示:sed不是內(nèi)部或外部命令,也不是可運行的程序。
搜索makefile文件,發(fā)現(xiàn)186行與190行用到了sed。
sed命令在linux下很常用,主要用于代碼內(nèi)文本替換。這fluent不厚道啊,windows版本還用linux下的工具。搜索了一圈也沒發(fā)現(xiàn)sed藏在哪里。不過有替代措施,上網(wǎng)下載一個windows下的sed試試先。
windows版本的sed軟件下載地址:https://sourceforge.net/projects/gnuwin32/files/sed/4.2.1/
下載完畢后安裝。安裝完畢后修改makefile文件的這兩行,如下圖所示,將完整的sed路徑添加進去。
再次執(zhí)行nmake,完整通過。
轉(zhuǎn)自公眾號:CFD仿真之道 胡坤
相關(guān)標簽搜索:Fluent UDF【15】:外部編譯UDF【轉(zhuǎn)發(fā)】 Fluent培訓(xùn) Fluent流體培訓(xùn) Fluent軟件培訓(xùn) fluent技術(shù)教程 fluent在線視頻教程 fluent資料下載 fluent分析理論 fluent化學反應(yīng) fluent軟件下載 UDF編程代做 Fluent、CFX流體分析 HFSS電磁分析