24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 3439  |  回复: 9

ykxyer

铁杆木虫 (文坛精英)

[求助] fluent UDF如何实现瞬态,壁面heat flux为 上一时刻温度与此时温度差的函数的?

壁面热流边界满足公式heat flux=C_all*Density_all*t_all*(T1-T0))/delta_t;其中
C_all为总的热容;
Density_all为总的密度;
t_all为总的厚度;
T1为前一时刻的壁面温度;
T0为此时的壁面温度;
delta_t为两温度时间的差值;
壁面边界处,材料会随着温度的升高而吸收一部分热量,而这部分传热以heat flux形式表示,fluent中heat flux的单位为W/m2,
因此就简化了公式Q=C*m*(T1-T2),m=density*Volume近似等于:密度*厚度*面积,这部分热量不是随着时间变化的,而是随着温度变化的,
fluent中的单位为W/m2,在计算热量 时会乘以时间,因此在UDF中除了时间。

///////////////////////////////////////////////////////////////////////////////
下面是我自己写得UDF,但是初始化的时候有如下提示的错误:
Error:
FLUENT received fatal signal (ACCESS_VIOLATION)
1. Note exact events leading to error.
2. Save case/data under new name.
3. Exit program and restart to continue.
4. Report error to your distributor.
Error Object: #f
///////////////////////////////////////////////////////////////////////////////

#include "udf.h"
/*5-the wall heat flux*/
/*-----------------------------------------------------------------------*/
DEFINE_PROFILE(wall_heat_flux, thread, position)
{
/*--------------壁面材料储热部分--------------------*/
real Density_Al=2700;      /*铝的密度*/
real Density_CRFP=1570;    /*CRFP的密度*/
real C_Al=902;             /*铝的热容*/
real C_CRFP=840;           /*CRFP的热容*/
real t_Al=0.0048;          /*铝的厚度*/
real t_CRFP=0.0025;        /*CRFP的厚度*/
real w1,w2;                /*w1为铝的质量分数,w2为CRFP的质量分数*/
real Density_all,C_all;    /*壁面材料总的密度,热容*/
real heat_flux;          /*壁面材料储热部分近似热流量*/
real current_time step;    /*时间步长*/

real t;
cell_t c;
Thread *t;
face_t f;
begin_f_loop(f,thread)
{
t_wall=F_T(f,thread);
heat_flux_1=(1/(1/h_hydrogen+thickness_all/k_wall+1/h_air))*(t_air-t_wall);  /*对流交换单位面积氢气热流密度*/
w1=Density_Al*t_Al/(Density_Al*t_Al+Density_CRFP*t_CRFP);
w2=Density_CRFP*t_CRFP/(Density_Al*t_Al+Density_CRFP*t_CRFP);
Density_all=1/(w1/Density_Al+w2/Density_CRFP);
C_all=C_Al*w1+C_CRFP*w2;

current_timestep = RP_Get_Real("physical-time-step";
C_UDMI(c,t,0) = C_T_M1(c,t); /*获得前一时刻温度值*/
C_UDMI(c,t,1)= C_T_M2(c,t);/*获得前前时刻温度值*/

heat_flux=C_all*Density_all*(t_Al+t_CRFP)*(C_UDMI(c,t,0) - C_UDMI(c,t,1))/current_timestep;

F_PROFILE(f,thread,position)=heat_flux;

}
end_f_loop(f,thread)
}
回复此楼

» 猜你喜欢

» 本主题相关商家推荐: (我也要在这里推广)

You will when you believe.
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

MrKin

新虫 (正式写手)

udm不能相加减,既然下面已经用到了c-t-m,又何必把它存在udm中

发自小木虫IOS客户端
2楼2017-07-04 10:06:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ykxyer

铁杆木虫 (文坛精英)

引用回帖:
2楼: Originally posted by MrKin at 2017-07-04 10:06:22
udm不能相加减,既然下面已经用到了c-t-m,又何必把它存在udm中

直接就是:heat_flux=C_all*Density_all*(t_Al+t_CRFP)*(C_T_M1(c,t) - C_T_M2(c,t))/current_timestep 吗? 删掉这两行:C_UDMI(c,t,0) = C_T_M1(c,t); /*获得前一时刻温度值*/
C_UDMI(c,t,1)= C_T_M2(c,t);/*获得前前时刻温度值*/???
You will when you believe.
3楼2017-07-04 10:16:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

MrKin

新虫 (正式写手)

看上去没问题,你需要加载进去看看有没有其他报错

发自小木虫IOS客户端
4楼2017-07-04 10:37:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ykxyer

铁杆木虫 (文坛精英)

引用回帖:
4楼: Originally posted by MrKin at 2017-07-04 10:37:44
看上去没问题,你需要加载进去看看有没有其他报错

我现在把程序改成下面的了,但是还是有报错:Error: Update_Time_Level: invalid data,百度了一下,也没找到类似错误的是啥原因?

#include "udf.h"
/*5-the wall heat flux*/
/*-----------------------------------------------------------------------*/
DEFINE_PROFILE(wall_heat_flux, thread, position)
{
/*--------------壁面材料储热部分--------------------*/
real Density_Al=2700;      /*铝的密度*/
real Density_CRFP=1570;    /*CRFP的密度*/
real C_Al=902;             /*铝的热容*/
real C_CRFP=840;           /*CRFP的热容*/
real t_Al=0.0048;          /*铝的厚度*/
real t_CRFP=0.0025;        /*CRFP的厚度*/
real w1,w2;                /*w1为铝的质量分数,w2为CRFP的质量分数*/
real Density_all,C_all;    /*壁面材料总的密度,热容*/
real heat_flux;          /*壁面材料储热部分近似热流量*/
real current_time step;    /*时间步长*/

real t;
cell_t c;
Thread *t;
face_t f;
begin_f_loop(f,thread)
{
w1=Density_Al*t_Al/(Density_Al*t_Al+Density_CRFP*t_CRFP);
w2=Density_CRFP*t_CRFP/(Density_Al*t_Al+Density_CRFP*t_CRFP);
Density_all=1/(w1/Density_Al+w2/Density_CRFP);
C_all=C_Al*w1+C_CRFP*w2;

current_timestep = RP_Get_Real("physical-time-step";


heat_flux=C_all*Density_all*(t_Al+t_CRFP)*(C_T_M1(c,t) - C_T_M2(c,t))/current_timestep;

F_PROFILE(f,thread,position)=heat_flux;

}
end_f_loop(f,thread)
}
You will when you believe.
5楼2017-07-04 10:42:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

MrKin

新虫 (正式写手)

c-t-m中的变量是c和t,与你的面循环不对应,你用f-c0来代替c

发自小木虫IOS客户端

» 本帖已获得的红花(最新10朵)

6楼2017-07-04 11:20:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ykxyer

铁杆木虫 (文坛精英)

引用回帖:
6楼: Originally posted by MrKin at 2017-07-04 11:20:59
c-t-m中的变量是c和t,与你的面循环不对应,你用f-c0来代替c

刚改了,运行了下,又出现了刚开始的问题:Error:
FLUENT received fatal signal (ACCESS_VIOLATION)
1. Note exact events leading to error.
2. Save case/data under new name.
3. Exit program and restart to continue.
4. Report error to your distributor.
Error Object: #f
You will when you believe.
7楼2017-07-04 13:32:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ykxyer

铁杆木虫 (文坛精英)

送红花一朵
引用回帖:
6楼: Originally posted by MrKin at 2017-07-04 11:20:59
c-t-m中的变量是c和t,与你的面循环不对应,你用f-c0来代替c

想给你发点金币的,但是你不是应助,不过还是谢谢你。
You will when you believe.
8楼2017-07-04 13:34:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ykxyer

铁杆木虫 (文坛精英)

引用回帖:
6楼: Originally posted by MrKin at 2017-07-04 11:20:59
c-t-m中的变量是c和t,与你的面循环不对应,你用f-c0来代替c

我找到的原因了,是因为初始化时,前一时刻是没有值的,所以应该单独初始化。
You will when you believe.
9楼2017-07-04 16:54:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

李小白007

新虫 (小有名气)

亲亲 我的问题和你的一样呢,求赐教

发自小木虫IOS客户端
10楼2019-04-17 13:07:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 ykxyer 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 环境工程 085701,267求调剂 +6 minht 2026-03-29 6/300 2026-03-29 16:21 by 学员8dgXkO
[考研] 一志愿双一流机械285分求调剂 +4 幸运的三木 2026-03-29 5/250 2026-03-29 14:49 by Miko19
[考研] 求调剂,一志愿 南京航空航天大学 ,080500材料科学与工程学硕,总分289分 +7 @taotao 2026-03-29 7/350 2026-03-29 12:03 by longlotian
[考研] 材料学硕333求调剂 +11 北道巷 2026-03-24 11/550 2026-03-29 08:31 by fmesaito
[考研] 356求调剂 +3 gysy?s?a 2026-03-28 3/150 2026-03-29 00:33 by 544594351
[考研] 312,生物学求调剂 +3 小译同学abc 2026-03-28 3/150 2026-03-28 15:32 by 落睿可思
[考研] 266分,求材料冶金能源化工等调剂 +7 哇呼哼呼哼 2026-03-27 9/450 2026-03-28 12:22 by zllcz
[考研] 283求调剂 +7 A child 2026-03-28 7/350 2026-03-28 12:05 by zllcz
[考研] 药学105500求调剂 +3 Ssun。。 2026-03-28 3/150 2026-03-28 11:24 by lxf170613
[考研] 339求调剂,想调回江苏 +6 烤麦芽 2026-03-27 8/400 2026-03-28 10:40 by 烤麦芽
[材料工程] 一志愿C9材料与化工专业总分300求调剂 +8 曼111 2026-03-24 9/450 2026-03-28 07:58 by YYYYX1234
[考研] 086502化学工程342求调剂 +6 阿姨复古不过 2026-03-27 6/300 2026-03-28 07:06 by wangy0907
[考研] 考研调剂 +4 Sanmu-124 2026-03-26 4/200 2026-03-27 17:49 by kiokin
[考研] 314求调剂 +3 溪云珂 2026-03-26 3/150 2026-03-27 11:20 by sanrepian
[考研] 081200-11408-276学硕求调剂 +3 崔wj 2026-03-26 3/150 2026-03-26 19:57 by nihaoar
[考研] 材料与化工304求B区调剂 +3 邱gl 2026-03-25 3/150 2026-03-25 19:03 by Ainin_
[考研] 网络空间安全0839招调剂 +4 w320357296 2026-03-25 6/300 2026-03-25 17:59 by 255671
[考研] 一志愿吉林大学材料与化工303分求调剂 +4 为学666 2026-03-24 4/200 2026-03-25 11:27 by BruceLiu320
[考研] 318求调剂 +3 plum李子 2026-03-23 3/150 2026-03-25 09:42 by 雾散后相遇lc
[考研] 材料/农业专业,07/08开头均可,过线就行 +3 呵唔哦豁 2026-03-23 4/200 2026-03-23 22:30 by 汪!?!
信息提示
请填处理意见