executed with foamRun for single region simulations of foamMultiRun for
multi-region simulations. Replaces interFoam and all the corresponding
tutorials have been updated and moved to tutorials/modules/incompressibleVoF.
Both incompressibleVoF and compressibleVoF solver modules are derived from the
common two-phase VoF base-class solvers::VoFSolver which handles the
complexities of VoF interface-compression, boundedness and conservation with
2nd-order schemes in space and time using the semi-implicit MULES limiter and
solution proceedure. This maximises code re-use, improves readability and
simplifies maintenance.
Class
Foam::solvers::incompressibleVoF
Description
Solver module for for 2 incompressible, isothermal immiscible fluids using a
VOF (volume of fluid) phase-fraction based interface capturing approach,
with optional mesh motion and mesh topology changes including adaptive
re-meshing.
The momentum and other fluid properties are of the "mixture" and a single
momentum equation is solved.
Either mixture or two-phase transport modelling may be selected. In the
mixture approach a single laminar, RAS or LES model is selected to model the
momentum stress. In the Euler-Euler two-phase approach separate laminar,
RAS or LES selected models are selected for each of the phases.
Uses the flexible PIMPLE (PISO-SIMPLE) solution for time-resolved and
pseudo-transient and steady simulations.
Optional fvModels and fvConstraints are provided to enhance the simulation
in many ways including adding various sources, Lagrangian
particles, surface film etc. and constraining or limiting the solution.
SourceFiles
incompressibleVoF.C
See also
Foam::solvers::VoFSolver
Foam::solvers::compressibleVoF
73 lines
2.1 KiB
C++
73 lines
2.1 KiB
C++
/*--------------------------------*- C++ -*----------------------------------*\
|
|
========= |
|
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
\\ / O peration | Website: https://openfoam.org
|
|
\\ / A nd | Version: dev
|
|
\\/ M anipulation |
|
|
\*---------------------------------------------------------------------------*/
|
|
FoamFile
|
|
{
|
|
format ascii;
|
|
class dictionary;
|
|
location "system";
|
|
object meshQualityDict;
|
|
}
|
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
|
|
//- Maximum non-orthogonality allowed. Set to 180 to disable.
|
|
maxNonOrtho 70;
|
|
|
|
//- Max skewness allowed. Set to <0 to disable.
|
|
maxBoundarySkewness 20;
|
|
maxInternalSkewness 4;
|
|
|
|
//- Max concaveness allowed. Is angle (in degrees) below which concavity
|
|
// is allowed. 0 is straight face, <0 would be convex face.
|
|
// Set to 180 to disable.
|
|
maxConcave 80;
|
|
|
|
//- Minimum cell pyramid volume relative to min bounding box length^3
|
|
// Set to a fraction of the smallest cell volume expected.
|
|
// Set to very negative number (e.g. -1e30) to disable.
|
|
minVol -1e30;
|
|
|
|
//- Minimum quality of the tet formed by the face-centre
|
|
// and variable base point minimum decomposition triangles and
|
|
// the cell centre. Set to very negative number (e.g. -1e30) to
|
|
// disable.
|
|
// <0 = inside out tet,
|
|
// 0 = flat tet
|
|
// 1 = regular tet
|
|
minTetQuality 1e-30;
|
|
|
|
//- Minimum face twist. Set to <-1 to disable. dot product of face normal
|
|
// and face centre triangles normal
|
|
minTwist 0.05;
|
|
|
|
//- Minimum normalised cell determinant
|
|
// 1 = hex, <= 0 = folded or flattened illegal cell
|
|
minDeterminant 0.001;
|
|
|
|
//- minFaceWeight (0 -> 0.5)
|
|
minFaceWeight 0.05;
|
|
|
|
//- minVolRatio (0 -> 1)
|
|
minVolRatio 0.01;
|
|
|
|
// Advanced
|
|
|
|
//- Number of error distribution iterations
|
|
nSmoothScale 4;
|
|
//- Amount to scale back displacement at error points
|
|
errorReduction 0.75;
|
|
|
|
|
|
|
|
// Optional : some meshing phases allow usage of relaxed rules.
|
|
// See e.g. addLayersControls::nRelaxedIter.
|
|
relaxed
|
|
{
|
|
//- Maximum non-orthogonality allowed. Set to 180 to disable.
|
|
maxNonOrtho 75;
|
|
}
|