probes和sample提取wallShearStress问题
-
@吴建民 我没算过多相流,试了下of8的
driftFluxFoam
的自带算例mixerVessel2D
,确实会报错--> FOAM FATAL ERROR: Unable to find turbulence model in the database From function virtual bool Foam::functionObjects::wallShearStress::execute() in file wallShearStress/wallShearStress.C at line 200. FOAM exiting
-
如果找不到湍流模型,如要挂在求解器上,求解器上有turbulence的库:
driftFluxFoam -postProcess -func ...
有几点:-
首先多相流领域,湍流模型研究相对不是热点。因为多相流本身就模化的很厉害,很难做到单向NS那种高解析的结果。因此多相流领域湍流模型的研究,再怎么精准也提高不到单向流NS方程那种。当然了肯定有多相流湍流研究的文章,但是看他们的数据的话,偏差30%都有。不过我认为也是可以理解的。
-
在这个背景下,用driftFluxFoam来算流场,然后依据流场结果+湍流模型来计算壁面剪切力,这里面模化的因素忒大了。就单单说泥沙颗粒一层在壁面网格的处理,有搞出好多种方法。
-
-
我试了一下OpenFOAM-10,这个可以用
dyfluid@dyfluid-virtual-machine:~/tutorials/tutorials-10/multiphase/driftFluxFoam/RAS/mixerVessel2DMRF$ ./Allrun Running blockMesh on /home/dyfluid/tutorials/tutorials-10/multiphase/driftFluxFoam/RAS/mixerVessel2DMRF Running driftFluxFoam on /home/dyfluid/tutorials/tutorials-10/multiphase/driftFluxFoam/RAS/mixerVessel2DMRF ^C dyfluid@dyfluid-virtual-machine:~/tutorials/tutorials-10/multiphase/driftFluxFoam/RAS/mixerVessel2DMRF$ driftFluxFoam -postProcess -func wallShearStress /*---------------------------------------------------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org \\ / A nd | Version: 10 \\/ M anipulation | \*---------------------------------------------------------------------------*/ Build : 10-03dd22794e29 Exec : driftFluxFoam -postProcess -func wallShearStress Date : Aug 14 2024 Time : 15:27:16 Host : "dyfluid-virtual-machine" PID : 96237 I/O : uncollated Case : /home/dyfluid/tutorials/tutorials-10/multiphase/driftFluxFoam/RAS/mixerVessel2DMRF nProcs : 1 sigFpe : Enabling floating point exception trapping (FOAM_SIGFPE). fileModificationChecking : Monitoring run-time modified files using timeStampMaster (fileModificationSkew 10) allowSystemOperations : Allowing user-supplied system call operations // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // Create time Create mesh for time = 0 PIMPLE: No convergence criteria found PIMPLE: Operating solver in transient mode with 1 outer corrector PIMPLE: Operating solver in PISO mode Time = 0s Reading field p_rgh Reading field U Reading/calculating face flux field phi Reading g Reading hRef Calculating field g.h Reading incompressibleTwoPhaseInteractingMixture Selecting mixture viscosity model BinghamPlastic Selecting viscosity model constant Creating MRF zone list from MRFProperties creating MRF zone: MRF1 Selecting relative velocity model simple Selecting turbulence model type RAS Selecting RAS turbulence model buoyantKEpsilon buoyantKEpsilonCoeffs { Cg 0.85; Cmu 0.09; C1 1.44; C2 1.92; C3 0; sigmak 1; sigmaEps 1.3; } No fvModels present No fvConstraints present wallShearStress wallShearStress: processing all wall patches wallShearStress wallShearStress write: writing object wallShearStress min/max(rotor) = (-0.493384 -0.493384 -2.2956e-20), (0.493384 0.493384 3.1335e-20) min/max(stator) = (-0 -0 -0), (-0 -0 -0) Time = 0.25s Reading field p_rgh Reading field U Reading/calculating face flux field phi Reading g Reading hRef Calculating field g.h Reading incompressibleTwoPhaseInteractingMixture Selecting mixture viscosity model BinghamPlastic Selecting viscosity model constant Creating MRF zone list from MRFProperties creating MRF zone: MRF1 Selecting relative velocity model simple Selecting turbulence model type RAS Selecting RAS turbulence model buoyantKEpsilon buoyantKEpsilonCoeffs { Cg 0.85; Cmu 0.09; C1 1.44; C2 1.92; C3 0; sigmak 1; sigmaEps 1.3; } No fvModels present No fvConstraints present wallShearStress wallShearStress: processing all wall patches wallShearStress wallShearStress write: writing object wallShearStress min/max(rotor) = (-0.52359 -0.524005 -4.956e-19), (0.524154 0.523798 4.51473e-19) min/max(stator) = (-0.0495746 -0.0495683 -4.97663e-20), (0.0496049 0.0495712 1.89403e-19) Time = 0.5s Reading field p_rgh Reading field U Reading/calculating face flux field phi Reading g Reading hRef Calculating field g.h Reading incompressibleTwoPhaseInteractingMixture Selecting mixture viscosity model BinghamPlastic Selecting viscosity model constant Creating MRF zone list from MRFProperties creating MRF zone: MRF1 Selecting relative velocity model simple Selecting turbulence model type RAS Selecting RAS turbulence model buoyantKEpsilon buoyantKEpsilonCoeffs { Cg 0.85; Cmu 0.09; C1 1.44; C2 1.92; C3 0; sigmak 1; sigmaEps 1.3; } No fvModels present No fvConstraints present wallShearStress wallShearStress: processing all wall patches wallShearStress wallShearStress write: writing object wallShearStress min/max(rotor) = (-0.573367 -0.573406 -9.16331e-19), (0.573481 0.573189 5.36707e-19) min/max(stator) = (-0.0448395 -0.0451926 -5.10002e-20), (0.0447064 0.0447249 1.00214e-19) End dyfluid@dyfluid-virtual-machine:~/tutorials/tutorials-10/multiphase/driftFluxFoam/RAS/mixerVessel2DMRF$