wallShearStress 中的一些代码的定义
-
各位好!
最近正在使用wallShearStress这个后处理器。
其中有一些代码并不知道是什么作用,还望各位大神不吝赐教。RASModel->devReff()//这一句确实不知道是用来干什么的 //下面这几句分别是什么作用呢? singlePhaseTransportModel laminarTransport(U, phi); autoPtr<incompressible::RASModel> RASModel ( incompressible::RASModel::New(U, phi, laminarTransport) ); //下面的是对所有的patch, 也就是说不仅仅是wall,进行求解? forAll(wallShearStress.boundaryField(), patchi) { wallShearStress.boundaryField()[patchi] = ( -mesh.Sf().boundaryField()[patchi] /mesh.magSf().boundaryField()[patchi] ) & Reff.boundaryField()[patchi]; }
非常感谢!
-
目前知道第一句,就是
RASModel->devReff() 是//- Return the effective stress tensor including the laminar stress
那么问题来了,这个wallShearStress 后处理器是否只能适用于incompressible flow? -
我看了一下OpenFOAM 4的代码,和这个区别很大,单说下面这些代码
RASModel->devReff()//这一句确实不知道是用来干什么的 //下面这几句分别是什么作用呢? singlePhaseTransportModel laminarTransport(U, phi); //构造singlePhaseTransportModel类,命名为laminarTransport autoPtr<incompressible::RASModel> RASModel ( incompressible::RASModel::New(U, phi, laminarTransport) ); //构造autoPtr指针指向不可压缩RASModel模型,命名为RASModel //下面的是对所有的patch, 也就是说不仅仅是wall,进行求解? forAll(wallShearStress.boundaryField(), patchi) { wallShearStress.boundaryField()[patchi] = ( -mesh.Sf().boundaryField()[patchi] /mesh.magSf().boundaryField()[patchi] ) & Reff.boundaryField()[patchi]; } } //壁面剪切力,既然是壁面,只求解壁面,因此你说的是正确的 //类似的处理在边界条件和壁面函数上很常见
是的,你这个代码只能用与不可压流,可压缩需要考虑密度。
-
@李东岳
谢谢东岳大神。我看了一下OpenFOAM的代码,它的wallShearStress 可以求解可压流动。
只是再确认一下您说的最后一句话:“壁面剪切力,既然是壁面,只求解壁面,因此你说的是正确的,类似的处理在边界条件和壁面函数上很常见”
也就是说虽然求解所有的patch,但是只有wall的边界条件是有意义的。是否是这样呢?
论坛登录问题反馈可联系 li.dy@dyfluid.com