24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 3447  |  回复: 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的回帖

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的回帖
查看全部 10 个回答

MrKin

新虫 (正式写手)

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

发自小木虫IOS客户端
2楼2017-07-04 10:06:22
已阅   回复此楼   关注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的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 083000学硕274求调剂 +9 Li李鱼 2026-03-26 9/450 2026-03-30 21:06 by dophin1985
[考研] 求收留 +6 1943443204 2026-03-28 6/300 2026-03-30 20:37 by dick_runner
[考研] 279求调剂 +12 j的立方 2026-03-29 12/600 2026-03-30 20:30 by dick_runner
[考研] 085600,专业课化工原理,320分求调剂 +5 大馋小子 2026-03-29 5/250 2026-03-30 19:02 by 源_2020
[考研] 297求调剂 +17 田洪有 2026-03-26 18/900 2026-03-30 18:32 by nothing投稿中
[考研] 一志愿南开大学0710生物学359求调剂 +5 兔兔兔111223314 2026-03-29 7/350 2026-03-30 18:29 by 兔兔兔111223314
[考研] 332求调剂 +6 @MZB382400 2026-03-28 6/300 2026-03-30 16:57 by 无际的草原
[考研] 化学0703 调剂 306分 一志愿211 +8 26要上岸 2026-03-28 8/400 2026-03-30 16:39 by herarysara
[考研] 材料科学与工程调剂 +8 深V宿舍吧 2026-03-30 8/400 2026-03-30 16:19 by 晶体之美
[考研] 生物技术与工程 +7 1294608413 2026-03-25 8/400 2026-03-30 11:36 by 唐沐儿
[考研] 349求调剂 +6 李木子啊哈哈 2026-03-25 6/300 2026-03-29 12:47 by 无际的草原
[考研] 330分求调剂 +5 qzenlc 2026-03-29 5/250 2026-03-29 07:37 by 无际的草原
[考研] 085701环境工程,267求调剂 +16 minht 2026-03-26 16/800 2026-03-28 12:16 by zllcz
[考研] 283求调剂 +7 A child 2026-03-28 7/350 2026-03-28 12:05 by zllcz
[考研] 085405 考的11408求各位老师带走 +3 Qiu学ing 2026-03-28 3/150 2026-03-28 09:19 by 乐呵呵的追梦人
[考研] 308求调剂 +7 墨墨漠 2026-03-27 7/350 2026-03-28 07:43 by 热情沙漠
[考研] 308求调剂 +7 墨墨漠 2026-03-25 7/350 2026-03-27 14:47 by 狂炫麦当当
[考研] 一志愿吉大071010,316分求调剂 +3 xgbiknn 2026-03-27 3/150 2026-03-27 10:36 by guoweigw
[考研] 材料调剂 5+4 想要一壶桃花水 2026-03-25 10/500 2026-03-26 19:56 by 不吃魚的貓
[考研] 293求调剂 +7 加一一九 2026-03-24 7/350 2026-03-25 12:02 by userper
信息提示
请填处理意见