Commit Graph

132 Commits

Author SHA1 Message Date
252aa603fd twoPhaseEulerFoam: In the limit of phase-fraction->0 the velocity is calculated from a force balance
Rather than forcing the dispersed-phase velocity -> the continuous-phase
velocity as the phase-fraction -> 0 the velocity is now calculated from
a balance of pressure, buoyancy and drag forces.  The advantage is now
liquid or particles are not carried out of bubble-column of
fluidised-beds by the fictitious drag caused by forcing the
phase-velocities becoming equal in the limit.
2015-05-02 17:15:49 +01:00
fc8a16ca03 Updated header 2015-04-30 10:44:40 +01:00
37a12cce18 multiphaseInterFoam/multiphaseMixture: Updated MULES call 2015-04-30 10:44:15 +01:00
836ffadd39 compressibleMultiphaseInterFoam: VoF and MULES controls are now in the alpha sub-dict of fvSolution
consistent with multiphaseInterFoam and other VoF solvers
2015-04-29 16:32:33 +01:00
e5a52c90e8 Update headers 2015-04-29 14:44:53 +01:00
3e2b64c08d MULES: nLimiterIter and smoothLimiter are now user-input via the corresponding fvSolution sub-dict
nLimiterIter: Number of iterations during limiter construction
    3 (default) is sufficient for 3D simulations with a Courant number 0.5 or so
    For larger Courant numbers larger values may be needed but this is
    only relevant for IMULES and CMULES

smoothLimiter: Coefficient to smooth the limiter to avoid "diamond"
    staggering patters seen in regions of low particle phase-fraction in
    fluidised-bed simulations.

    The default is 0 as it is not needed for all simulations.
    A value of 0.1 is appropriate for fluidised-bed simulations.
    The useful range is 0 -> 0.5.
    Values larger than 0.5 may cause excessive smearing of the solution.
2015-04-29 14:37:41 +01:00
01efa0b4c3 Updated header 2015-04-28 18:19:13 +01:00
355d702394 twoPhaseEulerFoam: Improvements to implicitPhasePressure 2015-04-28 18:18:34 +01:00
16f03f8a39 twoPhaseEulerFoam: Added experimental face-based momentum equation formulation
This formulation provides C-grid like pressure-flux staggering on an
unstructured mesh which is hugely beneficial for Euler-Euler multiphase
equations as it allows for all forces to be treated in a consistent
manner on the cell-faces which provides better balance, stability and
accuracy.  However, to achieve face-force consistency the momentum
transport terms must be interpolated to the faces reducing accuracy of
this part of the system but this is offset by the increase in accuracy
of the force-balance.

Currently it is not clear if this face-based momentum equation
formulation is preferable for all Euler-Euler simulations so I have
included it on a switch to allow evaluation and comparison with the
previous cell-based formulation.  To try the new algorithm simply switch
it on, e.g.:

PIMPLE
{
    nOuterCorrectors 3;
    nCorrectors      1;
    nNonOrthogonalCorrectors 0;
    faceMomentum     yes;
}

It is proving particularly good for bubbly flows, eliminating the
staggering patterns often seen in the air velocity field with the
previous algorithm, removing other spurious numerical artifacts in the
velocity fields and improving stability and allowing larger time-steps
For particle-gas flows the advantage is noticeable but not nearly as
pronounced as in the bubbly flow cases.

Please test the new algorithm on your cases and provide feedback.

Henry G. Weller
CFD Direct
2015-04-27 21:33:58 +01:00
16248ddb61 twoPhaseEulerFoam: Minor improvement to the handling of p_rgh->p after the pEqn 2015-04-20 20:48:12 +01:00
ff067f1f2d applications/solvers/multiphase: for MRF make phiHbyA relative BEFORE adjustPhi
Resolves bug-report http://openfoam.org/mantisbt/view.php?id=1665
2015-04-20 16:50:02 +01:00
658b8b6d04 twoPhaseEulerFoam: Added fvOptions correction to the phase velocities after matrix construction 2015-04-18 21:40:54 +01:00
0a1da8d438 twoPhaseEulerFoam: Improved handling of velocity/flux boundary conditions
Updated tutorials to converge pressure during PIMPLE loop to avoid
phase-fraction unboundedness which limits thermodynamics convergence.
2015-04-12 09:57:56 +01:00
b191988d89 twoPhaseEulerFoam: Correct continuity errors after temperature update 2015-04-11 11:00:28 +01:00
a515222a98 twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/noTurbulentDispersion: Corrected dimension of D 2015-04-10 15:40:26 +01:00
2150f659f4 twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/Burns: Corrected sign of the diffusivity 2015-04-10 11:51:00 +01:00
7f22b9f756 twoPhaseEulerFoam: formalize the use of partial-elimination for phase velocity and flux correction 2015-04-08 16:42:06 +01:00
17644d5bc2 Updated headers 2015-04-08 12:22:15 +01:00
fcbdfd4e44 twoPhaseEulerFoam: Interpolate lift, wall-lubrication and turbulent dispersion forces
Reduces or eliminates staggering patterns due to cell-force imbalances
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1363
2015-04-08 12:19:23 +01:00
a6dded3ba5 twoPhaseEulerFoam: Add partial-elimination to phase flux and velocity correction
Improves stability and convergence of systems in which drag dominates
e.g. small particles in high-speed gas flow.

Additionally a new ddtPhiCorr strategy is included in which correction
is applied only where the phases are nearly pure.  This reduces
staggering patters near the free-surface of bubble-column simulations.
2015-04-05 21:18:28 +01:00
a20b46df89 ddtScheme::fvcDdtPhiCoeff: Zero ddtCorr on AMIs
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1421
2015-03-24 15:23:01 +00:00
e5d44a0e0b multiphaseEulerFoam: transform to solve for p_rgh
to avoid excessive pressure/buoyancy balance errors on non-orthogonal meshes
2015-03-19 21:40:41 +00:00
13d4f5c386 Buoyant solvers: Add special handling for ghRef in the case g = (0 0 0) 2015-03-19 15:26:06 +00:00
d3212910cb JohnsonJacksonFrictionalStress: alphaDeltaMax -> alphaDeltaMin (it is the lower limit) 2015-03-18 15:40:39 +00:00
2c41e510af twoPhaseEulerFoam JohnsonJacksonFrictionalStress: alphaDeltaMax now user input (previously hard-coded to 5e-2) 2015-03-18 15:03:10 +00:00
247efed12b twoPhaseEulerFoam: Rationalize the particle-pressure flux BCs and correct for coupled-patches 2015-03-18 11:53:23 +00:00
50b2edbedc twoPhaseEulerFoam: transform to solve for p_rgh
to avoid excessive pressure/buoyancy balance errors on non-orthogonal meshes
Resolves bug-report http://openfoam.org/mantisbt/view.php?id=1379
2015-03-17 22:40:09 +00:00
afcd290d75 Solvers based on p_rgh: Added support for optional hRef
Allows the specification of a reference height, for example the height
of the free-surface in a VoF simulation, which reduces the range of p_rgh.

hRef is a uniformDimensionedScalarField specified via the constant/hRef
file, equivalent to the way in which g is specified, so that it can be
looked-up from the database.  For example see the constant/hRef file in
the DTCHull LTSInterFoam and interDyMFoam cases.
2015-03-17 17:15:11 +00:00
43aec8425b TomiyamaLift: Updated coefficient to make the model continuous at EoH = 10.7
Correction provided by Juho Peltola
2015-03-11 18:06:04 +00:00
2e2cbe50c6 TomiyamaLift: Corrected coefficients to correspond exactly to the original paper cited
Resolved bug-report http://www.openfoam.org/mantisbt/view.php?id=1564
2015-03-10 19:57:42 +00:00
c239b0ebe0 Update Header 2015-03-02 22:30:29 +00:00
b82911b3cf BinghamPlastic: Change definition of shear-rate by 1/sqrt(2)
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1552
2015-03-02 22:27:39 +00:00
a12281827e Removed temporary Info 2015-03-02 22:26:24 +00:00
5daf22d9d7 interFoam/alphaEqn: Corrected handling of the off-centreing coefficient for Crank-Nicolson 2015-02-22 12:13:19 +00:00
ff8978dba5 interFoam/alphaEqn: Updated phiCN 2015-02-22 10:25:30 +00:00
9fc5f5c1db interFoam/alphaEqn: Update explicit corrector to use the Crank-Nicolson flux 2015-02-21 21:39:59 +00:00
47482b9246 LTSinterFoam: test for localEuler as a valid scheme in the new alphaEqn 2015-02-20 22:47:51 +00:00
f78d33b634 interFoam family: Add support for MULES-bounded Crank-Nicolson 2nd-order ddt(alpha)
This is an experimental feature demonstrating the potential of MULES to
create bounded solution which are 2nd-order in time AND space.

Crank-Nicolson may be selected on U and/or alpha but will only be fully
2nd-order if used on both within the PIMPLE-loop to converge the
interaction between the flux and phase-fraction.  Note also that
Crank-Nicolson may not be used with sub-cycling but all the features of
semi-implicit MULES are available in particular MULESCorr and
alphaApplyPrevCorr.

Examples of ddt specification:

ddtSchemes
{
    default         Euler;
}

ddtSchemes
{
    default         CrankNicolson 0.9;
}

ddtSchemes
{
    default         none;
    ddt(alpha)      CrankNicolson 0.9;
    ddt(rho,U)      CrankNicolson 0.9;
}

ddtSchemes
{
    default         none;
    ddt(alpha)      Euler;
    ddt(rho,U)      CrankNicolson 0.9;
}

ddtSchemes
{
    default         none;
    ddt(alpha)      CrankNicolson 0.9;
    ddt(rho,U)      Euler;
}

In these examples a small amount of off-centering in used to stabilize
the Crank-Nicolson scheme.  Also the specification for alpha1 is via the
generic phase-fraction name to ensure in multiphase solvers (when
Crank-Nicolson support is added) the scheme is identical for all phase
fractions.
2015-02-20 15:59:43 +00:00
f5c0684463 Updated header 2015-02-17 23:59:13 +00:00
e9f2981d85 driftFluxFoam: Updated base-class of incompressibleTwoPhaseInteractingMixture 2015-02-17 23:58:44 +00:00
76c7f68ac1 fluidThermo: Add compressibleTransportModel as base-class
Needed to create generic compressible turbulence model library
2015-02-17 17:25:26 +00:00
e8e0c99790 DyM solvers: rationalized handling of time update 2015-02-16 21:48:00 +00:00
cd5ade6c44 compressibleInterDyMFoam and interPhaseChangeDyMFoam: cache divU before time advancement to ensure the old-time meshPhi are used to make phi absolute
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1531
2015-02-16 21:42:09 +00:00
f58fd14271 Corrected capitalization of Doxygen documentation comments 2015-02-14 13:10:15 +00:00
aee9511710 porousInterFoam is no longer needed
Use interFoam with fvOptions
2015-02-13 21:39:48 +00:00
e13210a6d6 twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE: Corrected sign of random coalescence source
Resolves bug-report http://openfoam.org/mantisbt/view.php?id=1382
2015-02-13 09:23:22 +00:00
a4f46eb5e6 pEqn: DO NOT constrain the pressure equation as this will lead to continuity errors 2015-02-12 10:42:17 +00:00
a4cca549e2 Explicitly name derived fields to improve readability of diagnostic messages and avoid duplicate registration 2015-02-12 09:59:52 +00:00
92e0c46ad1 kineticTheoryModel: Name intermediate variable and avoid duplicate registration 2015-02-11 16:51:44 +00:00
5a896b95df driftFluxFoam: Name ghf correctly
Avoids problem of duplicate registration
2015-02-11 14:49:23 +00:00