Commit Graph

576 Commits

Author SHA1 Message Date
Henry Weller
59f17355cf rotorDiskSource: Debugged the duplicated interpolation functions
Needs rewriting to avoid unnecessary code duplication, preferably using
standard OpenFOAM interpolation functionality.
2015-07-03 12:41:25 +01:00
Henry Weller
8c8a3a162f tutorials/incompressible/simpleFoam/rotorDisk: Tutorial for the rotorDiskSource functionObject
Provided by Richard Jones
2015-07-01 12:37:21 +01:00
Henry Weller
256be2641f Renamed pressureGradientExplicitSource to meanVelocityForce
as it is the applied the force necessary to maintain the specified mean velocity
2015-06-30 19:13:16 +01:00
Henry Weller
0e7de1b8df tutorials/incompressible/simpleFoam/pitzDaily: Change to use SIMPLEC
With the SIMPLE "consistent" option and optimized relaxation factors
this tutorial now converges in 210 iterations, previously with SIMPLE it
took 950.  Despite the increase in cost per time-step due to the
increase in relaxation factors and number of solver iterations the
speed-up is 3.5x.
2015-06-23 20:33:48 +01:00
Henry
3a004fda10 fvOptions: Separate options for all cells, cellSets and inter-region coupling
by introducing rational base-classes rather than using the hideous
'switch' statement.  Further rationalization of the cell-selection
mechanism will be implemented via an appropriate class hierarchy to
replace the remaining 'switch' statement.

Mesh-motion is currently handled very inefficiently for cellSets and not
at all for inter-region coupling.  The former will be improved when the
cell-selection classes are written and the latter by making the
meshToMesh class a MeshObject after it has been corrected for mapFields.
2015-05-31 16:38:01 +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
ec6ad11cbd tutorials/incompressible/simpleFoam/pitzDaily/0/omega: Correct value to be consistent with epsilon
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1720
2015-05-29 21:26:49 +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
Chris Greenshields
a28ac315ff windAroundBuildings: example case of wind flow around buildings 2015-05-19 17:12:33 +01:00
Henry
75282f9b11 Minor cleanup 2015-05-03 18:11:53 +01:00
Henry
dc5ed4cc1b MRFZone: Add regex and group support to the specification of nonRotatingPatches 2015-04-26 16:38:07 +01:00
Henry
5b1edc73b1 SRFModel: Changes origin to be user-input rather than hard-coded to (0 0 0)
Updated tutorials
2015-04-26 11:28:14 +01:00
Henry
0a6ca7ae45 includeEtcEntry: New dictionary include directive: #includeEtc "etcFile"
Description
    Specify an etc file to include when reading dictionaries, expects a
    single string to follow.

    Searches for files from user/group/shipped directories.
    The search scheme allows for version-specific and
    version-independent files using the following hierarchy:
    - \b user settings:
      - ~/.OpenFOAM/\<VERSION\>
      - ~/.OpenFOAM/
    - \b group (site) settings (when $WM_PROJECT_SITE is set):
      - $WM_PROJECT_SITE/\<VERSION\>
      - $WM_PROJECT_SITE
    - \b group (site) settings (when $WM_PROJECT_SITE is not set):
      - $WM_PROJECT_INST_DIR/site/\<VERSION\>
      - $WM_PROJECT_INST_DIR/site/
    - \b other (shipped) settings:
      - $WM_PROJECT_DIR/etc/

    An example of the \c \#includeEtc directive:
    \verbatim
        #includeEtc "etcFile"
    \endverbatim

    The usual expansion of environment variables and other constructs is
    retained.
2015-04-26 10:44:11 +01:00
Henry
c28036665d potentialFoam: No longer executes functionObjects by default
Use the new -withFunctionObjects command-line option to execute functionObjects
2015-04-25 21:56:14 +01:00
Henry
50ada7c994 blockMesh: Change default location of blockMeshDict from constant/polyMesh to system
For multi-region cases the default location of blockMeshDict is now system/<region name>

If the blockMeshDict is not found in system then the constant directory
is also checked providing backward-compatibility
2015-04-24 22:29:57 +01:00
Henry
e68c5f666b Scripts: Add {} following -I option to xargs
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1573
2015-03-15 22:14:44 +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
bbc223d28d Replace xargs -i with xargs -I as the -i option is deprecated 2015-03-13 17:56:52 +00:00
Henry
a124bbaa0c TurbulenceModels: Update non-linear models to use the new innerSqr function 2015-02-28 16:11:24 +00:00
Henry
c350b22cd5 Turbulence models: minor clean-up 2015-02-27 19:23:39 +00:00
Henry
d05b8e6dd2 ShihQuadraticKE: Rewritten and tested on the boundaryWallFunctions and pitzDaily cases 2015-02-27 18:13:30 +00:00
Henry
f6e868e1f7 tutorials/compressible/sonicDyMFoam/movingCone: sonic version of the pimpleDyMFoam/movingCone tutorial 2015-02-22 16:53:33 +00:00
Henry
5ecfb06398 tutorials: remove unnecessary under-relax fields entry 2015-02-22 16:52:21 +00:00
Henry
7be1393fef tutorials: corrected comments in snappyHexMeshDict
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1541
2015-02-17 23:59:59 +00:00
Henry
8628ef2fea Corrected capitalization of Doxygen documentation comments 2015-02-14 13:10:15 +00:00
Henry
eb266e2add turbulenceModels/LES/dynamicKEqn/dynamicKEqn: Added dynamic version of the one-equation SGS model 2015-02-14 13:08:08 +00:00
Henry
4129560601 potentialFoam: Solve for velocity potential named Phi rather than using the pressure field for this purpose
The Phi field is read if available otherwise created automatically with
boundary conditions obtained automatically from the pressure field if
available (with optional name) otherwise inferred from the velocity
field.  Phi Laplacian scheme and solver specification are required.  See
tutorials for examples.
2015-02-14 11:03:37 +00:00
Henry
1edf292c00 Correct Doxygen multiline comments 2015-02-14 10:59:29 +00:00
Henry
332c3cc37f Tutorials: change topoSetDicts to avoid duplicate names 2015-02-12 10:01:31 +00:00
Henry
acbd73cb5b tutorials/incompressible/simpleFoam/pitzDaily: Setup to run with range of turbulence models 2015-01-28 18:36:03 +00:00
Henry
fb30659b25 tutorials/incompressible/pimpleFoam/elipsekkLOmega: added non-orthogonal correctors to improve stability when running longer 2015-01-28 09:19:20 +00:00
Henry
d815440f52 tutorials/incompressible/pimpleFoam/elipsekkLOmega: Updated 2015-01-27 15:09:03 +00:00
Henry
4f048a8d9c TurbulenceModels: Added LRR model with Daly-Harlow generalized gradient diffusion 2015-01-24 22:10:17 +00:00
Henry
04eb2428ff turbulenceModels/LES: Added WALE model
Changed the tutorials/incompressible/pimpleFoam/channel395 to demonstrate the WALE model
2015-01-23 09:17:33 +00:00
Henry
78ca0ce02c Add simulationType entry even for simpleFoam cases
so that generic utilities like yPlus select the appropriate turbulence model
2015-01-21 21:08:19 +00:00
Henry
fbdc5f119a Added updated nut.gz file 2015-01-21 19:38:40 +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
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
Henry
4e4928054a atmBoundaryLayer: rationalized U and epsilon BCs and added the corresponding k BC 2014-12-31 23:03:26 +00:00
Henry
fcd4213fad atmBoundaryLayer: Attempt to rationalize the inputs and documentation to make these BCs more usable
Resolves bug report http://www.openfoam.org/mantisbt/view.php?id=860
2014-12-29 17:39:20 +00:00
Henry
41368addc9 Minor change to comment 2014-12-14 21:50:14 +00:00
OpenFOAM-admin
9fb26d59d3 GIT: Repo update 2014-12-11 08:35:10 +00:00
Henry
f197f9545f tutorials/incompressible/pimpleDyMFoam/mixerVesselAMI2D: Use PIMPLE rather than PISO to ensure updated fluxes are used in momentum equation 2014-07-17 11:30:02 +01:00
andy
d22da01ef5 ENH: tutorial update: movingCone - updated blockMeshDict 2014-07-15 15:59:34 +01:00
Henry
0412aaf40b Removed spurious $1 2014-07-15 11:34:58 +01:00
Henry
7d5e8c2a6f Updated motorBike tutorial to correspond to the training course 2014-07-11 15:48:54 +01:00
Henry
d49889402f sixDoFRigidBodyMotion: Add support to specify the centre for rotation independent of the centre of mass
via the point, line or plane constraints.
2014-05-16 15:35:11 +01:00
OpenFOAM-admin
fbb3ddf2c4 Updated for release 2.3.0 2014-02-17 10:21:46 +00:00
william
8acf2daaba BUG: tutorial fixes for 32 bit ubuntu packs 2014-02-11 10:15:00 +00:00
william
333818408f STYLE: sh instead of bash for tutorial scripts 2014-02-05 16:53:44 +00:00