FLUENT阿累尼乌斯参数超限了怎么办
正文共: 538字 4图 预计阅读时间: 2分钟FLUENT标准的阿累尼乌斯反应速率可以解决大多数问题,但在实际应用中,难免会出现非标准形式或者超出标准形式参数限制的反应速率,比如考虑如下的体积反应,假设该反应的指前因子A=2.54e37,活化能Ea=2.59e8J/kmol,温度系数β=-7.95,在化学反应面板上输入指前因子时会发现超出了FLUENT允许的最大值1e38,因此通过软件面板来定义该化学反应速率是没法实现的。此时,只能通过UDF来定义该反应速率,代码如下,DEFINE_VR_RATE宏的用法详细可参考UDF帮助文档,在之前的文章我们也用过该宏,本案例不做详细解释,以下代码其实就是标准的阿累尼乌斯反应速率式。#include"udf.h"DEFINE_VR_RATE(vol_reac_rate,c,t,r,wk,yk,rate,rr_t){real ci, prod;double A=2.54e38;double b=-7.95;double E=2.59e8;int i;/* Calculate Arrhenius reaction rate */prod = 1.;for(i = 0; i < r->n_reactants; i++){ci = C_R(c,t) * yk[r->reactant[i]] / wk[r->reactant[i]];prod *= pow(ci, r->exp_reactant[i]);}*rate = A * exp(- E / (UNIVERSAL_GAS_CONSTANT * C_T(c,t))) *pow(C_T(c,t), b) * prod;*rr_t = *rate;} 调用以上的UDF反应速率。可以看到,该反应已成功模拟。来源:仿真与工程