Fluent UDF编译成功步骤详解

1. UDF正常编译流程

很多同学会在群里面问一些UDF编译的问题,特此写一篇文章详细说明一下对UDF进行编译的正确流程。

第一步:配置环境变量

第二步:验证环境变量是否成功

第三步:进行UDF编译


2. 配置环境变量

2.1 编译型VS解释型

有些同学为了方便省事,想直接用解释型UDF,这样就不用配置环境变量了。解释型的UDF与编译型UDF在UDF的编写上没有任何不同,只是将UDF加载到Fluent中的方式有所不同。


解释型的UDF:运算速度慢、不需要C语言编译器、只能使用预定义的宏、只能使用C语言书写


对于简单的UDF,可以使用解释型的UDF。但是当你的UDF涉及到比较高级的宏,解释型UDF是识别不了的,比如BOUNDARY_FACE_GEOMETRY、PRINCIPAL_FACE_P、Error等


编译型UDF:运算速度快、可以使用C或C++语言书写、通用性强。


一句话,解释型不能通过的UDF,编译型有可能通过;但编译型不能通过的UDF,解释型一定不能通过。



2.2 验证环境变量是否成功

找一个一定没问题的UDF,编译一下看是否通过。如果没有任何error信息,那就说明环境变量配置成功了。

没问题的UDF如何找:UDF手册中的UDF肯定没问题,找一个最简单的就行,这里我提供一个:

#include "udf.h"

DEFINE_PROPERTY(density_air, c, t)//空气密度

{

real density;

density = 1.0;

return density;

}

直接新建txt文件,将上面代码复制,然后将.txt改为.c即可。也可以从文章后面的链接中直接获取UDF文件


什么样的信息算是error?:我们先假设UDF一定没问题,如果Source Files选择了这个UDF,点击Build后,控制台界面会生成一堆乱码信息,直接点击load,如果弹出下图,那大概率就是环境变量没有配置成功。


这种方法判断的前提是UDF没有任何问题。




3. 进行UDF编译

在环境变量配置成功的情况下,再进行自己书写的UDF的编译。

这一步还可能会遇到很多问题。由于环境变量已经配置成功,因此遇到的问题一定是UDF本身的问题,可能是书写不规范,也可能是语法问题。


还有可能,UDF编译通过,但是一点计算就会出现下图这种错误

或者出现received a fatal signal (aborted).


总之错误总是千奇百怪,防不胜防。但当使用的多了,会发现常见的错误原因就那几个,多注意排查即可。这部分下篇文章会进行叙述。





免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空