#include
"udf.h"    //包括常规宏

#include
"sg_mphase.h"    // 包括体积分数宏 CVOF(C,T)

#define T_SAT
373    //定义蒸发温度 100℃

#define LAT_HT
1.e3    //定义蒸发潜热 J/Kg

DEFINE_SOURCE(liq_src, cell, pri_th,
dS, eqn)    //液相质量源项 UDF

{

Thread *mix_th,
*sec_th;    //定义计算区线指针 real
m_dot_l;    //定义液相质量转移 kg/(m2.s)

mix_th =
THREAD_SUPER_THREAD(pri_th);    //指向混合区的主相即液相的指针

sec_th = THREAD_SUB_THREAD(mix_th,
1);    //指向单相控制区的气相的指针,气相为第二相

if(C_T(cell,
mix_th)>=T_SAT)    //如果液相单元的温度高于蒸发温度,液相向气
相的质量质量转移

{

m_dot_l = -0.1*C_VOF(cell,
pri_th)*C_R(cell, pri_th)* fabs(C_T(cell, mix_th) -
T_SAT)/T_SAT;

dS[eqn] = -0.1*C_R(cell,
pri_th)*fabs(C_T(cell, mix_th) -
T_SAT)/T_SAT;    //定义源项对质量转移

偏导

}

else

{、

m_dot_l = 0.1*C_VOF(cell,
sec_th)*C_R(cell, sec_th)*
fabs(T_SAT-C_T(cell,mix_th))/T_SAT;    //
如果指向混合区液相的单元温度小于蒸发温度,气相向液相的质量转移,液相得

dS[eqn] =
0.;//由于是气相向液相转移,所以液相的质量源项对质量转移的偏导为零

}

return m_dot_l;

}

DEFINE_SOURCE(vap_src, cell, sec_th,
dS, eqn) //气相质量源项 UDF

{

Thread * mix_th, *pri_th; real
m_dot_v;

mix_th = THREAD_SUPER_THREAD(sec_th);
//指向混合区的第二相即气相的指针

pri_th = THREAD_SUB_THREAD(mix_th, 0);
指向单相控制区的液相的指针,液相为主相

if(C_T(cell,
mix_th)>=T_SAT)    //如果混合区单元的温度高于蒸发温度,液相向气相的质量质量转移

{

m_dot_v = 0.1*C_VOF(cell,
pri_th)*C_R(cell, pri_th)*fabs(C_T(cell, mix_th) - T_SAT)/T_SAT;
dS[eqn] = 0.;'由于是液相向气相转移,所以气相的质量源项对来自液相的质量转移的偏导为零

}

else

{

m_dot_v =
-0.1*C_VOF(cell, sec_th)*C_R(cell, sec_th)*
fabs(T_SAT-C_T(cell,mix_th))/T_SAT;

//如果指向混合区的单元温度小于蒸发温度,气相向液相的质量转移,气相失
dS[eqn] = -0.1*C_R(cell, sec_th)* fabs(C_T(cell, mix_th) -
T_SAT)/T_SAT;

//由于是气相向液相转移,所以气相的质量源项对自身的质量转移的偏导不为零

}

return
m_dot_v;

}

DEFINE_SOURCE(enrg_src, cell, mix_th,
dS, eqn) //混合模型能量源项 UDF

{

Thread *pri_th, *sec_th;

real m_dot;

pri_th = THREAD_SUB_THREAD(mix_th,
0);//指向混合区的液相的指针 sec_th = THREAD_SUB_THREAD(mix_th, 1);
//指向混合区的气相的指针

if(C_T(cell,
mix_th)>=T_SAT)
//如果混合区的单元温度高于蒸发温度。质量转移由液相向气相转移,吸热,质量转 移量前有负号

{

else

m_dot = -0.1*C_VOF(cell,
pri_th)*C_R(cell, pri_th)*fabs(C_T(cell, mix_th) - T_SAT)/T_SAT;
dS[eqn] = -0.1*C_VOF(cell, pri_th)*C_R(cell, pri_th)/T_SAT;

}

{    //相反,气相向液相转移则放热

m_dot = 0.1*C_VOF(cell,
sec_th)*C_R(cell, sec_th)*fabs(T_SAT-C_T(cell,mix_th))/T_SAT;
dS[eqn] = 0.1*C_VOF(cell, sec_th)*C_R(cell, sec_th)/T_SAT;}

return LAT_HT*m_dot;
//气化潜热与质量转移率相乘得能量源项 W/m3

}

沸腾换热UDF【转载】的更多相关文章

  1. 基于 HTML5 换热站可视化应用

    换热站是整个热网系统中最核心的环节,它将一侧蒸汽或高温水通过热交换器换成可以直接进入用户末端的采暖热水.换热站控制系统是集中供热监控系统的核心部分,换热站控制系统既可独立工作,也可以接受调度中心的监督 ...

  2. OpenFOAM——圆柱绕流对流换热

    本算例来自<ANSYS FLUENT技术基础与工程应用:流动传热与环境污染控制领域> TOP和DOWN为对称边界(symmetry),入口速度为0.01m/s,入口温度为300K,圆柱温度 ...

  3. 工业4.0:换热站最酷设计—— Web SCADA 工业组态软件界面

    前言 随着工业4.0的不断普及与发展,以及国民经济的飞速前进,我国的城市集中供热规模也不断扩大,科学的管理热力管网具有非常重大的经济和社会效益.目前热力系统,如换热站大都采用人工监控,人工监控不仅浪费 ...

  4. Java 类的热替换---转载

    构建基于 Java 的在线升级系统 Java ClassLoader 技术剖析 在本文中,我们将不对 Java ClassLoader 的细节进行过于详细的讲解,而是关注于和构建在线升级系统相关的基础 ...

  5. 膜态沸腾UDF【转载】

    膜态沸腾的UDF,添加注释.其中获取VOF梯度的方法详见前面的日志,其中很多宏无法通过UDF手册查阅, 蒸汽相中的质量源项的一般形式为: 式中: 通过一阶近似,热流之差可表达为: 式中: 通过此近似, ...

  6. FLUENT求解传热系数surfaceheattransfercoef.的参考值的设置【转载】

    转载自:http://blog.sina.com.cn/s/blog_7ef78d170101ch30.html surface heat transfer coef. 计算公式: FLUENT求解传 ...

  7. 【原】Android热更新开源项目Tinker源码解析系列之三:so热更新

    本系列将从以下三个方面对Tinker进行源码解析: Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Android热更新开源项目Tinker源码解析系列之二:资源文件热更新 A ...

  8. 【原】Android热更新开源项目Tinker源码解析系列之二:资源文件热更新

    上一篇文章介绍了Dex文件的热更新流程,本文将会分析Tinker中对资源文件的热更新流程. 同Dex,资源文件的热更新同样包括三个部分:资源补丁生成,资源补丁合成及资源补丁加载. 本系列将从以下三个方 ...

  9. 【转载】ANSYS有限元分析中的单位问题

    原文地址:http://www.cnblogs.com/ylhome/archive/2009/02/26/1398756.html ansys中没有单位的概念,只要统一就行了.所以,很多人在使用时, ...

随机推荐

  1. 从Iterator到async/await

    Generator和Async 引言 接触过Ajax请求的会遇到过异步调用的问题,为了保证调用顺序的正确性,一般我们会在回调函数中调用,也有用到一些新的解决方案如Promise相关的技术. 在异步编程 ...

  2. jQuery常用知识点大总结

    目录 jQuery jQuery介绍 jQuery的优势 jQuery的引入方式有两种: jQuery对象和dom对象 jQuery选择器 基本选择器(同css) 基本筛选器(选择之后进行过滤): 属 ...

  3. springMVC + mybatis 下出现JDBC Connection *** will not be managed by Spring错误

    仔细查看配置中是否有如下类似的配置 execution(* com.ciguo.service.*.*(..)) <aop:config> <aop:pointcut id=&quo ...

  4. Multipath 多路径配置说明

    查看主机或者存储交换机上的www号,在存储上将LUN映射给需要的主机 cat  /sys/class/fc_host/host*/port_name 0x2002d0431efb7f5d 6d 该ww ...

  5. SpringCloud2.0 Zuul 网关路由 基础教程(十)

    1.启动基础工程 1.1.启动[服务注册中心],工程名称:springcloud-eureka-server 参考 SpringCloud2.0 Eureka Server 服务中心 基础教程(二) ...

  6. 使用git clone 出现 Permission denied 解决办法

    从git复制项目到本地的一种方式是使用ssh方式,即在git bash中运行命令:git clone git@github.com:***.git 此种方式下载代码到本地的时候,可能出现Permiss ...

  7. LeetCode - 92、反转链表 II

    反转从位置 m 到 n 的链表.请使用一趟扫描完成反转. 说明:    1 ≤ m ≤ n ≤ 链表长度. 示例: 输入: 1->2->3->4->5->NULL, m ...

  8. linux系统编程之文件与io(五)

    上一节中已经学习了文件描述符的复制,复制方法有三种,其中最后一种fcntl还并未使用到,关于这个函数,不光只有复制文件描述符的功能,还有其它一些用法,本节就对其进行一一剖析: fcntl常用操作: 这 ...

  9. Node.js创建服务及实现静态资源托管/接口请求

    1.环境 采用12.13.x版本 2.创建server.js 文件内容如下: let http = require("http"); let fs = require(" ...

  10. Diworth定理

    Diworth定理 一个序列中下降子序列的最少划分数个数等于最长上升子序列的长度. 一个序列中上升子序列的最少划分数个数等于最长下降子序列的长度. 每句中的前后两者互为偏序关系. 例题: Descri ...