求解的方程:
a为固化度,da/dt与a和温度Temp(K为温度的函数,T为固体温度)有关,我想获得a与时间的关系即ai+1=ai+da/dt*dtime
![fluent复合材料固化度UDS!!!]()
捕获.PNG
这个是我的模型,即空气给固体区域加热,固体区域随着温度的升高固化
![fluent复合材料固化度UDS!!!-1]()
slide2.png
这是我编写的UDS但是结算完全是错误的
代码如下
#include "udf.h"
#include "math.h"
#define A 6.167e20
#define H 77500.0
#define R 8.314
#define E 1.674e5
#define m 0.524
#define n 1.476
DEFINE_SOURCE(dc, c, t, dS, eqn)//固化速率da/dt
{
real Temp, source,a;
Temp = C_T(c, t);
a = C_UDSI(c, t, 0);//获取固化度
source = A/exp(E/R/Temp)*pow(a,m)*pow((1-a),n);//本例k2为0
dS[eqn] = 0;
return source;
}
DEFINE_SOURCE(DOC, c, t, dS, eqn)//固化度
{
real dc, source;
dc=C_UDSI(c,t,1);//获取固话速率
source = C_UDSI(c, t, 0);
source = source + dc*CURRENT_TIMESTEP;
dS[eqn] = 0;
return source;
}
DEFINE_PROFILE(tt,t,i)//速度入口温度随时间变化
{
face_t f;
begin_f_loop(f,t)
{
real time=RP_Get_Real("flow-time" ;
if (time<3400)
{
F_PROFILE(f,t,i) = 288+0.03*time;
}
else
F_PROFILE(f,t,i) =399;
}
end_f_loop(f,t)
} |