此文适合对象:CFD完全新手,没有流体力学基础,没有数值计算基础,甚至没有计算机基础。

作为一个CFD完全新手,你需要知道的几件事情

1.CFD是拿来用的,不是拿来学的

除非你是搞CFD理论的,比如一些数学或计算机专业的需要学习CFD理论,否则如果你是搞工程的,那么最好是将CFD作为工具,不要花费过多的精力去关注CFD内部细节,这些细节让那些学数学或计算机的人关注好了。将CFD当做自己可以信任的伙伴,投其所好即可。

2.流体力学是雪中送炭,计算流体力学是锦上添花

学习计算流体力学能够帮助我们更好地使用CFD软件,但相对于学习计算流体力学的时间来说,性价比很低。当然如果你有大把的空闲时间的话,系统的学习计算留体力学是可以的。相反,学习流体力学可以帮助我们更好的理解物理现象,更有助于使用CFD。

3.计算所用的模型都是需要进行校准的

CFD中的计算模型参数在真正计算之前都是要进行校核的,大量系统默认参数会影响我们的计算结果,也会使我们对计算结果丧失信心。

4. 计算结果是要进行校核的

软件的计算结果受很多因素影响,通常情况下都是要和实验测量值进行比较,否则计算结果可能自己都不相信。

5.网格引起的误差没有模型引起的误差大

计算模型引起的误差要远比计算网格引起的误差大。选错了模型,设错了边界条件或初始条件,可能会出现错误的计算结果。而单纯的网格质量,通常只会影响计算精度和收敛性。

6.收敛的结果不一定是正确的,但不收敛的结果一定是错误的

收敛时必要的,不管是稳态计算还是瞬态计算。

7.很多时候购买计算机硬件不如更深入的了解模型

深入了解模型后对计算模型进行简化,可以极大的降低计算资源开销,这往往比扩充硬件来的有效。当然土豪除外。

关于CFD软件,你应该知道的几件事

1.最好的参考资料是CFD软件附带的文档

成熟的商业软件通常都附带有完善的帮助文档,那是最好的参考资料。没有人能比编制程序的人更熟悉软件的操作。

2.从实际工程入手,要比从CFD理论入手快得多

找一个实际工程项目,自己独立的去完成,当项目完成的时候,你会发现你的CFD技术已经有了质的飞跃。如果你是从CFD理论入手,你会发现你所学习的理论很难在实际工程中有用武之地,时间久了你会丧失所有的信心。当然如果你有三五年的时间可以学习CFD理论的话,此条作废。

3.通常情况下,软件是可以被信任的

成熟的商业软件通常都经过了严格的测试,就算是有BUG,也不是一个CFD新手能够触碰到的。如果新手都能触碰到软件Bug的话,这软件可以宣布销毁了。

4.CFD软件不会知道使用者要做什么

你不要妄想CFD软件能够理解你的意图,它们仅仅是将人们提供的数据按指定的规则进行加工而已。CFD软件也不会理解自己产生的数据。至少到目前为止是这样。

关于前处理,你应该知道的几件事

1.完全保留几何细节的模型并不一定是好模型

对于复杂的工程模型,通常都需要对几何进行处理。保留所有的原始细节特征的几何模型,可能会导致网格数量剧增及网格质量下降。

2.完全均匀的网格一般不是好网格

一套好的网格一定是有密有疏,否则除非你是土豪,拥有无限的计算资源。

3.影响计算的是网格质量,而非网格形状

网格质量会影响计算收敛性和计算精度,但网格形状不会对这些产生影响。

4.绝大多数求解器支持的是非结构网格,只有极少数求解器支持结构网格

目前以及很难找到支持结构网格的求解器了。这里的非结构网格与结构网格指的是网格存储形式,而非网格形状,四边形和六面体同样可以是非结构网格。

关于CFD计算结果,你应该知道的几件事

1.计算结果是否正确,需要人工进行判断

CFD软件不会告诉你计算结果是否正确,在它们的眼中,计算结果都是正确的,否则程序早就当掉了。

2.数据往往比图形有说服力

CFD软件能够输出花花绿绿的图片,然而在大多数情况下,这些花花绿绿的图片仅仅只是作为点缀,真正有用的还是数据。

3.计算结果应用得好不好,取决于使用者的理论功底而非软件操作熟练度

要想用好CFD计算数据,必须对物理现象有充分的认识,否则只能使用试错法。软件操作熟练度除了能让你鼠标点得更准确外,对于CFD数据的利用没有任何作用。


关注微信公众号,查看更多CFD相关文章。

CFD使用者应当了解的一些事情的更多相关文章

  1. 【CFD之道】2017年原创文章汇总

    1 Fluent案例(21篇) [Fluent案例]01 空气流经障碍物 [Fluent案例]02:Tesla阀 [Fluent案例]03:RAE2822翼型外流场计算 [Fluent案例]04:多孔 ...

  2. 【小白的CFD之旅】15 四种境界

    天气不错,小白一大早就起床了,吃过早餐就往奔实验室而去.路上碰到了同去实验室的小牛师兄. "小白,这么早啊",小牛师兄老远就发现了小白,打招呼道. "早啊,牛师兄,刚吃完 ...

  3. 用Go实现的简易TCP通信框架

    接触到GO之后,GO的网络支持非常令人喜欢.GO实现了在语法层面上可以保持同步语义,但是却又没有牺牲太多性能,底层一样使用了IO路径复用,比如在LINUX下用了EPOLL,在WINDOWS下用了IOC ...

  4. Storm的ack机制在项目应用中的坑

    正在学习storm的大兄弟们,我又来传道授业解惑了,是不是觉得自己会用ack了.好吧,那就让我开始啪啪打你们脸吧. 先说一下ACK机制: 为了保证数据能正确的被处理, 对于spout产生的每一个tup ...

  5. Twitter Storm如何保证消息不丢失

    storm保证从spout发出的每个tuple都会被完全处理.这篇文章介绍storm是怎么做到这个保证的,以及我们使用者怎么做才能充分利用storm的可靠性特点. 一个tuple被”完全处理”是什么意 ...

  6. (转)Windows驱动编程基础教程

    版权声明     本书是免费电子书. 作者保留一切权利.但在保证本书完整性(包括版权声明.前言.正文内容.后记.以及作者的信息),并不增删.改变其中任何文字内容的前提下,欢迎任何读者 以任何形式(包括 ...

  7. Storm入门(六)深入理解可靠性机制

    转自http://blog.csdn.net/zhangzhebjut/article/details/38467145 一 可靠性简介 Storm的可靠性是指Storm会告知用户每一个消息单元是否在 ...

  8. Storm入门(五)Twitter Storm如何保证消息不丢失

    转自:http://xumingming.sinaapp.com/127/twitter-storm如何保证消息不丢失/ storm保证从spout发出的每个tuple都会被完全处理.这篇文章介绍st ...

  9. 【转】Twitter Storm如何保证消息不丢失

    Twitter Storm如何保证消息不丢失 发表于 2011 年 09 月 30 日 由 xumingming 作者: xumingming | 可以转载, 但必须以超链接形式标明文章原始出处和作者 ...

随机推荐

  1. RHEL7 配置临时IP 测试

    RHEL7 配置或添加临时IP地址测试: [root@rhel7 Desktop]# ip a s enp0s3 ---查看原网卡IP 为192.168.1.7 : enp0s3: <BROAD ...

  2. C# 7 out variables, tuples & other new features

    C# 7 out variables, tuples & other new features C# 7 is available on new Visual Studio 2017 and ...

  3. 微软的在线文档存储OneDrive使用帮助

    onedrive默认空间5G,对于一般的文档存储够用的,很方便不限速!!! ###官方介绍 https://support.office.com/zh-cn/article/%E4%BA%86%E8% ...

  4. MongoDB安装实录

      mongodb是nosql中的贵族,很受欢迎... 01.下载 官方:https://www.mongodb.com 社区版.企业版 https://www.mongodb.com/downloa ...

  5. 在Java中使用Kafka

    Producer部分 Producer在实例化后, 对外提供send方法, 用于将数据送到指定的topic和partition; 以及在退出时需要的destroy方法. 接口 KafkaProduce ...

  6. PHP执行insert语句报错“Data too long for column”解决办法

    PHP执行mysql 插入语句, insert语句在Navicat for mysql(或任意的mysql管理工具) 中可以正确执行,但是用mysql_query()函数执行却报错. 错误 : “Da ...

  7. spring事务配置的两种方式

    spring所有的事务管理策略类都继承自org.springframework.transaction.PlatformTransactionManager接口. <!-- 事务管理器配置,单数 ...

  8. asiHttpRequst 超时代码判断

    - (void)requestFailed:(ASIHTTPRequest *)request{ NSDictionary *userInfo = [request userInfo]; id del ...

  9. memcached全面剖析--4. memcached的分布式算法

    我是Mixi的长野. 第2次.第3次由前坂介绍了memcached的内部情况.本次不再介绍memcached的内部结构,开始介绍memcached的分布式. memcached的分布式 正如第1次中介 ...

  10. [转]nf_conntrack: table full, dropping packet 连接跟踪表已满,开始丢包 的解决办法

      nf_conntrack: table full, dropping packet  连接跟踪表已满,开始丢包 的解决办法 中午业务说机器不能登录,我通过USM管理界面登录单板的时候发现机器没有僵 ...