UDF总结Word文档下载推荐.docx
- 文档编号:17265068
- 上传时间:2022-11-30
- 格式:DOCX
- 页数:29
- 大小:32.59KB
UDF总结Word文档下载推荐.docx
《UDF总结Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《UDF总结Word文档下载推荐.docx(29页珍藏版)》请在冰豆网上搜索。
指向定义域的指针
二、node宏函数
NODE_X(node)
节点在x方向上的坐标(real)
NODE_Y(node)
节点在y方向上的坐标(real)
NODE_Z(node)
节点在z方向上的坐标(real)
F_NNODES(f,t)
面上节点的数目(int)
三、cell宏函数
1、
C_CENTROID(x,c,t)
realx[ND_ND]
单元格的重心坐标x[]
注意:
这句话直接使用,结果会输出到求解器中,需要使用的时候,调用x[];
其中,x[0]代表x方向坐标,x[1]代表y方向坐标,x[2]代表z方向坐标。
2、
C_VOLUME(c,t)
单元格的体积(real)
C_NNODES(c,t)
单元格的节点的数目(int)
C_NFACES(c,t)
单元格的面的数目(int)
3、
C_FACE(c,t,i)
返回给定单元cell_tc和Thread*t的面face_tf;
索引号i可以被传递给c_face_loop。
C_FACE_THREAD(c,t,i)
返回面face_tf(由C_FACE返回)的Thread*t;
索引号i可以被传递给c_face_loop。
4、
C_R(c,t)
返回线程t的单元c上的密度
C_P(c,t)
压力
C_U(c,t)
速度分量u
C_V(c,t)
速度分量v
C_W(c,t)
速度分量w
C_T(c,t)
温度
C_H(c,t)
焓
C_K(c,t)
湍流动能k
C_NUT(c,t)
Spalart-Allmaras模型中的湍流密度
C_D(c,t)
湍流动能耗散率(和ε像,看小木虫)
C_O(c,t)
比耗散率w
C_YI(c,t,i)
组分质量分数
5、
C_R_G(c,t)
返回线程t的单元c上的密度梯度
C_P_G(c,t)
压力梯度
C_U_G(c,t)
速度分量u梯度
C_V_G(c,t)
速度分量v梯度
C_W_G(c,t)
速度分量w梯度
C_T_G(c,t)
温度梯度
C_H_G(c,t)
焓梯度
C_K_G(c,t)
湍流动能k梯度
C_NUT_G(c,t)
Spalart-Allmaras模型中的湍流密度梯度
C_D_G(c,t)
湍流动能耗散率梯度(和ε像,看小木虫)
C_O_G(c,t)
比耗散率w梯度
C_YI_G(c,t,i)
组分质量分数梯度
①C_T_G(c,t)[0]:
温度梯度x方向的分量;
[1]:
y方向;
[2]:
z方向
②C_R_G(c,t)只能用于密度基求解器,C_P_G(c,t)只能用于压力基求解器③C_YI_G(c,t,i)只能用于密度基求解器,用于压力基求解器要设置,一切设置好后,输入rpsetvar’species/save-gradients?
#t
④只有当已经求解出包含这个变量的方程时才能得到梯度变量,需要如下设置solve/set/expert回车然后两个yes。
输入q可以返回上级目录
6、
C_R_RG(c,t)
返回线程t的单元c上的密度改造梯度
C_P_RG(c,t)
压力改造梯度
C_U_RG(c,t)
速度分量u改造梯度
C_V_RG(c,t)
速度分量v改造梯度
C_W_RG(c,t)
速度分量w改造梯度
C_T_RG(c,t)
温度改造梯度
C_H_RG(c,t)
焓改造梯度
C_K_RG(c,t)
湍流动能k改造梯度
C_NUT_RG(c,t)
Spalart-Allmaras模型中的湍流密度改造梯度
C_D_RG(c,t)
湍流动能耗散率改造梯度(和ε像,看小木虫)
C_O_RG(c,t)
比耗散率w改造梯度
C_YI_RG(c,t,i)
组分质量分数改造梯度
①C_T_RG(c,t)[0]:
②C_R_RG(c,t)只用于密度基求解器,C_P_RG(c,t)只用于压力基求解器③C_YI_RG(c,t,i)只能用于密度基求解器
7、
C_R_M1(c,t)
返回上一个时刻(t-Δt)的密度
C_P_M1(c,t)
返回上一个时刻(t-Δt)的压力
C_U_M1(c,t)
返回上一个时刻(t-Δt)的速度分量u
C_V_M1(c,t)
返回上一个时刻(t-Δt)的速度分量v
C_W_M1(c,t)
返回上一个时刻(t-Δt)的速度分量w
C_T_M1(c,t)
返回上一个时刻(t-Δt)的温度
C_YI_M1(c,t,i)
返回上一个时刻(t-Δt)的组分质量分数
①datafrom
C_T_M1
isavailable
only
ifuser-definedscalarsaredefined.
②详细可以看宏DEFINE_UDS_UNSTEADY(
name,c,t,i,apu,su)。
8、
C_R_M2(c,t)
返回上两个时刻(t-2Δt)的密度
C_P_M2(c,t)
返回上两个时刻(t-2Δt)的压力
C_U_M2(c,t)
返回上两个时刻(t-2Δt)的速度分量u
C_V_M2(c,t)
返回上两个时刻(t-2Δt)的速度分量v
C_W_M2(c,t)
返回上两个时刻(t-2Δt)的速度分量w
C_T_M2(c,t)
返回上两个时刻(t-2Δt)的温度
C_YI_M2(c,t,i)
返回上两个时刻(t-2Δt)的组分质量分数
C_T_M2
9、
C_MU_L(c,t)
层流粘度
C_MU_T(c,t)
湍流粘度
C_MU_EFF(c,t)
有效粘度
C_K_L(c,t)
导热系数
C_K_T(c,t,prt)
湍流热导率
C_K_EFF(c,t,prt)
有效热导率
C_DIFF_L(c,t,i,j)
层流组分扩散率
C_DIFF_EFF(c,t,i)
有效组分扩散率
prt是湍流普朗特常数。
10、
C_CP(c,t)
比热容
C_RGAS(c,t)
气体常数/相对分子质量
Spalart-Allmaras湍流粘度
11、
C_FMEAN(c,t)
primarymeanmixturefraction
C_FMEAN2(c,t)
secondarymeanmixturefraction
C_FVAR(c,t)
primarymixturefractionvariance
C_FVAR2(c,t)
secondarymixturefractionvariance
C_PREMIXC(c,t)
reactionprogressvariable
C_LAM_FLAME_SPEED(c,t)
层流火焰速度
C_SCAT_COEFF(c,t)
散射系数
C_ABS_COEFF(c,t)
吸收系数
C_CRITICAL_STRAIN_
RATE(c,t)
临界应变率
C_LIQF(c,t)
cell中的液体分数
C_POLLUT(c,t,i)
污染物的质量分数
①C_LIQF
isavailableonlyinfluidcellsandonlyifsolidificationisturnedON
②C_POLLUT(c,t,i):
0-MassFractionofNO;
1-MassFractionofHCN;
2-MassFractionofNH3;
3-MassFractionofN2O;
4-SootMassFraction;
5-NormalizedRadicalNuclei
③
Concentrationinparticles(颗粒浓度)
*10(-15次方)/kg,具体公式需要看fluent中的介绍。
12、
C_RUU(c,t)
uu雷诺应力
C_RVV(c,t)
vv雷诺应力
C_RWW(c,t)
ww雷诺应力
C_RUV(c,t)
uv雷诺应力
C_RVW(c,t)
vw雷诺应力
C_RUW(c,t)
uw雷诺应力
13、
C_VOF(c,t)
volumefractionforthephasecorrespondingtophasethread
t
多相流VOF模型,只适用于压力基求解器
四、Face宏函数(只能用于压力基求解器)
F_CENTROID(x,f,t)
面的重心坐标x[]
F_AREA(A,f,t)
realA[ND_ND]
返回A向量(面的法向量)
F_U(f,t)
F_V(f,t)
F_W(f,t)
F_T(f,t)
F_H(f,t)
F_K(ft)
F_D(f,t)
F_YI(f,t,i)
F_P(f,t)
F_FLUX(f,t)
返回通过一个面的质量流速
①如果流动方向是离开domain的话,F_FLUX的结果为正值,否则为负值。
②thesignofthefluxthatiscomputedbythesolverisoppositetothatwhichisreportedinthe
FLUENTuser-interface(e.g.,
Reports
Fluxes...).
五、Connectivity宏函数
一个面两边的cell可能不是属于同一个thread下的,如果这个面在domain的外表面上,则只存在C0,如果这个面在domain内部,则存在C0和C1。
1、AdjacentCellIndex(相邻cell的索引)
F_C0(f,t)
返回一个面相邻的C0(cell_tc)
F_C1(f,t)
返回一个面相邻的C1(cell_tc)
一个domain外表面相邻的只有C0,没有C1;
内部面相邻的有C0和C1
2、AdjacentCellThread
THREAD_T0(t)
返回一个面相邻的C0对应的thread
THREAD_T1(t)
返回一个面相邻的C1对应的thread
3、INTERIOR_FACE_GEOMETRY(需要增加#include“sg.h”)
INTERIOR_FACE_GEOMETRY(f,t,A,ds,es,A_by_es,dr0,dr1);
/这样可以单独使用。
使用之前需定义下面的变量:
(用法和C_CENTROID(x,c,t)类似,调用该函数后相应的值会存放在求解器中,需要哪个值自己再调用)
realA[ND_ND];
theareanormalvector面的法向量
realds;
distancebetweenthecellcentroids
reales[ND_ND];
theunitnormalvectorinthedirectionfromcellc0toc1
realA_by_es;
thevalue
realdr0[ND_ND];
vectorthatconnectsthecentroidofcell
c0
tothefacecentroid
realdr1[ND_ND];
thevectorthatconnectsthecentroidofcell
c1
4、BOUNDARY_FACE_GEOMETRY(需要增加#include“sg.h”)
BOUNDARY_FACE_GEOMETRY(f,t,A,ds,es,A_by_es,dr0);
/这样可以单独使用。
distancebetweenthecellcentroidandthefacecentroid
unitnormalvectorinthedirectionfromcentroidofcellc0tofacecentroid
BOUNDARY_FACE_THREAD_P(t)
如果t是边界面上的thread,则返回TRUE
具体可以看帮助文件,有相关例题。
6、BOUNDARY_SECONDARY_GRADIENT_SOURCE(需要增加#include“sg.h”)
BOUNDARY_SECONDARY_GRADIENT_SOURCE(source,n,dphi,dx,A_by_es,k)
使用它之前一般会使用BOUNDARY_FACE_GEOMETRY
其他注意事项看看中英文帮助文档
六、Special宏函数
1、ThreadPointerforZoneID(
Lookup_Thread)//可以用于边界条件的设置
如果你想对某个边界区域进行操作,你可以使用
Lookup_Thread找到你需要的区域对应的指针t,然后进行相应操作。
使用方法如下:
intzone_ID=2;
//ID是边界区域的编号,可以右击网格就可以查到
Thread*t=Lookup_Thread(domain,zone_ID);
多相流情况下使用会有点麻烦,具体看看帮助
2、ZoneID(
THREAD_ID)
intzone_ID=THREAD_ID(t);
可以得到t对应的zone的ID整数值。
3、DomainPointer(
Get_Domain)
Get_Domain(domain_id);
domain_id是整数,对于混合相是1,对于某一个相,可以查看define-phases找到相应的ID。
Get_Domain(domain_id)经常用在宏DEFINE_ON_DEMAND中,DEFINE_ON_DEMAND这个宏一般用于初始化或迭代后数据进行处理(取平均,最大值,最小值等),不能使用在迭代过程当中。
例:
DEFINE_ON_DEMAND(my_udf)
{
Domain*mixture_domain;
mixture_domain=Get_Domain
(1);
}
4、SetBoundaryConditionValue(
F_PROFILE)
F_PROFILE(
f,
t,
i)=…….;
①F_PROFILE是对面进行操作,一般用于边界条件的设定,改变边界条件上各种参数(压力,速度,组分参数)的值。
②i不需要提前定义或赋值,一般配合DEFINE_PROFILE(pressure_profile,t,i)使用,而这里已经定义了i。
具体可以参照DEFINE_PROFILE提供的例子。
5、THREAD_SHADOW(t)
if(!
NULLP(ts=THREAD_SHADOW(t)))
{
/*Dothingshereusingtheshadowwallthread(ts)*/
t是薄壁的一部分,对t进行操作
如果边界不是薄壁的一部分,THREAD_SHADOW(t)返回NULL
NULLP()括号里面的如果没有分配内存返回TRUE
七、Time-SampledData(C_STORAGE_R)时间取样数据
。
八、Model-SpecificMacros用于特定模型的宏
1、DPM宏
2、NOx宏
3、SOx宏
4、动网格宏
DT_THREAD(dt)
Dynamic_Thread*dt
pointertofacethread
DT_CG(dt)
centerofgravityvector
DT_VEL_CG(dt)
cgvelocityvector
DT_OMEGA_CG(t)
angularvelocityvector
DT_THETA(dt)
orientationofbody-fixedaxisvector
DYNAMESH_CURRENT_TIME
N/A
currentdynamicmeshtime
TIME_TO_ABSOLUTE_CRANK_ANGLE(time)
realtime
absolutevalueofthecrankangle
九、User-DefinedScalar(UDS)TransportEquationMacros用户自定义标量输运方程宏
在使用和本节UDS有关的宏的之前,必须先去fluent面板中进行设置标量的个数。
Define—User-Defined—Scalars
1、Set_User_Scalar_Name
当你在fluent面板中设置了UDS个数后,系统会给分配的变量相应的名字,例如,分配了2个标量,则两个标量的名字为UserScalar0和UserScalar1。
但你可以使用下面的函数对名字进行修改,i代表对第几个标量进行修改,name是字符串格式,可用”……”表示。
Set_User_Scalar_Name(inti,char*name);
上述修改只能修改一次,要改一下改完;
最好使用EXECUTE_ON_LOADING宏
2、F_UDSI
F_UDSI(f,t,i)
i为标量的序号
返回使用用户自
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- UDF 总结