UDF程序編譯常見問題,以及解決辦法!

1由于環(huán)境變量沒有設(shè)置好,沒法生成liubuf.dll文件,這時(shí)你加載時(shí)liubu.dll時(shí)報(bào)錯(cuò)!

UDF程序編譯常見問題,以及解決辦法!的圖1

1

如何修改:設(shè)置好環(huán)境變量,再次編譯就可以成功加載。

環(huán)境變量設(shè)置目前較為成熟和成功方法,經(jīng)過多次給網(wǎng)友調(diào)試,總結(jié)認(rèn)為按路徑設(shè)置環(huán)境變量是最好的方法,成功率百分之百!這里切記修改環(huán)境變量不是在系統(tǒng)變量中修改??!

 

設(shè)置如下:

UDF程序編譯常見問題,以及解決辦法!的圖2

2

主要找到編譯器安裝路徑下得include\lib\path就可以設(shè)置成功。具體見教程vs20102013環(huán)境變量設(shè)置。

另外需要注意是:由于程序字符格式問題,這種情況多為復(fù)制黏貼幫助文檔或者其他地方程序,直接黏貼在編譯器或者text文本里得,導(dǎo)致沒有完全編譯,加載過程時(shí)報(bào)錯(cuò),找不到liubuf.dll文件。

解決辦法:

編譯不成功原因是由于程序本身格式問題,編譯器不識別,多為復(fù)制黏貼過來程序。這時(shí)候可以將其復(fù)制黏貼到可以編譯成功程序里,即可解決問題。

2編譯過程中,由于書寫有誤,導(dǎo)致程序報(bào)錯(cuò)。

UDF程序編譯常見問題,以及解決辦法!的圖3

3

這樣錯(cuò)誤要根據(jù)報(bào)錯(cuò)提示進(jìn)行修改,千萬要注意看報(bào)錯(cuò)提示,再進(jìn)行逐行修改,事半功倍。

例如:第13行缺少分號,增加分號 即可。

UDF程序編譯常見問題,以及解決辦法!的圖4

4

具體調(diào)整見技術(shù)鄰視頻。

3由于程序結(jié)構(gòu)問題,導(dǎo)致報(bào)錯(cuò),received a fata segmental?

例如:在邊界上進(jìn)行面循環(huán)時(shí),我們卻想去獲得網(wǎng)格上參數(shù)值,例如C_U(c,t)網(wǎng)格速度值,這樣就是不合理得,會(huì)出現(xiàn)分割錯(cuò)誤。同時(shí),對于C_VOF(c,t)體積分?jǐn)?shù)這樣宏,一定要注意它的指針問題,否則你會(huì)出現(xiàn)常見錯(cuò)誤。

 

4由于程序函數(shù)宏格式問題,導(dǎo)致缺少“}”,size of“0”,

UDF程序編譯常見問題,以及解決辦法!的圖5

5

程序本身沒有錯(cuò)誤,但是編譯就是報(bào)錯(cuò)!這時(shí)比較讓人著急,找不到頭緒!

解決辦法:這時(shí)只需要找一個(gè)能編譯程序,復(fù)制黏貼過去。如果還不行,就說明你的函數(shù)是不是哪個(gè)地方寫錯(cuò)了,要進(jìn)行仔細(xì)檢查!

5、程序本身沒問題,編譯加載都成功,但是導(dǎo)入case時(shí),初始化報(bào)錯(cuò)或計(jì)算報(bào)錯(cuò),出現(xiàn)segmental,或者獲取數(shù)據(jù)為空錯(cuò)誤等。

舉例:下列程序,對區(qū)域內(nèi)定義溫度。

UDF程序編譯常見問題,以及解決辦法!的圖6

6

UDF程序編譯常見問題,以及解決辦法!的圖7

7

6、定義源項(xiàng)時(shí) 導(dǎo)致方程發(fā)散。

:由于增加了define source宏導(dǎo)致計(jì)算發(fā)散,這時(shí)要考慮加載源項(xiàng)方式是否符合物理模型,仔細(xì)思考后修改程序即可避免錯(cuò)誤。

 


登錄后免費(fèi)查看全文
立即登錄
App下載
技術(shù)鄰APP
工程師必備
  • 項(xiàng)目客服
  • 培訓(xùn)客服
  • 平臺客服

TOP

4
2