Commit Graph

233 Commits

Author SHA1 Message Date
Henry Weller
d0f15d4e3c 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
Henry Weller
aa42c1f906 kOmegaSSTSato: Relocated to src/TurbulenceModels/phaseCompressible/RAS 2015-06-30 13:04:27 +01:00
Henry Weller
e9ecd7ddef twoPhaseEulerFoam, reactingTwoPhaseEulerFoam: Removed duplicate files 2015-06-25 20:27:09 +01:00
Henry Weller
69d994e794 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
Henry Weller
360604b104 twoPhaseEulerFoam: Minor reorganization 2015-06-12 09:42:19 +01:00
Henry
8eda4b8632 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
Henry
61e52b2cb4 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
Henry
c3ee2348a6 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
Henry
38171e0c7a MRFZone: rationalize to allow support for general frame acceleration 2015-05-29 15:31:53 +01:00
Henry
18641f0649 twoPhaseEulerFoam: rationalize handling of fixed-flux BC update 2015-05-09 23:45:15 +01:00
Henry
cd2aa39eda Update header 2015-05-08 10:10:47 +01:00
Henry
6b2fb4664c 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
Henry
24b0f3ad0b 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
Henry
9284d856b9 Updated header 2015-04-28 18:19:13 +01:00
Henry
9655398064 twoPhaseEulerFoam: Improvements to implicitPhasePressure 2015-04-28 18:18:34 +01:00
Henry
fc6b44ee3c 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
Henry
828ca8322c twoPhaseEulerFoam: Minor improvement to the handling of p_rgh->p after the pEqn 2015-04-20 20:48:12 +01:00
Henry
3b65f924ec twoPhaseEulerFoam: Added fvOptions correction to the phase velocities after matrix construction 2015-04-18 21:40:54 +01:00
Henry
f5bb944965 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
Henry
4ee86fd7c7 twoPhaseEulerFoam: Correct continuity errors after temperature update 2015-04-11 11:00:28 +01:00
Henry
6c097fc2b6 twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/noTurbulentDispersion: Corrected dimension of D 2015-04-10 15:40:26 +01:00
Henry
4c443233be twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels/Burns: Corrected sign of the diffusivity 2015-04-10 11:51:00 +01:00
Henry
ff2f3205af twoPhaseEulerFoam: formalize the use of partial-elimination for phase velocity and flux correction 2015-04-08 16:42:06 +01:00
Henry
5688e3daa7 Updated headers 2015-04-08 12:22:15 +01:00
Henry
0be1e89204 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
Henry
724b0fdb8c 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
Henry
9cd9a9f364 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
Henry
28abb8cda5 Buoyant solvers: Add special handling for ghRef in the case g = (0 0 0) 2015-03-19 15:26:06 +00:00
Henry
fa2721ffd5 JohnsonJacksonFrictionalStress: alphaDeltaMax -> alphaDeltaMin (it is the lower limit) 2015-03-18 15:40:39 +00:00
Henry
2e35cc76e8 twoPhaseEulerFoam JohnsonJacksonFrictionalStress: alphaDeltaMax now user input (previously hard-coded to 5e-2) 2015-03-18 15:03:10 +00:00
Henry
fb84761ef8 twoPhaseEulerFoam: Rationalize the particle-pressure flux BCs and correct for coupled-patches 2015-03-18 11:53:23 +00:00
Henry
c530e1cd9b 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
Henry
a8d5917389 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
Henry
a80d9c7407 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
Henry
945c4c3d18 fluidThermo: Add compressibleTransportModel as base-class
Needed to create generic compressible turbulence model library
2015-02-17 17:25:26 +00:00
Henry
8628ef2fea Corrected capitalization of Doxygen documentation comments 2015-02-14 13:10:15 +00:00
Henry
f86f904d7d 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
Henry
d9eb18adbc pEqn: DO NOT constrain the pressure equation as this will lead to continuity errors 2015-02-12 10:42:17 +00:00
Henry
5a2c5c8fdc Explicitly name derived fields to improve readability of diagnostic messages and avoid duplicate registration 2015-02-12 09:59:52 +00:00
Henry
04834350dd kineticTheoryModel: Name intermediate variable and avoid duplicate registration 2015-02-11 16:51:44 +00:00
Henry
573829b60b twoPhaseEulerFoam/twoPhaseSystem/diameterModels/constantDiameter: Do not register the temporary diameter field 2015-02-11 14:48:34 +00:00
Henry
c778346c96 Formatting: Rationalized the indentation of #include 2015-02-10 20:35:50 +00:00
Henry
fe8c5ff636 Applications: use pimpleControl.dict() and simpleControl.dict() instead of looking-up the sub-dict 2015-02-09 22:15:26 +00:00
Henry
5c77a34f5a twoPhaseEulerFoam: Corrected EoH2
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1505
2015-02-02 09:44:18 +00:00
Henry
5252c800eb twoPhaseEulerFoam/twoPhaseSystem/diameterModels/IATE: Added fvOptions support
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1402
2015-01-22 10:59:45 +00:00
Henry
9a40fb787e multiphase solvers: print phase-name rather than alpha1/2 when printing max and min phase-fraction 2015-01-21 20:07:15 +00:00
Henry
f524fa1e9f Updated header 2015-01-08 16:25:48 +00:00
Henry
0f0672563b twoPhaseEulerFoam: removed unnecessary fvc.H 2015-01-08 16:25:17 +00:00
Henry
c4804e5a0b wallDist: Add support for cached wall-reflection vectors
Currently these vectors are generated at the same time as the wall-distance field
by the same run-time selected algorithm.  This will be changed so that the wall-reflection
vectors are only generated and stored if required.
2015-01-08 16:08:53 +00:00
Henry
69ff8aa4d2 wallDist: now a MeshObject cached and updated automatically with a run-time selected algorithm
When using models which require the wallDist e.g. kOmegaSST it will
request the method to be used from the wallDist sub-dictionary in
fvSchemes e.g.

wallDist
{
    method meshWave;
}

specifies the mesh-wave method as hard-coded in previous OpenFOAM versions.
2015-01-08 10:40:23 +00:00