自从上次在食堂听了小牛师兄关于计算网格的一些问题后,小白决定在寒假期间好好的补习一下关于计算网格的划分内容。在之前小白也接触了一些CFD软件,像Fluent,CFX等,在做案例的过程中同城使用的是别人已经提供好的计算网格,严格说起来小白还没有自己动手生成过计算网格。这下真正说起要动手创建网格,小白还真的是懵了,不知道从哪儿下手。小白找到了黄师姐。

“师姐,我们考完试了,有什么任务分配需要我做的么?”小白在QQ上问。
“考完试了呀,那就可以认真的学习一下流体仿真的内容了,现在项目上很缺人手。”黄师姐回复。
“恩,就是有一些关于这方面的问题要请假一下。这半年我练习了很多流体计算案例,但是对于真正的工程问题,还是存在很多的问题。最基本的问题,比如流体计算区域的创建,到底该怎么弄呢?”小白问。

“你说的是计算域的构建问题,噢,对于新手来说还真有一些问题需要注意。”

计算域是什么

“首先你要清楚,计算域是流体计算所要考虑的区域,其包含了时间域和空间域。空间域好说,就是我们告诉计算机所要求解计算的区域的长宽高等几何尺寸,而时间域则指的是我们告诉求解器需要考虑的时间范围。比如说要考虑管道内部流体流动特征,那么空间域则指的是管道内部流体所能够到达的空间范围,而时间域则取决于我们所要考虑的时间段,是1秒钟还是1小时,取决于我们自己。”

"流体计算域,指的是流体能够达到的区域,但是我们知道,我们目前所用的CFD求解器除了能够解决流动问题之外,还能解决热问题。因此虽然流体无法在固体中流动,但是热量可以,温度可以在固体中分布。所以流体计算域中除了流体域之外,还可能包含有固体区域。”

“除了流体域和固体域,在流体计算过程中,一些特殊的模型还可能包含一些特殊的区域,他们都是流体域的一些简化形式。比如说模拟多孔隙结构的多孔区域,模拟发热的源区域等,这些其实也都是流体域,只不过简化了几何模型而已。”

“总而言之,计算域就是我们要告诉计算机的计算区域”。

计算域如何创建

“明白了,计算域就是要提交给求解器的几何模型,可以这么理解么?”小白问。
“可以这么说。”黄师姐答。
“那这些几何该如何得到呢?”小白继续问。

“几何模型的创建有很多方法,大多数情况下我们利用专业的CAD软件来生成计算模型,对于复杂的几何模型尤其是这样。当然一些简单的几何模型,也可以利用CAE前处理软件来创建。”黄师姐这样说。

常用的建模软件

“比较常用的有哪些软件呢?”小白继续问。
“常用的软件如机械的CAD软件,像UG NX, Pro/E, Catia, Solidworks等,医学领域也有用CT成像来生成几何的,甚至可以采用一些激光扫描手段来生成几何。总而言之,不管采用何种方法,最终的目的是要获得数字模型。”黄师姐说。

常用的机械CAD软件:

  • Solidworks:很容易上手,学习周期非常短,通常有一下午的时间就能能够独立操作了,该软件早些年被达索收购。
  • Catia:非常强大的3D建模软件,目前为达索的核心产品。
  • UG NX:西门子公司的3D建模软件,功能强大且全面。
  • SolidEdge:同样归属西门子公司,直接竞争对手为solidworks,建模方式简单,软件对计算机性能要求颇高,低配置计算机可能有点卡顿。
  • PRO/E:PTC公司的3D建模软件,中规中矩。
    另外还有一些非主流软件,如Inventor,犀牛等。其实还有不少的CAE前处理软件,也具备比较强大的几何建模功能,如ANSYS Workbench中的DM,SCDM等模块,STAR CCM+的几何创建模块等,这些前处理模块也可以用于创建计算域几何。

计算域几何的特殊之处

“流体计算域几何与一般的意义上所说的几何模型并没有什么不同,唯一不同的地方只是你在与,流体计算域表征的是流体流经的区域,因此与实体几何有些差异。还是拿管道来打比方,我们说管道的几何模型包含的特征参数包括管道的内径、外径以及管道长度,这是实体模型,然而如果要计算管道内部流体流动而创建的计算域模型,则可能只需要管道内径及长度这两个参数了,由于流体不能进入管道壁面内,因此管道外径这一参数就不需要了。”

“因此在创建流体计算域几何时,常常需要采用特殊的方法将计算区域几何从实体几何中抽取出来。而有一些要考虑实体几何外部流场的情况,则需要建立外部流体计算域。不管是考虑内部计算域还是外部计算域,几何建立方法都可以采用布尔运算来实现。”

具体的计算域提取方法

“布尔运算是一种通用的提取流体计算域的方法,当然一些CFD前处理软件中也提供了一些快捷创建的功能,但其原理还是利用了布尔运算。比较常用的关于计算域的创建方法,可以利用ANSYS DM中的Fill及Enclosure功能,也可以利用ANSYS SCDM中的抽取体积功能,其实具备这些功能的软件很多。”

小白总结

  • 计算域是流体计算所考虑的区域,计算域包含时间域和空间域,超出计算域的区域是不被求解器所考虑的。
  • 流体计算域中可能包含有固体区域。
  • 常常采用专业的CAD软件来创建计算域几何模型,有时也用CAE前处理软件来创建。
  • 利用布尔操作可以很方便的创建流体域几何。

【小白的CFD之旅】20 计算区域的构建的更多相关文章

  1. 【小白的CFD之旅】小结及预告

    这是小白系列的索引,后续会继续更新. 已更新的部分 01 引子02 江小白03 老蓝04 任务05 补充基础06 流体力学基础07 CFD常识08 CFD速成之道09 初识FLUENT10 敲门实例1 ...

  2. 【小白的CFD之旅】11 敲门实例【续】

    主要内容: 接上文[小白的CFD之旅]10 敲门实例 2.4 Materials设置2.5 Cell Zone Conditions2.6 Boundary Conditons2.7 Dynamic ...

  3. 【小白的CFD之旅】13 敲门实例【续3】

    接上文[小白的CFD之旅]12 敲门实例[续2] 4 Results4.1 计算监测图形4.2 Graphics4.2.1 壁面温度分布4.2.2 创建截面4.2.3 显示截面物理量4.2.4 Pat ...

  4. 【小白的CFD之旅】12 敲门实例【续2】

    接上文[小白的CFD之旅]敲门实例[续] 主要内容 3 Solution3.1 Solution Methods3.2 Solution Controls3.3 Monitors3.4 Report ...

  5. 【小白的CFD之旅】01 引子

    小白的CFD之旅 写在前面 CFD是计算流体力学的英文简称,是计算机辅助工程(CAE)的主要分支,目前广泛应用与科学研究.工程设计中.这是一门综合了数学.计算机及流体力学的综合学科,涉及到众多的专业理 ...

  6. 《小白的CFD之旅》招募写手

    <小白的CFD之旅>系列招募写手. 由于工作繁忙,<小白的CFD之旅>系列更新缓慢,现招募志愿者写手.这是一个分享平台,欢迎各位愿意分享自己CFD学习经历的朋友们. <小 ...

  7. 【小白的CFD之旅】26 何为收敛

        小白最近对流体计算的收敛产生了困惑.以前在学习高等数学的时候,小白接触过了级数的收敛,由于当时贪玩,并未将其放在心上,因此大学结束了小白也只是记住有这么一个名词罢了.现如今在利用CFD的过程中 ...

  8. 【小白的CFD之旅】14 实例反思

    小白将敲门实例认真做了三遍,终于可以脱离文档直接将实例从头到尾的完成了.不过在做实例的过程中,小白 还是发现了不少的问题. 这些问题包括: 实例是从导入网格文件开始的,这网格是什么鬼? 在Models ...

  9. 【小白的CFD之旅】07 CFD常识

    学了一周的流体力学,小白对于流体力学有了基本的了解,但是流体力学涵盖的内容何其之多,一周的时间怎么可能学得好呢,很多的概念都是模棱两可.为了在一个月之后能够应用CFD,小白又找到了黄师姐. “师姐,看 ...

随机推荐

  1. ArcGIS空间参考概述

    摘要:在地理数据库中,坐标系和其他相关空间属性被定义为各数据集的空间参考的一部分.空间参考是用于存储各要素类和栅格数据集,以及其他坐标属性(例如,x,y 坐标的坐标分辨率及可选的 z 坐标和测量 (m ...

  2. xml中“ < > ”转义为“ &lt; &gt; ”问题处理

    曾经也碰到过类似问题,解决方法是在发送或者解析报文前执行上面的方法将内容转义一下,现在我用dom4j组装如下的报文(报文体中内容传输时加密处理),大致介绍一下上面方法的使用,具体看代码. import ...

  3. [POST] What Is the Linux fstab File, and How Does It Work?

    If you’re running Linux, then it’s likely that you’ve needed to change some options for your file sy ...

  4. 使用tensorflow-serving部署tensorflow模型

    使用docker部署模型的好处在于,避免了与繁琐的环境配置打交道.使用docker,不需要手动安装Python,更不需要安装numpy.tensorflow各种包,直接一个docker就包含了全部.d ...

  5. JavaScript 消息框,警告框,确认框,提示框

    1.警告框 警告框经常用于确保用户可以得到某些信息. 当警告框出现后,用户需要点击确定按钮才能继续进行操作. 语法: alert("文本") 2.确认框 确认框用于使用户可以验证或 ...

  6. HDU 3032 Nim or not Nim? (sg函数)

    Nim or not Nim? Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)T ...

  7. React(0.13) 定义一个使用动画

    <!DOCTYPE html> <html> <head> <title>React JS</title> <script src=& ...

  8. jstree中文github文档

    jstree Bala...bala...这段就不翻译了. jstree就是个基于JQUERY的树形控件. 1 2 jsTree is jquery plugin, that provides int ...

  9. mybatis自定义插件动态修改sql语句

    step1:定义Interceptor实现org.apache.ibatis.plugin.Interceptor import org.apache.commons.logging.Log; imp ...

  10. iOS 一个小动画效果-b

    近期工作不忙,来一个需求感觉棒棒的,是一个比较简单的页面,如下图(图1) 图1 应该很简单吧,没什么大的功能,就是一个展示,一个拨打电话,拨打电话不需要说,几行代码搞定,基本UI也不用说了,刚培训完的 ...