udf宏有两种方式可以被Fluent所接受:编译和解释。其中有一些宏既可以被解释也可以被编译,而一些宏则只能被解释。有一些场合只接受编译后的UDF(如动网格中的一些宏),而有些场合既可以接受编译的UDF,还能接受解释后的UDF。
解释型udf不需要额外的编译器,利用fluent自身即可解释源代码。在解释过程中udf源代码C预处理器解释成中间代码。当UDF的计算性能很重要时,建议以编译的形式运行UDF。所有解释型UDF都可以以编译的方式被Fluent加载。在UDF被解释后保存cas文件,之后再打开cas文件时,UDF能够直接被加载,而无需重新解释。
解释型udf的缺点是:无法使用goto
语句;只支持ANSI-C语法;不支持直接数据结构引用(direct data structure references);不支持局部结构声明;不支持联合体;不支持指向函数的指针;不支持函数数组。
编译型udf的构建方式与ANSYS Fluent可执行文件自身的构建方式相同。在代码构建过程中,其利用一个名为Makefile的脚本文件来调用C编译器构建一个目标代码库。该对象库与其编译过程中所使用的Fluent版本及计算机体系结构相关。
编译/构建过程需要一个或多个UDF的源文件(例如myudf.c),并将它们编译成对象文件(例如myudf.o或myudf.obj),之后将其构建成一个“共享库” (例如,libudf.dll)与目标文件。
但是编译型udf需要提前配置好环境变量,因此本文介绍了如何安装编译器,配置编译环境。
1.本文的ANSYS版本为ANSYS 2022 R1,找到ANSYS安装路径,打开udf.bat所在文件夹,本文的安装路径为E:\Ansys\Ansys Inc\v221\fluent\ntbin\win64,右键单击编辑,打开udf.bat。可以找到各个Microsoft Visual Studio对应的版本,我是打算安装Microsoft Visual Studio 2019,因此对应的是version 160。
2.到Microsoft Visual Studio官网安装对应的vs2019,并复制下安装路径
3.回到刚开始的udf.bat文件,将vs2019的安装路径替换上述安装路径,我的vs2019安装路径为E:\VS 2019。这样udf编译环境就设置好了。
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删