首页/文章/ 详情

FLUENT边界条件的引用

1年前浏览3413

正文共:2248 字 4 图    预计阅读时间: 6 分钟

1 前言                                                                 

    太阳能热水器在很多太阳能资源丰富的地区相当常见,笔者老家楼顶就有一台太阳能热水器。在一些大型建筑中,可能是多台设备串并联在一起。对于串联的模块,一台热水器的出口接到另一台的入口。假设不考虑接管的热损失,那么上一台设备的出口温度就可以作为下一台设备的入口温度边界。如果用FLUENT来仿真串联模块的总温升该如何处理,笔者暂时想到两种方法,读者可以自行思考其他的方法。第一种是将出口的平均温度求解出来,然后作为温度边界施加到入口(由于不考虑接管热损失,因此管道不建模),计算资源富足的话可以将所有设备都建模,通过UDF进行边界条件引用,需注意的是这是一种近似方法,实际上出口截面的温度分布不是均匀的,因此会有一定的误差。第二种是将出口的温度分布导出到profile文件,然后读取到入口,与前一种相比,第二种方法误差相对小一些,它还原了截面各点的温度分布情况。但是建模的时候需注意入口和出口的坐标位置需对应,这样profile里面的数据才可以在面上插值。本案例将对第一种方法进行简化演示,供读者在实际工程应用中参考。

2 问题描述                                                          

    建立如下的二维平面模型,三台设备串联,设备尺寸500×200mm,管道大小20mm,入口长50mm,出口长100mm,各个加热面的总功率为480W,热流密度1000W/m2。管道的流速均为1m/s,介质为空气,入口1的温度为300K,求出口的温度(暂不考虑热损失)。

1 管道设备模型

3 计算结果                                                          

    各个设备的温度分布如下图,可以看出,沿空气流动方向,设备的整体温度逐渐上升,符合实际情况。

2 温度分布

    各个设备的速度分布如下图,由于各个设备的速度边界是一致的,因此速度分布是一样的。

3 速度分布

    我们读取各个出入口的面积加权平均温度,如下表。可以看到,各个相连的出入口温度近似相等,这里的误差我们先不深入分析了。经过三个设备加热后,空气的温升58.92K。本案例未考虑热损失,因此我们也可以通过Q=cmΔT手动计算。空气比热1006.43j/kgK,密度1.225kg/m3,因此质量流量为0.0245kg/s(也可以在FLUENT中直接读取),总加热功率Q1440W,因此ΔT=58.40K,与FLUENT计算结果近似相等。

1 出入口平均温度汇总

计算源文件地址:

链接:

https://pan.baidu.com/s/1oPqBS4_DxXs91zmngN_QzQ 

提取码:01pv 

附录 本案例用到的UDF代码及简要解释                                  























































#include "udf.h"#include "prop.h"int id_outlet01=12;/*第一个出口ID*/int id_outlet02=22;/*第二个出口ID*/real avg_temp01=299;/*第一个出口初始温度*/real avg_temp02=299;/*第二个出口初始温度*/real NV_VEC(A1); /*定义第一个出口面积矢量*/real NV_VEC(A2); /*定义第二个出口面积矢量*/Thread *thread_out01;/*定义第一个出口面索引*/Thread *thread_out02;/*定义第二个出口面索引*/face_t f;Domain *domain;real sum_T01=0.0/*温度计算中间量初始化*/real sum_A01=0.0/*面积计算中间量初始化*/real sum_T02=0.0;real sum_A02=0.0;DEFINE_ADJUST(myadjust,d) /*函数用于每一步迭代进行调整*/{domain=Get_Domain(1); /*指向区域的指针,可访问mesh里面的所有单元和面索引*/thread_out01=Lookup_Thread(domain,id_outlet01); /*获取出口01的ID*/thread_out02=Lookup_Thread(domain,id_outlet02); /*获取出口02的ID*/begin_f_loop(f,thread_out01){F_AREA(A1,f,thread_out01);sum_A01+=NV_MAG(A1);sum_T01+=NV_MAG(A1)*F_T(f,thread_out01);}end_f_loop(f,thread_out01) /*计算出口01平均温度*/begin_f_loop(f,thread_out02){F_AREA(A2,f,thread_out02);sum_A02+=NV_MAG(A2);sum_T02+=NV_MAG(A2)*F_T(f,thread_out02);}end_f_loop(f,thread_out02) /*计算出口02平均温度*/avg_temp01=sum_T01/sum_A01; /*出口01平均温度*/avg_temp02=sum_T02/sum_A02; /*出口02平均温度*/}DEFINE_PROFILE(inlet02,thread,index){begin_f_loop(f,thread){F_PROFILE(f,thread,index)=avg_temp01; /*入口02温度边界设置为出口01的平均温度*/end_f_loop(f,thread)}}DEFINE_PROFILE(inlet03,thread,index){begin_f_loop(f,thread){F_PROFILE(f,thread,index)=avg_temp02; /*入口03温度边界设置为出口02的平均温度*/end_f_loop(f,thread)}}



来源:仿真与工程

附件

免费链接.txt
UDF建筑太阳能
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2023-07-05
最近编辑:1年前
余花生
签名征集中
获赞 195粉丝 372文章 306课程 0
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈