案例目录

1 引子

1.1 案例描述

本案例进行T型管中的流动模拟,流体以不同的温度进入T形管,通过计算模拟混合过程。

1.2 案例学习目标

本案例主要描述FLUENT界面的使用,包括CFD的全部过程,包括:

  • 读取网格
  • 选择计算模型
  • 选择并设置材料属性
  • 定义边界条件
  • 设置计算监视器
  • 运行求解器
  • 后处理

2 计算仿真目标

仿真的对象为冷热水在T型管内的混合过程

计算仿真的目的在于确定:

  • 1.流体混合程度
  • 2.混合过程的压力降

3 启动FLUENT并读入网格

本案例利用workbench中的FLUENT模块,也可以使用独立版本的FLUENT进行。

  • 1.启动Workbench,利用菜单Files | Save as…保存新的文件mixing_tee
  • 2.从左侧的Component Systems列表中选择拖拽Fluent至右侧项目窗口中
  • 3.右键选择单元格Setup,选择子菜单Import FLUENT Case | Browse
  • 4.在打开的文件选择对话框中,修改文件过滤选项为Fluent Mesh File
  • 5.选择网格文件Mixing_tee.msh,点击OK按钮确认选择

    如下图所示。

  • 6.返回至项目面板,鼠标双击Setup单元格启动FLUENT,如下图所示,可以根据自身计算机性能选择串行或并行计算(如下图所示采用并行4核计算)

  • 7.点击OK按钮进入FLUENT工作环境

4 FLUENT工作界面

FLUENT17.0工作界面如图所示。主要包括5个部分:

  • 1.Ribbon菜单。里面包含了所有的操作按钮
  • 2.模型树。包含了CFD仿真流程中所需的所有节点
  • 3.参数设置面板。对应不同的模型树节点所需的参数设置
  • 4.图形显示窗口。
  • 5.TUI及消息输出窗口

5 网格缩放及检查

在导入计算网格后,第一步要做的操作是检查导入的网格有效性及网格质量。

  • 选择而模型树节点General
  • 在右侧面板中点选按钮Check,TUI窗口反馈信息如下图所示。

    注意:主要检查两个参数:一个是Domain Extents,查看计算域尺寸是否与实际尺寸相符,若不相符则需要对计算域进行缩放;另一个为mimimum volume,必须确保最小体积大于0

  • 2.选择面板中的Report Quality按钮,查看网格质量。TUI命令窗口显示网格质量如下图所示。



    给出了三种网格质量:Minimum Orthogonal Quality、Maximum Ortho Skew 及Maximum Aspect Ratio,其中Minimum Orthogonal Quality的范围为0-1(1为理想网格),Maximum Ortho Skew的范围为0-1(0为理想网格),Maximum Aspect Ratio越小越好。

6 修改单位

修改温度的单位为摄氏度。点击General设置面板中的Units…按钮弹出单位设置面板。

如下图所示,设置temperature的单位为c

7 设置模型

这里激活能量方程及湍流模型。

  • 双击模型树节点Models > Energy,在弹出的Energy对话框中,勾选Energy Equation前方的复选框,激活能量方程,如下图所示。点击OK按钮确认操作。

  • 双击模型树节点Models > Viscous(Laminar),在弹出的对话框中选择k-epsilon(2 eqn)Realizable,其他参数保持默认,点击OK按钮确认操作。

8 定义新材料

FLUENT默认采用的材料为air,案例中流体介质为液态水。

  • 右键点击模型树节点Material > Fluid,选择弹出菜单New,如下图所示。

  • 在弹出的对话框中,选择Fluent Database…,弹出材料库对话框,在材料库中选择材料water-liquid(h2o),点击Copy按钮,并点击Close按钮关闭对话框,如下图所示。



    点击Close按钮关闭材料新建对话框。

9 计算域设置

  • 鼠标双击模型树节点Cell zone Conditions > fluid(fluid),弹出参数设置面板,在参数面板中设置Material Name为上一步创建的材料water-liquid,如下图所示。
  • 点击OK按钮关闭对话框。

10 边界条件设置

在模型树节点Boundary Conditions中可以设置计算模型的边界条件。如图所示。



界面元素与Cell Zone Conditions设置面板类似。

设置边界条件:

  • inlet-y边界设置

    • Zone列表框中选择边界inlet-y,选择Type下拉框选项Velocity-inlet,鼠标点击面板按钮Edit…
    • 弹出参数设置对话框,如图所示。在Momentum标签页下,设置Velocity Manitude参数值为0.3; 选择Specification MethodIntensity and Hydraulic Diameter,设置Tubulent Intensity5,设置Hydraulic Diameter0.15

    • 切换至Thermal面板,设置Temperature15,如图所示。

  • inlet-z边界设置
    • inlet-y设置相类似,所不同的是设置Velocity Manitude参数值为0.1;设置Hydraulic Diameter0.1;设置Temperature25
  • outlet边界设置
    • 选择Type下拉框选项pressure-outlet,点击Edit…按钮
    • 在弹出的对话框Momentum标签页下,设置Gauge Pressure0,设置Specification MethodIntensity and Hydraulic Diameter,设置Backflow Turbulent Intensity为5,设置Backflow Hydraulic Diameter0.15
    • 切换至Thermal面板,设置Temperature20

      需要注意的是:在计算的过程中,有可能会出现介质从出口边界进入流体域的情况(回流),这种情况有可能是真是的流动特征(在计算收敛时仍然存在回流),或者仅仅只是收敛过程中的短暂状态(随计算进行回流消失)。不管是何种情况,FLUENT需要知道边界上的真实来流信息。若在出口位置没有回流,则这些回流参数值在计算过程中不会被使用。在选择计算边界位置时,通常将出口位置选择在没有回流的地方。

12 设置离散格式

模型树节点Solution Methods主要设置模型的离散算法。如图所示。

  • 选择Pressure-Velocity Coupling schemeCoupled
  • 激活选项Pseudo Transient
  • 激活选项Warped-Face Gradient Correction

    离散格式定义了梯度及变量插值的计算方法。默认选项适用于大多数的计算问题。

13 Monitors

利用模型树节点Monitors可以在计算过程中监测一些物理量的变化。本例设置监测两个入口压力值及出口温度标准差。Monitors设置面板如下图所示。



设置面板中的一些参数:

  • Residuals,Statistic and Force Monitors:监测残差、统计值以及各种力
  • Surface Monitors:监测面上的各种参数值
  • Volume Monitors:监测体上的各种参数值
  • Covergence Monitors:收敛监测,通过前面的监测参数来判断计算是否收敛

本例中监测三个面参数,利用Surface Monitors下方的Create按钮进行创建。鼠标选择此按钮后,如下图所示。



定义三个Monitors,步骤包括:

  1. 点击Surface Monitors下的Create…按钮

    • Name:设置为p-inlet-y
    • Plot Windws:设置为2
    • Report Type:设置为Area-Weighted Average
    • Field Variable:设置为PressureStatic Pressure
    • Surface:选择inlet-y
  2. 点击Surface Monitors下的Create…按钮

    • Name:设置为p-inlet-z
    • Plot Windws:设置为3
    • Report Type:设置为Area-Weighted Average
    • Field Variable:设置为PressureStatic Pressure
    • Surface:选择inlet-z
  3. 点击Surface Monitors下的Create…按钮

    • Name:设置为t-dev-outlet
    • Plot Windws:设置为4
    • Report Type:设置为Standard Deviation
    • Field Variable:设置为TemperatureStatic Temperature
    • Surface:选择outlet

14 Initialization

利用模型树节点Solution Initialization可对计算域进行初始化。FLUENT提供了两种初始化方法:

  • Hybird Initialization:通过各种不同的插值方式获得计算域中的初始值。如利用求解拉普拉斯方程的方式获取初始速度场与压力场
  • Standard Initialization:直接定义各未知物理量的初始值



    本案例采用Hybird Initialization方式进行初始化,如上图所示,选择Initialize按钮进行初始化。此时在图形窗口中可能会出现如下图所示的警告信息,不过这仅仅只是提示拉普拉斯方程没有收敛,大可以忽略。

    对于稳态计算,初始值不会影响最终计算结果,但是会影响收敛过程,严重偏离实际的初始值可能会导致计算收敛缓慢甚至发散。对于瞬态计算,初始值会影响到后续的计算结果。

15 Run Calculation

选择模型树节点Run Calculation,如图所示。

  • 设置Number of Iterations350,点击按钮Calculate进行迭代计算。

16 Results

计算后处理。

16.1 计算监测图形

  • 残差曲线

    计算监测得到的残差曲线如下图所示。

    图中残差曲线显示计算在迭代120步左右达到收敛,表现为残差曲线降低至设置的残差标准以下,默认残差标准为10−310−3

  • 入口压力监测图

    两个入口压力监测图如下图所示。



    (图1)



    (图2)

    从这两幅压力监测图看出计算结果基本达到稳定,压力值随迭代变化很小。

  • 出口温度标准差变化图

    监测得到的出口温度标准差曲线图如下图所示。



    温度标准差反映了温度混合的均匀程度,该值越大表示温度分布越不均匀。图中最终的温度标准差约为0.2。

16.2 Graphics

模型树节点Graphics下包含了MeshContoursVectorsPathlines以及Particle Tracks,如图所示。在Graphics参数设置面板中还包含了Animations操作以及一些图形显示参数设置按钮,如灯光、视图等。

  • Mesh:显示网格图
  • Contours:显示云图
  • Vectors:显示矢量图
  • Pathlines:显示流线图
  • Particle Tracks:显示粒子追踪图

本案例主要利用ContoursVectors显示云图及矢量图。

16.2.1 壁面温度分布

查看壁面温度云图显示。鼠标双击Graphics列表框中的Contours列表项,在弹出的对话框中进行如下图所示设置:

  • 勾选激活Filled选项
  • Contours of下拉框中选择TemperatureStatic Temperature
  • Surfaces列表项中选择wall-fluid
  • 点击按钮Display



    壁面上的温度云图显示如下图所示。

16.2.2 创建截面

创建截面后可以显示截面上的物理量分布。这里创建x截面

  • 利用Ribbon界面中的Postprocessing标签页
  • 选择Create按钮下的Iso-Surface…功能菜单

    如下图所示。



    在弹出的对话框中进行如图所示设置:

  • 选择Surface of ConstantMeshX-Coordinate
  • 设置Iso-Value0
  • 设置New Surface Namex-0
  • 点击Create按钮创建截面

16.2.3 显示截面物理量

回到Contours设置面板,

  • 设置Contours ofVelocityVelocity Magnitude
  • 选择Surfacex-0
  • 点击按钮Display



    显示速度云图如下图所示。



    设置Contours ofTemperatureStatic Temperature,点击Display按钮。



    显示温度云图如下图所示。

16.2.4 Pathline显示

可以利用Pathline显示流线。选择Graphics列表中的Pathlines选项,弹出如下图所示对话框。



显示的流线图如下图所示。

16.3 Plots

模型树节点Plots可以输出一系列图形,如曲线图、直方图等。



列表项:

  • XY Plot:以XY曲线图显示变量的变化规律
  • Histogram:以直方图形式显示数据
  • File:以图形形式显示文件中的数据
  • Profile:图形化显示配置文件
  • FFT:对文件指定的数据进行快速傅里叶变换,将时域数据转化为频域数据。

可以先创建line,再利用XYPlot显示线上物理量分布。利用Postprocessing下的工具按钮Create,选择菜单项Line/Rake…,如下图所示。



弹出如下图所示对话框:

  • 设置TypeLine
  • 设置End Point分布为**(0,-0.3556,0)及(0,0.3556,0)
  • 设置New Surface Nameline-center



    双击模型树节点XY Plot,弹出如下图所示对话框,进行如下设置:
  • 设置Plot Direction为**(0,1,0)
  • 设置Y Axis FunctionVelocityVelocity Magnitude
  • 选择Surface列表项line-center
  • 点击按钮Plot



    显示沿直线line-center上速度分布曲线如下图所示。

【FLUENT案例】01:T型管混合器中的流动与传热的更多相关文章

  1. 【FLUENT案例】03:冲蚀

    1 引子2 问题描述3 模型准备4网格5模型设置6 材料设置7 设定注入器8 修改材料9 Cell zone Conditions设置10 边界条件设置10.1 inlet入口设置10.2 出口设置1 ...

  2. python 面向对象编程案例01

    # -*- coding: utf-8 -*- #python 27 #xiaodeng #面向对象编程案例01 class Behave(): def __init__(self,name): se ...

  3. web综合案例01

    web综合案例01 ... .... 内容待添加

  4. 【01】在 issue 中创建 list

    [01]在 issue 中创建 list 你想在你的 issue中看到可多选的 list 么? 当你查看问题时,你想不想让它变成 2 of 5 这样的形式. 如果想,你可以在 issue 中使用以下句 ...

  5. 第7.16节 案例详解:Python中classmethod定义的类方法

    第7.16节  案例详解:Python中classmethod定义的类方法 上节介绍了类方法定义的语法以及各种使用的场景,本节结合上节的知识具体举例说明相关内容. 一.    案例说明 本节定义的一个 ...

  6. HT for Web中3D流动效果的实现与应用

    流动效果在3D领域有着广泛的应用场景,如上图中医学领域可通过3D的流动直观的观察人体血液的流动,燃气领域可用于监控管道内流动的液体或气体的流向.流速和温度等指标. 如今企业数据中心机房普遍面临着设备散 ...

  7. 【FLUENT案例】02:DPM模型

    1 引子1.1 案例描述1.2 学习目标1.3 模拟内容2 启动FLUENT并导入网格3 材料设置4 Cell Zones Conditions5 Calculate6 定义Injecions7 定义 ...

  8. 【FLUENT案例】06:与EDEM耦合计算

    折腾了很久才把耦合模块搞定,用的还是网上别人编译好的UDF,不完美.自己编译的时候,老是提示无法找到fluent中的一些头文件,个人怀疑是操作系统和visual studio的问题,有时间换个系统和V ...

  9. 【FLUENT案例】05:DDPM模型

    本例利用FLUENT的DDPM模型对提升管进行模拟. 1 介绍 本案例演示在FLUENT中利用稠密离散相模型(Dense discrete phase model,DDPM)模拟2D提升管.DDPM模 ...

随机推荐

  1. WCF学习之旅—请求与答复模式和单向模式(十九)

    一.概述 WCF在通信过程中有三种模式:请求与答复.单向.双工通信.以下我们一一介绍. 二.请求与答复模式 客户端发送请求,然后一直等待服务端的响应(异步调用除外),期间处于假死状态,直到服务端有了答 ...

  2. tomcat安装和配置

    官网下载最新的tomcat9,解压 http://tomcat.apache.org/download-90.cgi 环境变量配置 JAVA_HOME: C:\Program Files\Java\j ...

  3. 使用PowerShell收集多台服务器的性能计数器

    写在前面     当管理多台Windows Server服务器时(无论是DB.AD.WEB以及其他的应用服务器),当出现性能或其他问题后,参阅性能计数器都是一个非常好的维度从而推测出问题可能出现的原因 ...

  4. ASP.NET Core 1.0中实现文件上传的两种方式(提交表单和采用AJAX)

    Bipin Joshi (http://www.binaryintellect.net/articles/f1cee257-378a-42c1-9f2f-075a3aed1d98.aspx) Uplo ...

  5. .NET MVC4 Razor视图预编译(一)

    在平时使用.NET MVC中不乏有类似的需求:某些razor视图,特别是系统后台的视图,不想让用户自行更改,需要通过某种方法把视图模板编译到项目的dll中去. 但是VS并不提供razor的预编译,如果 ...

  6. 基于NodeJS微信公众号

    最近重新研究了微信公众号的高级接口,原来也利用C#或JAVA写过微信公众号,主要是消息的基础接口. 由于当时不知道微信公众号可以申请测试公众号,微信测试公众号基本上没有任何限制,对于开发来说是一个不错 ...

  7. Entity Framework实现多列排序

    aList.OrderBy(a => a.WIndex).ThenBy(a=>a.KIndex) 类似sql:order by WIndex,KIndex

  8. 基础笔记(一):C#编程要点

    前言 来源于手中日常摘录的资料和书籍,算是对看过的东西的总结,部分注有阅读心得,也有部分只提出大纲或结论.(备注:本篇文章中大部分要点需要有实际的开发经验,有助于阅读理解.)     目录 const ...

  9. JAVA 入门第二章 (面对对象)

    本渣渣鸽了一个月终于有时间更新.因为有c++基础,学起来这章还是比较简单的,本章我觉得是程序猿质变课程,理解面向对象的思想,掌握面向对象的基本原则以及 Java 面向对象编程基本实现原理,熟练使用封装 ...

  10. DbMigration使用方法

    1.Enable-Migrations -ContextTypeNameLITCS.Data.gmisContext Enable-Migrations  命令创建了一个新的Migrations文件夹 ...