Commit Graph

203 Commits

Author SHA1 Message Date
Henry Weller
8b47981d3e pisoFoam: Added MRF and fvOptions support 2015-06-30 15:21:00 +01:00
Henry Weller
60cffb2fc3 pimpleFoam family: Added PIMPLEC (PIMPLE-consistent) support
Select using the optional

    consistent true;

setting in the PIMPLE dictionary of fvSolution.

This option is generally only beneficial for cases run in PIMPLE-mode
with a large maximum Courant number.
2015-06-27 18:56:24 +01:00
Henry Weller
e332c4a335 simpleFoam: Construct a turbulenceModel rather than RASModel
to support laminar simulations in the new framework.

Unfortunately this allows LES models to be instantiated although they
are not compatible with steady-state simulations.
2015-06-23 10:52:45 +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
38177526ff simpleFoam/SRFSimpleFoam: Added support for SIMPLEC
SIMPLEC (SIMPLE-consistent) is selected by setting "consistent" option true/yes:

SIMPLE
{
    nNonOrthogonalCorrectors 0;
    consistent yes;
}

which relaxes the pressure in a "consistent" manner and additional
relaxation of the pressure is not generally necessary.  In addition
convergence of the p-U system is better and reliable with less
aggressive relaxation of the momentum equation, e.g. for the motorbike
tutorial:

relaxationFactors
{
    equations
    {
        U               0.9;
        k               0.7;
        omega           0.7;
    }
}

The cost per iteration is marginally higher but the convergence rate is
better so the number of iterations can be reduced.

The SIMPLEC algorithm also provides benefit for cases with large
body-forces, e.g. SRF, see tutorials/incompressible/SRFSimpleFoam/mixer
and feature request http://www.openfoam.org/mantisbt/view.php?id=1714
2015-05-29 11:30:40 +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
67e8bd8bf9 shallowWaterFoam: Read hU rather than U to support complex e.g. time-varying BCs
Disadvantage is that the BC values have to be specified in terms of hU
rather than U.  The alternative would be to add complex code to map h
and U BCs into the equivalent for hU.
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1566
2015-03-13 22:14:08 +00:00
Henry
1dcf50d4b4 icoFoam/nonNewtonianIcoFoam: Update to use pisoControl 2015-02-21 21:39:01 +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
91ffedbeb2 Solvers: Rationalized correctPhi 2015-02-11 13:22:24 +00:00
Henry
c778346c96 Formatting: Rationalized the indentation of #include 2015-02-10 20:35:50 +00:00
Henry
633ae4ede0 solvers: rationalize the return statement 2015-02-10 18:20:42 +00:00
Henry
46f16ecb80 Use old PISO control structure for teaching solvers icoFoam and nonNewtonianIcoFoam 2015-02-10 17:31:38 +00:00
Henry
25908eb4fc pimpleControl and pisoControl: Rationalize PISO and PIMPLE control 2015-02-10 13:47:18 +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
66cb99e696 Updated headers to ensure the class name declared to Doxygen is in the appropriate namespace
Also moved global classes which should be in the Foam namespace into it.
2015-02-09 14:43:11 +00:00
Henry
2aec249647 Updated the whole of OpenFOAM to use the new templated TurbulenceModels library
The old separate incompressible and compressible libraries have been removed.

Most of the commonly used RANS and LES models have been upgraded to the
new framework but there are a few missing which will be added over the
next few days, in particular the realizable k-epsilon model.  Some of
the less common incompressible RANS models have been introduced into the
new library instantiated for incompressible flow only.  If they prove to
be generally useful they can be templated for compressible and
multiphase application.

The Spalart-Allmaras DDES and IDDES models have been thoroughly
debugged, removing serious errors concerning the use of S rather than
Omega.

The compressible instances of the models have been augmented by a simple
backward-compatible eddyDiffusivity model for thermal transport based on
alphat and alphaEff.  This will be replaced with a separate run-time
selectable thermal transport model framework in a few weeks.

For simplicity and ease of maintenance and further development the
turbulent transport and wall modeling is based on nut/nuEff rather than
mut/muEff for compressible models so that all forms of turbulence models
can use the same wall-functions and other BCs.

All turbulence model selection made in the constant/turbulenceProperties
dictionary with RAS and LES as sub-dictionaries rather than in separate
files which added huge complexity for multiphase.

All tutorials have been updated so study the changes and update your own
cases by comparison with similar cases provided.

Sorry for the inconvenience in the break in backward-compatibility but
this update to the turbulence modeling is an essential step in the
future of OpenFOAM to allow more models to be added and maintained for a
wider range of cases and physics.  Over the next weeks and months more
turbulence models will be added of single and multiphase flow, more
additional sub-models and further development and testing of existing
models.  I hope this brings benefits to all OpenFOAM users.

Henry G. Weller
2015-01-21 19:21:39 +00:00
Henry
0da35af2f4 Update headers 2015-01-12 12:34:38 +00:00
Henry
ff29093117 Incompressible turbulence models: Remove the correction of the laminar transport model
Explicitly correct laminar transport at the application level as is done in the multiphase solvers
2015-01-12 12:32:38 +00:00
Henry
844b283030 New version of wmake supporting out-of-tree object and dependency files 2014-12-14 21:42:18 +00:00
Henry
cab71bd05f pimpleFoam: Added support for fixedFluxPressure BC 2014-03-20 16:34:31 +00:00
Henry
a8c917fd4b DyM solvers: correct Uf using phi after construction 2013-12-11 17:26:34 +00:00
Henry
e9b6c5f293 Rationalise all correctPhi implementations 2013-09-11 22:59:00 +01:00
Henry
08baa6eda6 fixedFluxPressure BC: the snGrad is now pushed into the BC from pEqn.H rather than being evaluated in the BC 2013-09-11 00:10:00 +01:00
Henry
3ac2d3e65a Rationalised createPcorrTypes.H and createUf.H 2013-09-10 17:08:29 +01:00
Henry
470553c61a Updated headers 2013-09-09 12:41:33 +01:00
Henry
51f085faa5 Rewrite of ddtPhiCorr - ddtCorr and density-weight HbyA on compressible solvers.
For DyM solvers phiAbs is replaced by Uf but this conversion is currently not complete
2013-09-09 12:41:20 +01:00
Henry
046f740f0e Renamed relativeFlux -> makeRelative and absoluteFlux -> makeAbsolute 2013-08-20 15:40:00 +01:00
Sergio Ferraris
05022c2c02 BUG: In these solvers adjustPhi in the pEqn was calculated "before"
fvOption.relativeFlux() statement. Therefore adjustPhi was using
the absolute phi instead if the relative when the MRF was active
2013-08-07 17:18:08 +01:00
Henry
2d124e8e8b Removed blank-line 2013-06-20 10:40:01 +01:00
mattijs
3050476b1f STYLE: chtMultiRegionFoam: corrected comment 2013-06-07 14:53:49 +01:00
andy
1ad81c9b19 BUG: Added missing/non-committed file 2013-06-04 09:50:21 +01:00
andy
d18db8ba07 ENH: potentialFreeSurfaceFoam - updated phi patches so can use fixed flux pressure on moving boundaries 2013-06-03 18:26:56 +01:00
Henry
042354a88e rhoPimpleDyMFoam: New version of rhoPimpleFoam for moving-mesh cases 2013-04-29 14:34:15 +01:00
andy
2915000cbc BUG: Corrected fvOptions usage in pimpleDyMFoam UEqn 2013-04-11 12:05:44 +01:00
Henry
339644581c Field mapping following topology change: Dy default additional faces now inherit the internal field values
if they do not have neighbouring faces from which the values may be
interpolated.  Also the old-time flux is set to the current flux values
following correction.  This currently supports only Euler time-schemes.
2013-03-25 16:43:46 +00:00
andy
5ec46af785 ENH: Solver updates for fvOptions usage 2013-01-22 09:43:44 +00:00
andy
2931af2eea BUG: Added missing fvOptions to rhs of UEqn 2013-01-21 17:40:27 +00:00
andy
78df71ea98 ENH: Updated solver header doc 2013-01-11 16:04:33 +00:00
andy
d2b84dc511 ENH: Updated fieldSources->fvOptions for solvers 2013-01-08 09:38:01 +00:00
opencfd
de29a1ed27 Merge branch 'master' of dm:/home/dm4/OpenFOAM/OpenFOAM-dev 2012-12-10 17:09:34 +00:00
opencfd
391a703b90 COMP: various: indirect linkage problems on Ubuntu12.04 2012-12-10 17:08:42 +00:00
andy
72ab425a77 ENH: Updated instantiation of sources by solvers 2012-12-10 15:21:37 +00:00
andy
b785ae594d ENH: Updated sources for incompressible solvers 2012-12-10 11:09:08 +00:00
andy
63177c9da4 ENH: pimpleFoam - added sources.correct(U) after momentum solve 2012-12-10 10:15:54 +00:00
andy
70d61bfe09 ENH: Updated Allwmake scripts 2012-12-06 09:50:36 +00:00
andy
12ec31f0c9 ENH: Updated sources handling in pimpleFoam 2012-12-05 17:07:15 +00:00
andy
5128ae22c0 ENH: Added MRF functionality to porousSimpleFoam 2012-12-05 16:08:11 +00:00
andy
1bd09f6e16 ENH: Removed MRFSimpleFoam - can now use simpleFoam + basicSource 2012-12-05 15:56:52 +00:00