@东岳 偶然翻看到之前的讨论,结合东岳老师提到的声速有关的内容和最近的一些新体会,贴上来和大家讨论。
对于可压缩流动的定义好像存在不同的理解,我现在倾向于认为正确的是,是否严格意义的可压缩要看密度是否随压力变化。如果密度是随压力和温度、组分等变化,那么是完全的可压缩。如果密度不随压力变化,而只随温度、组分等变化,也是可压缩(因为密度会变化),但不是完全的可压缩。后者在很多传热、燃烧应用中是广泛存在的(密度受压力影响很小,密度差主要由温度和组分变化导致),在处理的时候大多采用所谓的低马赫数近似(low Mach number approximation)。其本质是假设密度不随压力变化,不一定是字面意思上的马赫数很低才可以使用,更多的应该是指代一套数值方法(这点不是很确定:chouchou: )。FOAM里面有一种状态方程是incompressiblePerfectGas,和普通的perfectGas区别在于,前者的压力用一个参考压力(常数),后者用的则是计算得到的压力(非常数)。
感觉FOAM里面之所以有基于psi的热物性和基于rho的热物性就是为了能够处理不同类型的可压缩流动。传热求解器(solver/heatTransfer)比如buoyantPimpleFoam采用了基于rho的热物性,而燃烧求解器(solver/combustion)比如reactingFoam,fireFoam采用了基于psi的热物性。燃烧求解器也有用基于rho的热物性的,目前还不清楚背后的原因。可压缩求解器(solver/compressible)中,像rhoPimpleFoam本来是采用基于psi的热物性,但高版本开始也把基于rho的热物性揉进去了,很好奇如果用rhoPimpleFoam采用同一套状态方程去求解同一个问题,但一个用psiThermo一个用rhoThermo,结果是否会一样?
啰嗦了两大段,还是回到之前的问题。很明显reactingFoam和rhoReactingFoam两个求解器调用的压力方程形式不同是因为密度更新的方式不同,而密度更新方式的不同很可能来源于是否采用低马赫数假设这一套计算方法。这一点现在还不明确,所以发上来希望有大佬能给讲讲:chouchou:
另外有个问题,如果采用低马赫数近似,密度随压力不变,那是不是就相当于认为声速无穷大?这样假设会导致什么呢?