Commit Graph

2007 Commits

Author SHA1 Message Date
fd08eae933 Replaced mplib with mplibDummy for consistency with the dummy Pstream 2018-08-16 21:11:40 +01:00
583043b0e3 Moved -lpthread to wmake/rules/General/mplib 2018-08-16 13:30:04 +01:00
bce53f1758 Rationalising the mplib files and reinstating support for compiling without MPI 2018-08-16 12:26:16 +01:00
f5dd712c84 localEulerDdtScheme: Added fvcDdtPhiCoeff calculated from the local time-step
For cases where the time-step varies in space ddtCorr is not needed with LTS but
in regions where the time-step is uniform it may be required.  This change
ensures that the localEuler scheme operates equivalently to Euler in regions and
for cases where the time-step is uniform.

Addresses report https://bugs.openfoam.org/view.php?id=3020
2018-08-15 14:40:43 +01:00
925e6b5b02 particleForces: New scaled force, and optional alternate syntax
In addition to the current syntax, particle forces can now also be
specified with a named dictionary and a type entry. This allows multiple
forces of the same type to be used. For example:

    particleForces
    {
        // Existing syntax. The model typename, either on it's own
        // or heading a dictionary of model parameters.

        gravity;

        ErgunWenYuDrag
        {
            alphac alpha.air;
        }

        // New syntax. An arbitrary name, followed by a dictionary
        // containing a type entry, and any model parameters.

        gravity2
        {
            type gravity;
        }

        drag2
        {
            type ErgunWenYuDrag;
            alphac alpha.air;
        }
    }

A scaled force has also been added. This is a wrapper around another
particle force model, and applies a scaling factor to the force value.
It can be used to tune the models, or to blend two or more models.

    particleForces
    {
        // Tuning the simulation by reducing the pressure gradient force

        scaled1
        {
            type scaled;
            factor 0.94;
            forceType pressureGradient;
            U U;
        }

        // Blending two drag models

        scaled2
        {
            type scaled;
            factor 0.2;
            forceType sphereDrag;
        }

        scaled3
        {
            type scaled;
            factor 0.8;
            forceType ErgunWenYuDrag;
            alphac alpha.air;
        }
    }

This work was supported by Moritz Hoefert, at Evonik
2018-08-15 10:39:24 +01:00
9a437d5743 LangmuirHinshelwoodReactionRate: Added support for arbitrary powers of concentration in the denominator
and the "1" constant in the denominator is now an optional input to provide
greater flexibility of the model.
2018-08-13 16:10:14 +01:00
f18a771184 timeSelector: Removed unused select function 2018-08-12 19:04:14 +01:00
df4d9de0d3 LangmuirHinshelwoodReactionRate: Corrected specie "A" and "B" lookup 2018-08-09 14:14:48 +01:00
5cf8d63a1d wallHeatTransferCoeff: Avoid holding references to temporary fields 2018-08-09 10:52:07 +01:00
03c56a1449 wallHeatFlux: Avoid holding references to temporary fields 2018-08-08 18:37:08 +01:00
8c152cbc38 functionObjects: Generating and storing fields on demand rather than on construction
Resolves bug report https://bugs.openfoam.org/view.php?id=3019
2018-08-06 09:31:07 +01:00
f7100178e4 thermophysicalModels: Added laminar thermal diffusivity for energy, alphahe
Needed for laminar transport of he (h or e)

Resolves bug-report https://bugs.openfoam.org/view.php?id=3025
2018-08-05 11:29:28 +01:00
f09f526e1e GeometricField: Removed old-time reading from dictionary constructor
Resolves bug-report https://bugs.openfoam.org/view.php?id=3024
2018-08-03 21:21:14 +01:00
f3c2b2a899 Pair: Include an unused return to avoid compiler warning 2018-08-03 12:05:47 +01:00
8662f99ac1 Corrected typos in comments
Resolves bug-report https://bugs.openfoam.org/view.php?id=3017
2018-07-31 17:11:21 +01:00
429c4188db rigidBodyDynamics::compositeJoint: Reinstated setLastJoint joint assignment
Resolves bug-report https://bugs.openfoam.org/view.php?id=3016
2018-07-31 15:28:21 +01:00
b4a00c12ca sixDoFRigidBodyControl: functionObject to stop the run when the body motion converges
Description
    Convergence control based on the 6-DoF motion state.

    The body linear and angular velocities are averaged over a specified time
    window and compared to specified velocity convergence criteria and the run
    stopped after writing the current time results, if the criteria are met.

    Example of function object specification:
    \verbatim
    sixDoFRigidBodyControl
    {
        type           sixDoFRigidBodyControl;
        libs           ("libsixDoFRigidBodyState.so");

        angleFormat    degrees;

        window                      1;
        convergedVelocity           (1e-2 1e-2 1e-2);
        convergedAngularVelocity    (5 5 5);
    }
    \endverbatim

    Note the units of the \c convergedAngularVelocity are specified by the \c
    angleFormat entry.

Usage
    \table
    Property     | Description                       | Required | Default value
    type         | Type name: sixDoFRigidBodyControl | yes      |
    angleFormat  | Degrees or radians                | no       | radian
    window       | Averaging window                  | yes      |
    convergedVelocity | Linear velocity convergence criterion         | yes |
    convergedAngularVelocity | Angular velocity convergence criterion | yes |
    \endtable
2018-07-30 21:49:02 +01:00
34f0cae5a3 interpolatingSolidBodyMotionSolver: New solid-body mesh-motion solver which intepolates the motion
Description
    Solid-body motion of the mesh specified by a run-time selectable motion
    function.  Applies SLERP interpolation of movement as function of
    distance to the object surface to move the mesh points.
2018-07-26 16:15:37 +01:00
d627582dd6 combustionModel: Removed the deprecated "active" switch.
To switch-off combustion choose the "noCombustion" model selected with the name
"none" in the combustionProperties file:

combustionModel none;
2018-07-26 10:55:10 +01:00
932e0176e7 dictionary::functionEntries::negEntry: new function to negate a dictionary variable
E.g. in a velocity field file:

    Umean 5.75;
    .
    .
    .
    inlet
    {
        type            uniformFixedValue;
        uniformValue    (#neg $Umean 0 0);
    }
2018-07-26 10:52:16 +01:00
ab31777e9c radiation: Removed the redundant "radiation off" switch from radiationProperties
To switch-off radiation set

    radiationModel  none;

in radiationProperties which instantiates "null" model that does not read any
data or coefficients or evaluate any fields.
2018-07-25 08:10:30 +01:00
9cf8078fef cubicEqn, quadraticEqn: Correction to repeated roots
Also extended the cubic equation test routine and modified the error
methods so that they more accurately generate the round of error of
evaluation.

This resolves bug report https://bugs.openfoam.org/view.php?id=3015
2018-07-24 16:08:59 +01:00
fbec30c9fb HashSet: Added construct from FixedList 2018-07-24 15:56:04 +01:00
b47ed15d5e particle: Made wallData purely geometric on moving meshes
This removes a possible inconsistency in the motion at walls, preventing
certain types of infinite loop being entered.
2018-07-24 15:56:04 +01:00
35dd88e553 particle: Improvements to tracking across AMIs
The projection direction has been corrected to include the effect of
mesh motion. The case where the source and receiving faces are of
differing orientations and the particle displacement points into both is
now detected and handled.
2018-07-24 15:56:04 +01:00
b08d6a2556 ListOpsTemplates::inplaceMapValue: Updated to support List 2018-07-24 11:47:32 +01:00
a6f2053518 particle: Consistent return value from all track methods 2018-07-23 09:08:18 +01:00
88070d62cb Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2018-07-23 08:56:37 +01:00
a711cd45d1 solidificationMeltingSource: trivial reformatting of documentation
Resolves report https://bugs.openfoam.org/view.php?id=3010
2018-07-23 08:55:53 +01:00
52a6a0888e CloudFunctionObjects/ParticleErosion: Corrected field name 2018-07-19 10:32:03 +01:00
8fca751b79 CloudFunctionObjects/ParticleErosion: Added documentation 2018-07-19 09:21:45 +01:00
aea61ccdbf AMI: Un-templated the interpolation and method classes
AMI interpolation is only ever constructed between sets of primitive
patches, so templating on the patch type is unnecessary. Templating in
this instance is undesirable; it makes type type/debug/selection system
more complex and increases the number and compilation times of files
which need recompiling when code is modified.
2018-07-18 14:49:11 +01:00
9d185f2cb1 POSIX: Unifying checking for ".gz" and ".orig" variants 2018-07-17 16:53:21 +01:00
a9cdfa0f4e dynamicAlphaContactAngleFvPatchScalarField: Added support for alternative direction convention
Description
    A dynamic alphaContactAngle scalar boundary condition

Usage
    Standard properties:
    \table
        Property | Description                      | Required | Default value
        theta0   | Equilibrium contact angle        | yes      |
        uTheta   | Velocity scale                   | yes      |
    \endtable

    The advancing and receding contact angles can be either specified with
    respect to the interface normal direction:
    \table
        Property | Description                      | Required | Default value
        thetaA   | Limiting advancing contact angle | yes      |
        thetaR   | Limiting receding contact angle  | yes      |
    \endtable

    or with respect to the phase outward direction:
    \table
        Property | Description                      | Required | Default value
        thetaAdv | Limiting advancing contact angle | yes      |
        thetaRec | Limiting receding  contact angle | yes      |
    \endtable

    Example of the boundary condition specification using the interface
    normal direction convention:
    \verbatim
    <patchName>
    {
        type           dynamicAlphaContactAngle;
        uTheta         1;
        theta0         90;
        thetaA         70;
        thetaR         110;
        limit          gradient;
        value          uniform 0;
    }
    \endverbatim

    Example of the boundary condition specification using the phase outward
    direction convention (opposite to the normal direction):
    \verbatim
    <patchName>
    {
        type           dynamicAlphaContactAngle;
        uTheta         1;
        theta0         90;
        thetaAdv       110;
        thetaRec       70;
        limit          gradient;
        value          uniform 0;
    }
    \endverbatim

Resolves feature request https://bugs.openfoam.org/view.php?id=2864
2018-07-17 14:03:38 +01:00
669935efd6 LangmuirHinshelwoodReactionRate: corrected, rationalized and generalized
to an arbitrary pair of reacting species.

Description
    Langmuir-Hinshelwood reaction rate for gaseous reactions on surfaces.

    Reference:
    \verbatim
        Hinshelwood, C.N. (1940).
        The Kinetics of Chemical Change.
        Oxford Clarendon Press
    \endverbatim
2018-07-12 18:16:22 +01:00
d75d045039 sampledSet/lineFace: Added error message 2018-07-12 11:00:03 +01:00
95cf9666e7 particle: Added some extra debugging statements 2018-07-12 09:11:21 +01:00
23d523d9bf ThermoCloud: Corrected counter data type
Resolves bug report https://bugs.openfoam.org/view.php?id=2999
2018-07-12 08:56:27 +01:00
20653ee01e semiPermeableBaffle: Added mole-fraction and partial-pressure input options
The semiPermeableBaffleMassFraction boundary condition can now calculate
the mass flux as proportional to the difference in mole fraction or
partial pressure. A mass fraction difference driven transfer is also
still possible. An additional keyword, "input" has been added which is
used to select the variable used to calculate the transfer. An example
specification is as follows:

    baffle
    {
        type            semiPermeableBaffleMassFraction;
        samplePatch     membranePipe;
        c               0.1;
        input           massFraction;
        value           uniform 0;
    }

In order to facilitate this, a "W" method to get the molar mass on a
patch has been added to the thermodynamics. To avoid name-clashes,
methods that generate per-species molar masses have been renamed "Wi".

This work was supported by Georg Skillas, at Evonik
2018-07-11 10:08:44 +01:00
e0cf9706ca Merge branch 'mergeDyM' 2018-07-11 09:48:17 +01:00
5ed4fe7017 Updated web-links 2018-07-10 21:30:42 +01:00
29fc94d3e2 Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev into mergeDyM 2018-07-10 20:10:01 +01:00
fdbf3c134f Rationalized dictionary and configuration file headers 2018-07-09 15:40:05 +01:00
bf54ab67e1 Updated OpenFOAM Foundation web-link in headers 2018-07-06 21:42:54 +01:00
867bb83891 fileOperation: Corrected findInstance
Patch contributed by Mattijs Janssens
2018-07-06 11:32:45 +01:00
fcef3ed3c9 moleFractionsFunctionObjects.H: Corrected documentation 2018-07-06 10:38:22 +01:00
0af5c9061f DPMFoam: Merged with DPMDyMFoam
DPMFoam can now run with static or dynamic meshes selected in the
constant/dynamicMeshDict dictionary.
2018-07-05 10:25:51 +01:00
6c6ab41e66 RBD: Corrections to 0-DOF joints 2018-07-02 12:56:10 +01:00
eb1420ec03 Reactions: Improved documentation for member functions 2018-06-30 11:57:27 +01:00
914512f13f NonEquilibriumReversibleReaction: Return beta for the forward rather than reverse reaction 2018-06-30 11:56:52 +01:00