|
[Sponsors] |
August 11, 2015, 19:05 |
Multiphase Turbulence Models
|
#1 |
New Member
Leonard Cassady
Join Date: Aug 2015
Posts: 14
Rep Power: 11 |
I am modeling a gas jet (air) flowing into a liquid volume. The jet is at the bottom of the water volume flowing up against gravity. I have been able to get stable solutions of a high speed air jet (Mach 0.4) flowing into the water using compressibleMultiphaseInterFoam. I used the oneEQEddy LES model for turbulence. I do not think that this is the best turbulence model for simulating the interaction of the jet and the water as the jet is not slowing down and expanding as quickly as it should - according to experimental data. From what I have read at: http://www.openfoam.org/version2.3.0/multiphase.php , the multiphase turbulence models used with the twoPhaseEulerFoam should better model the turbulence between the air and water.
My questions are: How do I know which turbulence model applies to the interface between the 2 phases? Are the twoPhaseEulerFoam turbulence models applicable to immiscible fluids? Is there a better LES model for this type of flow? Thanks. |
|
August 11, 2015, 23:49 |
|
#2 |
Senior Member
Kyle Mooney
Join Date: Jul 2009
Location: San Francisco, CA USA
Posts: 323
Rep Power: 18 |
There are a couple of multiphase compatible turbulence models within this directory:
/src/TurbulenceModels/ (note the capitol 'T') I just spend a few minutes looking through the source code and I honestly have no idea how you would call them (as opposed to the typical turb models. It appears to be identical in structure to the standard turbulence model class LES/RAS structure but with special treatment in things like the kEp model. The 'documentation' on the OpenFOAM website explaining the implementation as well as pointing you to examples is inconsistent so no luck there: http://www.openfoam.org/version2.3.0/multiphase.php From what I can figure out if (in your createFields.H, see multiphaseEulerFoam solver) declare your turbulence model with an additional 'multiphaseSystem' as part of your constructor it will run with the multiphase supported turbulence model code instead of the standard models. I believe that the kEp implementation does things like stop turbulent diffusion across interface cells (since VOF is an implied DNS/laminar model anyway). |
|
August 12, 2015, 09:51 |
Adjusting compressibleMultiphaseInterFoam
|
#3 |
New Member
Leonard Cassady
Join Date: Aug 2015
Posts: 14
Rep Power: 11 |
Thanks kmooney,
I am new to OpenFoam and have not altered or looked inside the solver applications yet. I think that you are on the right track, but I found a different place in the twoPhaseEulerFoam.C file that might be key. That file has: #include "PhaseCompressibleTurbulenceModel.H" where the compressibleMultiphaseInterFoam.C file has: #include "turbulenceModel.H" It seems to me that I should change the compressibleMultiphaseInterFoam.C file to include the PhaseCompressibleTurbulenceModel and maybe add the line that you suggest in createFields.H as well. To anybody that can help: How do I know if the turbulence or viscosity is being applied at the boundary between the phases rather than at the walls? Last edited by im_lenny; August 12, 2015 at 11:21. |
|
August 12, 2015, 12:16 |
|
#4 |
Senior Member
Kyle Mooney
Join Date: Jul 2009
Location: San Francisco, CA USA
Posts: 323
Rep Power: 18 |
Good eye! That looks about right. As for the multiphase implementation, I might have been wrong about my previous statement. It looks like (at least for kEp) they multiplied everything by alpha:
Code:
// Dissipation equation tmp<fvScalarMatrix> epsEqn ( fvm::ddt(alpha, rho, epsilon_) + fvm::div(alphaRhoPhi, epsilon_) - fvm::Sp(fvc::ddt(alpha, rho) + fvc::div(alphaRhoPhi), epsilon_) - fvm::laplacian(alpha*rho*DepsilonEff(), epsilon_) == C1_*alpha*rho*G*epsilon_/k_ - fvm::SuSp(((2.0/3.0)*C1_ + C3_)*alpha*rho*divU, epsilon_) - fvm::Sp(C2_*alpha*rho*epsilon_/k_, epsilon_) + epsilonSource() ); Code:
// Turbulent kinetic energy equation tmp<fvScalarMatrix> kEqn ( fvm::ddt(alpha, rho, k_) + fvm::div(alphaRhoPhi, k_) - fvm::Sp(fvc::ddt(alpha, rho) + fvc::div(alphaRhoPhi), k_) - fvm::laplacian(alpha*rho*DkEff(), k_) == alpha*rho*G - fvm::SuSp((2.0/3.0)*alpha*rho*divU, k_) - fvm::Sp(alpha*rho*epsilon_/k_, k_) + kSource() ); |
|
September 4, 2015, 18:14 |
twoPhaseEulerFoam Update
|
#5 |
New Member
Leonard Cassady
Join Date: Aug 2015
Posts: 14
Rep Power: 11 |
I have been learning about the EulerFoam solvers. It is an Euler-Euler solver rather than a VOF type of solver. This is why the turbulence models do not transfer over to the InterFoam solvers.
I am trying to get the twoPhaseEulerFoam solver up and running with a 150 m/s gas flowing into stagnant water. The solver crashes if the gas velocity gets much larger than 10 m/s. Has anyone got twoPhaseEulerFoam to run with high gas velocities? |
|
December 16, 2016, 22:29 |
|
#6 | |
New Member
Shuai Yuan
Join Date: Nov 2016
Posts: 29
Rep Power: 10 |
Quote:
|
||
October 12, 2018, 00:10 |
Hellow
|
#7 |
New Member
Li Yuanyuan
Join Date: Oct 2018
Posts: 2
Rep Power: 0 |
In a viscoelastic fluid, what does tau* FVC ::grad(u) calculate?
|
|
January 26, 2019, 13:25 |
|
#8 | |
New Member
toboto
Join Date: Jun 2016
Posts: 20
Rep Power: 10 |
Quote:
alpha in turbulence models is NOT the phase fraction. In the case of incompressible turbulence models, it is simply = 1.0 See IncompressibleTurbulenceModel.H Code:
typedef geometricOneField alphaField; Code:
typedef geometricOneField alphaField; Code:
A class representing the concept of a GeometricField of 1 used to avoid unnecessary manipulations for objects which are known to be one at compile-time. Used for example as the density argument to a function written for compressible to be used for incompressible flow. |
||
January 31, 2019, 11:37 |
|
#9 |
New Member
Join Date: Apr 2017
Posts: 2
Rep Power: 0 |
OpenFOAM v 1712 does not parallelize the simulation when I am using the MPPIC solver applied to multi-phase oil in an oil storage tank with lateral impellers.
I'm doing a simulation with "cyclic ACMI". Thanks for the support. |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
different zones, different turbulence models | gmwsy | FLUENT | 5 | June 17, 2020 16:42 |
in k-epsilon wall function approach high Re turbulence models: question of velocity | romant | OpenFOAM Programming & Development | 6 | May 26, 2016 10:14 |
Y plus for various turbulence models | taram | CFX | 8 | December 16, 2013 12:44 |
Zero Equation Turbulence models | stefan.gracik | OpenFOAM Programming & Development | 3 | April 17, 2013 15:12 |
KOmega Turbulence model from wwwopenFOAMWikinet | philippose | OpenFOAM Running, Solving & CFD | 30 | August 4, 2010 11:26 |