第一节 前言
SIMPLE算法的全称是“Semi-Implicit Method for Pressure-Linked Equations”,意思是求解压力耦合的质量/动量/能量传递方程的半隐式方法。自从S.V.Patankar(帕坦卡)和D.B.Spalding(斯伯丁)于1972年提出SIMPLE算法后,它实际上已经成为许多工程流动、传热以及反应体系的数值模拟的最重要的方法。许多商业CFD软件,如cfx与fluent,其核心也都基于SIMPLE算法。
了解SIMPLE算法是学习差分数值计算以及CFD(计算流体力学)一个非常好的起点。而且,SIMPLE算法对于很多工程问题也足够用了。介绍SIMPLE算法最好的书自然是帕坦卡自己所著的《传热与流体流动的数值计算》[1]。不过,这本优秀、简洁的著作没有附带源代码。
我在学习SIMPLE的过程中,了解到一份可靠、简单、说明文档完整、可方便地编译执行的源代码对于初学者的重要性。于是我用C语言改写了SIMPLE算法(称之为SIMPLE_C),并给出了详细的文档,希望能够缩短算法与代码之间的距离。算法源自水木清华BBS上orange01与moran两位同学所给予的FORTRAN SIMPLE代码。同时清华大学化工系反应工程教研组刘飞同学的笔记也给了我很大的帮助,在此一并谢过。
目前,SIMPLE_C只能解决二维直角坐标、结构网格的问题。取决于表征问题的微分方程,SIMPLE_C在这个几何框架下能够模拟瞬态或者时均的流动、传热以及反应耦合的单相流体系。应该说明,下面的一些问题可能或者根本不在SIMPLE_C的能力范围之内:高精度的流场预测;多相流;三维流动;复杂流场或者几何结构;边界层行为预测;马赫数接近或超过1的高速流动。
关于orange01与moran两位同学的SIMPLE FORTRAN代码的版权问题,我在源代码上看见这么一段,在此原封不动地摘录如下:
Cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
Cccc This computer program was copied from the graduate student course program
Cccc of the University of Minnesota. Part of it was re-formulated to meet the
Cccc personal computer environment. Some inappropriate expressions were also
Cccc corrected. The program is used only for teaching purpose. No part of it
Cccc may be published. You may use it as a frame to re-develop your own code
Cccc for research purpose. XJTU Instructor, 1995.11
Cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
本文的工作是非常粗浅的。本质上它是帕坦卡在70年代就已解决的问题的一个简单的复述。不过,希望它能起到抛砖引玉的作用――期望更多的研究者能够将手头基于SIMPLE的先进算法的源代码整理并共享出来。下面一些特性是特别欢迎的:
l
l 三维网格; 非结构/自适应网格;
高精度差分格式;
欧拉+欧拉模式的多相流;
欧拉+拉格朗日模式的多相流;
基于PC CLUSTER(个人电脑集群,MIMD体系)的并行算法。 l l l l
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库SIMPLEC 二维、结构网格单相流SIMPLE 算法的C 语言实现的说明在线全文阅读。
相关推荐: