Commit Graph

120 Commits

Author SHA1 Message Date
b020234d39 saturationModels: Added Tsat function
Currently this is implemented only for the Antoine equation, for the
other more complex models an iterative inversion from pressure to
temperature is required.
2015-07-04 14:46:55 +01:00
007451a616 reactingTwoPhaseEulerFoam: Completed mass-transfer terms in both forms of momentum equations 2015-07-03 23:18:25 +01:00
e8d45b1d3c reactingTwoPhaseEulerFoam: Replace x*pos(x) with posPart(x) and same for neg 2015-07-03 18:04:34 +01:00
89bce95441 reactingTwoPhaseEulerFoam: Updated wmake files 2015-07-03 17:44:34 +01:00
025fe65d02 reactingTwoPhaseEulerFoam: Renamed saturationPressureModel -> saturationModel
In preparation for adding the Tsat function
2015-07-03 16:15:09 +01:00
52cde47fc5 Removed temporary Info statement 2015-07-03 15:47:25 +01:00
3966ffc0db reactingTwoPhaseEulerFoam: Added mass-exchange contribution to the cell-based momentum equations 2015-07-03 15:46:52 +01:00
678a50bd06 reactingTwoPhaseEulerFoam: Changed the handling of the energy transfer
for consistency with the evaluation of the interface temperature.
2015-07-03 15:45:56 +01:00
bb5bc559d4 reactingTwoPhaseEulerFoam: Corrected handling of heat-transfer caused by mass-transfer 2015-07-02 22:51:06 +01:00
f1f2c0a9f1 reactingTwoPhaseEulerFoam/pU/pEqn: Added missing dmdt terms 2015-07-02 22:50:44 +01:00
d5c8a45f5c EEqn: Added rho*(U&g) source term
Generally this term has a VERY small effect on temperature, it is only
important for low-speed buoyancy-dominated flows.

Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1755

See also http://cfd.direct/openfoam/energy-equation/
2015-07-01 10:53:37 +01:00
a77070cde6 kOmegaSSTSato: Relocated to src/TurbulenceModels/phaseCompressible/RAS 2015-06-30 13:04:27 +01:00
44c040dfda LTS: Simplify the selection of LTS operation 2015-06-29 11:53:20 +01:00
8729455377 LTS: Formalize the naming of the rDeltaT and rSubDeltaT fields
Now the specification of the LTS time scheme is simply:

ddtSchemes
{
    default         localEuler;
}
2015-06-28 21:41:40 +01:00
869af5bf17 reactingTwoPhaseEulerFoam: Removed superfluous trSubDeltaT field 2015-06-26 22:05:39 +01:00
d314ed3b4a LTS, MULES and sub-cycling: Improved the handling of the rSubDeltaT field 2015-06-26 21:58:27 +01:00
3025df4e48 interFoam: Change construction order 2015-06-26 18:54:37 +01:00
e0d7809ca5 reactingTwoPhaseEulerFoam: Added experimental run-time selectable LTS support
Select LTS via the ddtScheme:

    ddtSchemes
    {
        default         localEuler rDeltaT;
    }

The LTS algorithm is currently controlled with the standard settings in
controlDict, e.g.:

    maxCo           0.5;
    maxDeltaT       2e-8;

with the addition of the optional rDeltaT smoothing coefficient:

    rDeltaTSmoothingCoeff 0.02;

which defaults to 0.02.

    ddtSchemes
    {
        default         localEuler rDeltaT;
    }
2015-06-26 18:52:23 +01:00
2ac4a4e84c interFoam family: Added run-time selectable LTS support
LTS is selected by the ddt scheme e.g. in the
tutorials/multiphase/interFoam/ras/DTCHull case:

ddtSchemes
{
    default         localEuler rDeltaT;
}

LTSInterFoam is no longer needed now that interFoam includes LTS
support.
2015-06-26 18:32:20 +01:00
f67c9ab9bd reactingTwoPhaseEulerFoam: Change the implicit handling of phase-pressure and dispersion
to support any number of phases
2015-06-26 15:15:10 +01:00
0f94c22141 reactingTwoPhaseEulerFoam: Minor reorganization 2015-06-25 22:43:22 +01:00
acfe44eac4 reactingTwoPhaseEulerFoam: Add fvOption handling to the continuity error
correction in MovingPhaseModel<BasePhaseModel>::correct()
2015-06-25 22:29:08 +01:00
5feec38881 twoPhaseEulerFoam, reactingTwoPhaseEulerFoam: Removed duplicate files 2015-06-25 20:27:09 +01:00
27d956d278 reactingTwoPhaseEulerFoam: Construct MRF and fvOptions in phaseSystem 2015-06-25 19:22:47 +01:00
a3c6e30bc7 reactingTwoPhaseEulerFoam: Change the sign of the compressibility correction field
to correspond to the phase dilatation rate.
2015-06-25 16:37:53 +01:00
d83df30b98 reactingTwoPhaseEulerFoam: Generalize the handling of the dilatation rate
to support any number of phases
2015-06-25 16:10:07 +01:00
fa6902fde0 twoPhaseEulerFoam: Change the implicit particle-pressure and turbulence dispersion
to be phase-symmetric so that the results are independent of which
phase-fraction is solved.
2015-06-25 16:08:21 +01:00
6c66ef9c88 Rationalized the LTS solvers 2015-06-16 12:42:37 +01:00
3ed90ae73d reactingTwoPhaseEulerFoam: New twoPhaseEulerFoam supporting mass-transfer and reactions
Multi-species, mass-transfer and reaction support and multi-phase
structure provided by William Bainbridge.

Integration of the latest p-U and face-p_U algorithms with William's
multi-phase structure is not quite complete due to design
incompatibilities which needs further development.  However the
integration of the functionality is complete.

The results of the tutorials are not exactly the same for the
twoPhaseEulerFoam and reactingTwoPhaseEulerFoam solvers but are very
similar.  Further analysis in needed to ensure these differences are
physical or to resolve them; in the meantime the twoPhaseEulerFoam
solver will be maintained.
2015-06-12 09:52:17 +01:00
b5edc2c9c7 twoPhaseEulerFoam: Minor reorganization 2015-06-12 09:42:19 +01:00
d617e9b0e7 twoPhaseEulerFoam/interfacialModels/heatTransferModels/sphericalHeatTransfer: new heat-transfer model
Model which applies an analytical solution for heat transfer from the
surface of a sphere to the fluid within the sphere.

Provided by William Bainbridge
2015-06-07 18:57:13 +01:00
c937c4c9ba twoPhaseEulerFoam: Move the residualAlpha used for drag into the phaseModel
This is necessary to guarantee consistency between the residualAlpha
used for drag and buoyancy in a multi-phase system
2015-06-07 18:55:24 +01:00
2b9a2adf8c MRF: Separate MRF from fvOptions
fvOptions does not have the appropriate structure to support MRF as it
is based on option selection by user-specified fields whereas MRF MUST
be applied to all velocity fields in the particular solver.  A
consequence of the particular design choices in fvOptions made it
difficult to support MRF for multiphase and it is easier to support
frame-related and field related options separately.

Currently the MRF functionality provided supports only rotations but
the structure will be generalized to support other frame motions
including linear acceleration, SRF rotation and 6DoF which will be
run-time selectable.
2015-05-29 23:35:43 +01:00
8b7e02167f MRFZone: rationalize to allow support for general frame acceleration 2015-05-29 15:31:53 +01:00
658af8b5b2 driftFluxFoam/relativeVelocityModels/Make/options: add newline 2015-05-19 14:34:37 +01:00
bfb726aba3 twoPhaseEulerFoam: rationalize handling of fixed-flux BC update 2015-05-09 23:45:15 +01:00
5c2fa016e4 Update header 2015-05-08 10:10:47 +01:00
cd245e9a3f twoPhaseEulerFoam: Update only the fixed-value phi patch fields before constructing the pressure eqn
Avoids small continuity error in parallel
2015-05-08 09:51:36 +01:00
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