UDF学习(一)

1.1什么是UDF?

用户自定义函数,可以动态的连接到fluent求解器上来提高求解器性能。用户自定义函数用C语言编写,使用DEFINE宏来定义。可以使用标准C语言的库函数,也可以使用fluent Inc.提供的预定义宏,通过这些预定义宏,可以获得fluent求解器得到的数据。

1.2为什么要使用UDF?

一般来说,任何一种软件都不可能满足每一个人的要求,fluent也一样,其标准界面及功能并不能满足每个用户的需求。UDF正是为了解决这种问题而来,使用它我们可以编写fluent代码来满足不同用户的特殊需要。
* 定制边界条件,定义材料属性,定义fluent输运方程中的源相,用户自定义标量输运方程(UDS)中的源项扩散率函数等;
* 在每次迭代的基础上调节计算值;
* 方案的初始化;
* 后处理功能的改善;
* UDF的异步执行;
* fluent模型的改进(例如离散项模型,多项混合物模型)

*1.3UDF的局限性;

    • UDF并不能访问所有的变量和fluent模型;
    • 通常情况下,UDF使用国际单位制;

1.4解释型和编译型UDF

能解释的UDF不一定能编译!编译型UDF运行速度更快!

1.5C语言基础;

  1. 注释:/1111/

  2. 基础数据类型:int整型、long长整型、float浮点型、double双精度…(UDF中一般用real类型替换float浮点型和double双精度,int还是int整型)、强制类型转换等

  3. 常数:#define a 15(错误:a=b+1)

  4. 结构体:typedef struct list

      {  int a; 
      float b; 
      double c;                       
    

    }hhhh;
    hhhh x,y,z
    1. 数组:int a[8]、c[5][3];
    2. 指针:int *ip; ip=&a;
    3. 循环语句:for循环、while循环、do…while循环等。
    4. 条件判断语句:if(逻辑判断表达式)

UDF的主要功能包括:

定制边界条件、材料属性、表面和体积反应率、FLUENT输运方程的源项、用户自定义的标量方程的源项、扩散函数等。
调整每次迭代后的计算结果。
初始化流场的解。
在需要时,UDF的异步执行。
强化后处理功能。
强化现有FLUENT模型(如离散项模型、多相流模型等)。
向FLUENT传送返值、修改FLUENT变量、操作外部案例文件和data文件。

你可能感兴趣的:(Fluent,UDF学习,学习)