加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

UDF程序编译常见问题,以及解决办法

(2017-02-28 09:18:22)
标签:

杂谈

​ 原文出处【技术邻】,查看全文请戳:UDF程序编译常见问题,以及解决办法

1由于环境变量没有设置好,没法生成liubuf.dll文件,这时你加载时liubu.dll时报错!

http://img.jishulink.com/upload/201612/1480656222824_clip_image002.jpg@!jslnk

图1

如何修改:设置好环境变量,再次编译就可以成功加载。

环境变量设置目前较为成熟和成功方法,经过多次给网友调试,总结认为按路径设置环境变量是最好的方法,成功率百分之百!这里切记修改环境变量不是在系统变量中修改!!

设置如下:

http://img.jishulink.com/upload/201612/1480656250880_clip_image004.jpg@!jslnk

图2

主要找到编译器安装路径下得include\lib\path就可以设置成功。具体见教程vs2010、2013环境变量设置。

另外需要注意是:由于程序字符格式问题,这种情况多为复制黏贴帮助文档或者其他地方程序,直接黏贴在编译器或者text文本里得,导致没有完全编译,加载过程时报错,找不到liubuf.dll文件。

解决办法:

编译不成功原因是由于程序本身格式问题,编译器不识别,多为复制黏贴过来程序。这时候可以将其复制黏贴到可以编译成功程序里,即可解决问题。

2编译过程中,由于书写有误,导致程序报错。

http://img.jishulink.com/upload/201612/1480656271840_clip_image006.jpg@!jslnk

图3

这样错误要根据报错提示进行修改,千万要注意看报错提示,再进行逐行修改,事半功倍。

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

http://img.jishulink.com/upload/201612/1480656291152_clip_image008.jpg@!jslnk

图4

具体调整见技术邻视频。

3由于程序结构问题,导致报错,received a fata segmental?

例如:在边界上进行面循环时,我们却想去获得网格上参数值,例如C_U(c,t)网格速度值,这样就是不合理得,会出现分割错误。同时,对于C_VOF(c,t)体积分数这样宏,一定要注意它的指针问题,否则你会出现常见错误。

4由于程序函数宏格式问题,导致缺少“}”,size of“0”,

http://img.jishulink.com/upload/201612/1480656319384_clip_image010.jpg@!jslnk

图5

程序本身没有错误,但是编译就是报错!这时比较让人着急,找不到头绪!

解决办法:这时只需要找一个能编译程序,复制黏贴过去。如果还不行,就说明你的函数是不是哪个地方写错了,要进行仔细检查!

5、程序本身没问题,编译加载都成功,但是导入case时,初始化报错或计算报错,出现segmental,或者获取数据为空错误等。

举例:下列程序,对区域内定义温度。

http://img.jishulink.com/upload/201612/1480656333229_clip_image012.jpg@!jslnk

图6

http://img.jishulink.com/upload/201612/1480656350865_clip_image014.jpg@!jslnk

图7

6、定义源项时 导致方程发散。

答:由于增加了define source宏导致计算发散,


​ 原文出处【技术邻】,查看全文请戳:UDF程序编译常见问题,以及解决办法

http://ww3/large/0069WrDYgw1fbs87zmtj6j30gp06jwev.jpg

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有