Commit Graph

3895 Commits

Author SHA1 Message Date
653b88d411 ThermalPhaseChangeSystem: Evaluate latent heat at Tsat
Latent heat is now evaluated at Tsat instead of Tf for the thermal phase
change method. This provides a smooth transition of the interface
temperature field as the phase fraction tends to zero.

Patch contributed by Juho Peltola, VTT.
2019-01-24 18:43:35 +00:00
765ae50d32 reactingEulerFoam: phaeseForces: Standardised phase keyword
The phase which the function object relates to is now selected with the
keyword "phase", rather than "phaseName". This is consistent with other
name entries such as the "phi" entry for an inletOutlet boundary.
2019-01-24 14:30:02 +00:00
4221e43dfc combustion: Removed Qdot field from solvers
The Qdot field has been removed from all reacting solvers, in favour of
computing on the fly whenever it is needed. It can still be generated
for post-processing purposes by means of the Qdot function object. This
change reduces code duplication and storage for all modified solvers.

The Qdot function object has been applied to a number of tutorials in
order to retain the existing output.

A fix to Qdot has also been applied for multi-phase cases.
2019-01-24 14:29:17 +00:00
9847205bfc functionObjects: Qdot: Added configuration 2019-01-24 11:27:47 +00:00
dc25f10202 combustionModels: Added Qdot function object
This function object writes out the heat release rate field for a
combustion model. This is useful for solvers where combustion is
optional, and which do not therefore write out the heat release rate by
default; e.g., chtMultiRegionFoam and reactingTwoPhaseEulerFoam.
2019-01-24 10:10:05 +00:00
a0850290b3 chtMultiRegionFoam: Improvements to reverseBurner tutorial
The tutorial has been converted from two-dimensions to a wedge and the
flow has been swirl stabilised. The turbulence parameters have been made
physical. The transport schemes have been increased to second order. The
reaction mechanism has been changed to one from a publically accessible
reference. The gas thermodynamics have been made incompressible, and the
pressure offset around zero, which improves the behaviour of the
pressure solution.
2019-01-24 09:01:52 +00:00
faf6e24ba3 motionSolvers::motionSolverList: New motion solver where the motion of the mesh specified as a list of motion solvers
The motion solvers are executed in order and the resulting displacements
accumulated into an overall displacement and the displaced point positions
returned.

This functionality replaces the dynamicMotionSolverListFvMesh class with the
equivalent specification of a "solvers" list rather than a "solver" entry in
dynamicMeshDict e.g.

dynamicFvMesh   dynamicMotionSolverFvMesh;

solvers
(
    Rotor
    {
        solver solidBody;

        solidBodyCoeffs
        {
            cellZone region1;

            solidBodyMotionFunction rotatingMotion;

            rotatingMotionCoeffs
            {
                origin        (0 0 0);
                axis          (0 0 1);
                omega         100; // rad/s
            }
        }
    }

    Piston
    {
        solver velocityComponentLaplacian;

        motionSolverLibs ("libfvMotionSolvers.so");

        velocityComponentLaplacianCoeffs
        {
            component       z;
            diffusivity  inverseDistance 1(wall1);
        }
    }
);
2019-01-23 16:37:08 +00:00
c5db440298 dynamicMeshDict: standardised indentation 2019-01-23 11:45:23 +00:00
14aad10fa4 tutorials: Improvements to reacting case setups
Added headers to all reactions files to prevent warnings in paraview.
Added references for known mechanisms. Removed unused reaction and
thermophysical property files.
2019-01-22 15:53:11 +00:00
f96a431bc0 functionObject::age: Changed from "execute" to "write" control 2019-01-22 15:12:25 +00:00
008a768286 foamCloneCase: Added exit 0
Resolves patch request https://bugs.openfoam.org/view.php?id=3151
2019-01-22 13:17:31 +00:00
457c02e63f sampledSurface::writers:noSurfaceWriter: new rational and consistent class to disable surface writing
Selected by

    surfaceFormat none;

rather than the previous inconsistent

    surfaceFormat null;
2019-01-22 11:10:24 +00:00
8baec3bc5d sampledSurface: Created a sampledSurfaces namespace for the sampledSurface classes
to rationalise the structure and class names to avoid the need for the confusing
addNamedToRunTimeSelectionTable and use instead use the standard
addToRunTimeSelectionTable to populate the run-time selection table.
2019-01-21 19:58:18 +00:00
cd8aee2d76 PrimitivePatch: Simplified templating 2019-01-21 09:08:03 +00:00
19c3584d4b functionObject::timeControl: Rationalised naming timeStart -> startTime, timeEnd -> endTime
Support for timeStart and timeEnd is maintained for backward-compatibility but
these names are deprecated.
2019-01-18 13:41:08 +00:00
c9648f972b Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2019-01-18 13:18:11 +00:00
9038c49a18 functionObjects::age: Added support for relaxation 2019-01-18 13:13:01 +00:00
0dfde5ca4f reactingEulerFoam: heatTransferModel: Added constantNu model
This is a heat transfer model with a constant fixed value for the
Nusselt number. It requires a single "Nu" entry to be specified.

Patch contributed by Juho Peltola, VTT
2019-01-17 09:30:42 +00:00
610c61bd2a tutorials: reactingTwoPhaseEulerFoam: Fixed divergence in wallBoilingIATE
Patch contributed by Juho Peltola, VTT.
2019-01-16 15:23:12 +00:00
f4e92c3322 vtkUnstructuredReader: Added support for VTK files with METADATA
Patch contributed by Timo Niemi, VTT.
Resolves patch request https://bugs.openfoam.org/view.php?id=3149
2019-01-16 11:23:01 +00:00
204eb6949d Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2019-01-16 10:04:26 +00:00
18cda8d02c vtkUnstructuredReader: Added support for VTK files with METADATA
Patch contributed by Timo Niemi, VTT.
Resolves patch request https://bugs.openfoam.org/view.php?id=3149
2019-01-16 10:02:51 +00:00
512ef88e8e reactingEulerFoam: Reinstated diameterModel::correct
This had been removed by commit e1c95941, as most of the time it was
only being used to control writing of the diameter field. IATE does
require it, however, so it has been reinstated for that model.
2019-01-15 14:39:31 +00:00
ce8ccc483b kOmega: Added missing dummy source functions 2019-01-11 08:58:04 +00:00
f5d684b034 kOmega: Added support for k and omega sources in derived models
Updated sources to use internal fields.
2019-01-10 10:39:52 +00:00
66c26af922 mesh manipulation utilities: Rationalized field handling and added -noFields option 20190109 2019-01-08 21:10:19 +00:00
28194d9415 Merge branch 'master' of github.com:OpenFOAM/OpenFOAM-dev 2019-01-08 16:49:31 +00:00
b9ecc29687 basicChemistryModelTemplates: Added a space in message 2019-01-08 16:44:20 +00:00
1a6aefb0f9 basicChemistryModelTemplates: Added a space in message 2019-01-08 14:46:00 +00:00
7957f3a8fd waves: Added waveInletOutlet condition
This is an inlet-outlet condition where the inlet value differs above
and below a wave interface. It can be used as follows:

    inlet
    {
        type    waveInletOutlet;
        inletValueAbove 0.01;
        inletValueBelow 0.1;
    }
2019-01-04 12:00:41 +00:00
70021b1268 fvPatchField: Corrected propagation of patchType
The construction of some patch fields has been corrected so that the
patchType setting always propagates on mapping, IO, clone, etc...
Dictionary and mapping-based patch field constructors now call the
corresponding constructor from the base class, regardless of whether
dictionary settings or mapping are actually needed.

A "mappingRequired" flag has been added to some of the base constructors
in order to prevent unecessary mapping of field data and retain the
previous level of optimisation.

Resolves bug report https://bugs.openfoam.org/view.php?id=3144
2019-01-04 10:01:17 +00:00
5da333af44 snappyHexMesh: Removed unused references 2019-01-04 10:01:17 +00:00
a33b4812b1 localEulerDdt: Ensure the rSubDeltaT field is registered 2019-01-03 15:27:37 +00:00
953e725eb5 chtMultiRegionFoam: Added fvOption source to p_rgh equation
to support mass sources.

Resolves bug-report https://bugs.openfoam.org/view.php?id=3146
2019-01-02 14:42:04 +00:00
cc79578c1e etc/config.*: Updated gcc versions to the latest patch for each version
so that they compile on machines with recent glibc versions.

Note that gcc-4.8.? and gcc-4.9.? do not compile on machines with recent glibc versions.
2019-01-02 14:40:32 +00:00
70afbf01a5 dictionary::functionEntries::if(eq)Entry: New conditional statement handling in dictionary
Class
    Foam::functionEntries::if

Description
    Conditional parsing of dictionary entries.

    E.g.
    \verbatim
        U_inlet 15;

        #if #calc "${U_inlet} < 10"
            ..
        #else
            ..
        #endif
    \endverbatim

    Note:
    - only supports single line, '\' is not supported
    - condition should be readable as a \c Switch
      (supports 0,1, true, false, etc.)

Class
    Foam::functionEntries::ifeqEntry

Description
    Conditional parsing of dictionary entries.

    E.g.
    \verbatim
        a #calc "0.123";
        b 1.23e-1;

        #ifeq $a $b
            ..
        #else
            ..
        #endif
    \endverbatim

    \verbatim
    ddtSchemes
    {
    #ifeq ${FOAM_APPLICATION} simpleFoam
        default         steadyState;
    #else
        default         Euler;
    #endif
    }
    \endverbatim

    Note:
    - supports dictionary variables and environment variables
    - the two arguments should be two tokens
    - the comparison is a string comparison for any word/string/variable,
      integer comparison for two integers and floating point comparison for
      any floating point number.
    - parsing of (non)matching \c #else, \c #endif is not very sophisticated

Contributed by Mattijs Janssens
2018-12-31 18:51:25 +00:00
0c31e465be Changed tmp<pointField> construction to use the new simpler "New" method
avoiding unnecessary database registration of temporary fields
2018-12-21 19:52:16 +00:00
6dc48b62d9 Changed tmp<volField> and tmp<surfaceField> construction to use the new simpler "New" method
avoiding unnecessary database registration of temporary fields
2018-12-21 18:37:13 +00:00
d95d68d7be Removed support for ancient platforms IA64 and SGIN32 2018-12-21 18:35:20 +00:00
819eb06657 src: Changed tmp<volField> construction to use the new simpler "New" method
avoiding unnecessary database registration of temporary fields
20181221
2018-12-21 07:14:52 +00:00
d6a13f6425 Merge branch 'master' of github.com:OpenFOAM/OpenFOAM-dev 2018-12-20 18:41:52 +00:00
7db8e05b20 paraFoam: attempts to launch ParaView with Mesa OpenGL if system OpenGL fails
A new "-empty" option launches ParaView without opening any files.  This enables users
to run ParaView using the paraFoam script for all data (OpenFOAM or otherwise), making
use of the automatic launching with Mesa if system OpenGL fails.

To view OpenFOAM case files, run "paraFoam".
To view other data files, run "paraFoam -empty" and open the files within ParaView.
2018-12-20 18:40:56 +00:00
2fada7886a GeometricFields: Removed registration of temporary fields 2018-12-20 15:25:41 +00:00
942d9d1515 DimensionedField: Temporary fields are no longer registered on the database by default 2018-12-20 15:24:46 +00:00
146a59e46c GeometricField: Temporary fields are no longer registered on the database by default
Registration occurs when the temporary field is transferred to a non-temporary
field via a constructor or if explicitly transferred to the database via the
regIOobject "store" methods.
2018-12-20 11:00:37 +00:00
6faadcb45c Removed the unnecessary ".0" from dimensionedScalar constructors 2018-12-19 14:24:41 +00:00
2f7f0a2f11 GeometricField: Changed "New" method to take a name argument instead of using the name of the dimensionedType 2018-12-19 13:56:30 +00:00
b55c176eb8 DimensionedField: Added "New" methods to return unregistered temporary fields 2018-12-19 13:55:09 +00:00
3708da6175 dimensionedType: Added constructor from dimensions and value
The name is generated from the value.
2018-12-19 13:54:30 +00:00
60e4b0b60e waveAtmBoundaryLayerSuperposition: Fixed typo in header documentation 2018-12-19 13:37:43 +00:00