Commit Graph

2325 Commits

Author SHA1 Message Date
5bb8b91df7 coordinateSystems::cylindrical: Added special handling for cell centres on the axis 2019-04-17 11:06:51 +01:00
bdd6174de6 decomposePar: Corrected flux-flipping for cases renumbered in parallel 2019-04-15 18:53:06 +01:00
6a6ef95e84 masterUncollatedFileOperation: Trigger caching of times to ensure consistency across processors
Allows global status of unwatchedIOdictionary to be reinstated.

Patch contributed by Mattijs Janssens
2019-04-12 22:16:11 +01:00
3cbb932be8 Added support for patch manipulation of pointFields
e.g. during createBaffles

Added a test application and test case for meshTools: test/fvMeshTools

Patch contributed by Mattijs Janssens
2019-04-12 18:44:32 +01:00
181f110a2f IOobject: Transfer all "global" handling to regIOobject
Remove regIOobject::masterOnlyReading
2019-04-09 14:37:03 +01:00
e7492a8624 IOobject,regIOobject: Rationalised global() and globalObject() 2019-04-08 20:37:15 +01:00
ba7e19c885 Pstreams/exchange: Removed duplicate line
Resolves bug-report https://bugs.openfoam.org/view.php?id=3217
2019-04-08 20:36:12 +01:00
1227417a9b decomposePar: Corrected addressing of flipped faces for cases renumbered in parallel
Patch contributed by Mattijs Janssens
2019-04-05 17:32:43 +01:00
2f3d47ad7e Residuals: New MeshObject class to store solver performance residuals
This is more efficient and modular than the previous approach of storing the
residuals in the mesh data dictionary.
2019-04-04 19:08:08 +01:00
28cebf7020 surfaceNormalUniformFixedValueFvPatchVectorField: New vector boundary condition
Description
    Surface-normal fixed value vector boundary condition

    in which the vector field is obtained by scaling the patch normals
    by the evaluated scalar Function1 provided.

Usage
    \table
        Property     | Description             | Required    | Default value
        uniformValue | uniform value           | yes         |
    \endtable

    Example of the boundary condition specification:
    \verbatim
    <patchName>
    {
        type            surfaceNormalUniformFixedValue;
        uniformValue    constant -0.2;         // 0.2 INTO the domain
    }
    \endverbatim

Note
    Sign conventions:
    - the value is positive for outward-pointing vectors
2019-04-03 17:32:44 +01:00
44742d235e reconstructPar: Add support for reconstructing surfaceVectorFields
Resolves bug-report https://bugs.openfoam.org/view.php?id=2832
2019-04-01 22:56:27 +01:00
51247eec60 mesh::data: Use a DynamicList for the performance data for efficiency 2019-04-01 18:13:15 +01:00
7cf6c4ea47 specieCoeffs: Added comment 2019-04-01 18:13:03 +01:00
2dd53c898a turbulenceModels/laminar/Giesekus: Giesekus model for visco-elasticity
Implementation of the Giesekus model for visco-elasticity, derived from the new
generalised form of the Maxwell model which now support additional sources.

    Giesekus, H., 1982.
    A simple constitutive equation for polymer fluids based on the
    concept of deformation-dependent tensional mobility.
    J. Non-Newton. Fluid. 11, 69–109.

This implementation is instantiated for incompressible, compressible and VoF
two-phase flow.
2019-03-28 22:10:59 +00:00
87d3d2d3d0 LES::dynamicKEqn: Rationalised the calculation of KK
Resolves bug-report https://bugs.openfoam.org/view.php?id=3207
2019-03-27 16:28:56 +00:00
9bf34679bd buoyantBoussinesq[SP]impleFoam: replaced by the more general buoyant[SP]impleFoam solvers
With the selection of the Boussinesq equation of state the general buoyancy
solvers buoyantSimpleFoam and buoyantPimpleFoam can be used instead of the
specialised Boussinesq solvers avoiding the need for special implementation of
thermal and pressure boundary conditions and providing support for radiation and
fvOptions which would not have been feasible or practical in the Boussinesq
solvers.

Other incompressible equations of state are also supported; for most gaseous
problems the incompressiblePerfectGas equation of state is likely to be more
accurate than the Boussinesq equation of state.

The buoyantBoussinesq[SP]impleFoam tutorials have been updated and moved to the
corresponding buoyant[SP]impleFoam directories.
2019-03-26 21:42:14 +00:00
12c4abe3ba dynamicFvMesh: Replaced the hard-coded "U" boundary correction to an optional list
In the latest generation of solvers supporting mesh-motion using Uf to correct
phi it is no longer necessary to correct the velocity field boundary conditions
directly following mesh motion so the "velocityFields" input list in
dynamicMeshDict is optional and only provided to support legacy "DyM" solvers
and defaults to an empty list.
2019-03-21 15:11:41 +00:00
a1a225c504 dynamicFvMesh: Rationalised the handling and caching of the dynamicMeshDict
The base dynamicFvMesh now reads and stores the dynamicMeshDict and motion
solver receive it as a constructor argument.

Also rationalised the motionSolver diffusivity classes in which storing the
faceDiffusivity field provided no advantage; now it is created and returned on
demand.
2019-03-21 10:58:31 +00:00
5a978bbc65 surfaceInterpolation::makeWeight: improve handling of very small faces
If division by the face area might cause an overflow use the cell-face distances
directly to calculate the weights.
2019-03-19 20:27:55 +00:00
f0c3c497e7 blockMeshMerge: Changed the mergeSqrDist slightly to compensate for the change SMALL -> small
Resolves bug-report https://bugs.openfoam.org/view.php?id=3203
2019-03-19 16:38:37 +00:00
52225b96ab CorrectPhi: Added switch to control evaluation of U boundary conditions
This switch should be on for phi-correction within the time loop, where
the correction simply serves to keep the phi-field up to date before the
U-equation is solved. It should be off for initialisation
phi-correction, as the necessary data to update the conditions may not
yet exist.

Resolves bug report https://bugs.openfoam.org/view.php?id=3198
2019-03-18 16:02:25 +00:00
becf7d2905 Function1: Improved error messages when evaluation or integration are undefined 2019-03-15 14:09:51 +00:00
4519f47ab8 phasesScalarTransport: Corrected compressible fvOptions usage 2019-03-15 08:49:39 +00:00
081db9a350 lagrangian: drag: Various improvements
The dense drag models (WenYu, ErgunWenYu and PlessisMasliyah) have been
extended so that they can create their own void-fraction field when one
is not otherwise available.

The duplicated functionality in the drag models has been generalised and
is now utilised by multiple models.

References have been added for all models for which they could be found.
In addition, an additional drag model, SchillerNaumann, has been added.
This is of the same form as sphereDrag, and is designed for the same
scenario; sparsely distributed spherical particles. The SchillerNaumann
form is more widely referenced and should now be considered standard.

The thermo-parcel-specific force instantiation macro has been removed,
as all the force models are now possible to use with all parcel types.

Resolves bug report https://bugs.openfoam.org/view.php?id=3191
2019-03-15 08:49:39 +00:00
d41166187a writeEntry: Rationalised for consistency, ease of use and maintainability
The writeEntry form is now defined and used consistently throughout OpenFOAM
making it easier to use and extend, particularly to support binary IO of complex
dictionary entries.
2019-03-14 20:54:10 +00:00
fec55234b6 LangmuirHinshelwoodReactionRate: Removed unused species_ member 2019-03-12 17:28:51 +00:00
d6f6747d63 PrimitivePatch: Added Istream constructor and iNew 2019-03-12 17:28:03 +00:00
23d7371592 CompactIOList: Derived from ListCompactIO to reuse the steam IO 2019-03-12 17:26:19 +00:00
64b7793422 ListCompactIO: Separated the stream IO functions from CompactIOList
as a separate class.
2019-03-12 17:24:30 +00:00
6b5f0928e5 UPtrList: Added writeEntry and writeEntryList
to write the list as a dictionary entry.  Consistent with the equivalent
functions in UList.
2019-03-12 17:23:19 +00:00
59b533e961 UList: Added writeEntryList
for writing list-lists dictionary entries efficiently in binary.
2019-03-12 17:21:49 +00:00
9a22110c14 rigidBodyState: Added compilation to src/Allwmake 2019-03-08 09:07:35 +00:00
88bea2740c data: Reset solver data only when non-sub cycled time index changes
Resolves bug report https://bugs.openfoam.org/view.php?id=3189
2019-03-07 16:23:33 +00:00
5e7c0aaac1 swirlFlowRateInletVelocityFvPatchVectorField: Added reduction to patch size
Resolves bug-report https://bugs.openfoam.org/view.php?id=3185
2019-03-05 12:07:19 +00:00
b5e27b7a9d polyMesh/particle: Optionally store old-cell centres
The moving-mesh tracking algorithm needs the cell-centres at the
previous time-step. These were not originally stored by the polyMesh, so
they were being generated on-the-fly. In some tracking-dominated cases
this caused an unacceptable overhead.

The polyMesh now stores the old-time cell-centres on demand. They are
not stored by default (like the old-time points), so if they are needed
then the accessor should be called before any mesh motion. Typically
this will be during construction of whatever functionality requires it.
See Cloud.C for an example.

The logic for storage and update of the old-time points has also been
improved to account for the possibility of the mesh motion coming to an
end.
2019-03-04 08:59:24 +00:00
d399b83f08 rigidBodyState: New functionObject which writes the state of the rigid body model
It is the rigidBody equivalent of the sixDoFRigidBodyState functionObject.

    Example of function object specification:
    rigidBodyState
    {
        type           rigidBodyState;
        libs           ("librigidBodyState.so");
        angleFormat    degrees;
    }

Based on patch contributed by SeongMo Yeon
Resolves patch request https://bugs.openfoam.org/view.php?id=3180
2019-03-01 13:49:08 +00:00
5c8b15d49d sixDoFRigidBodyState: Minor clean-up 2019-03-01 13:48:52 +00:00
58019d64f9 rigidBodyMeshMotion, rigidBodyMeshMotionSolver: Derive from RBD::rigidBodyMotion
Provides easy access to the state of the rigid body model.
2019-03-01 13:48:02 +00:00
b294ab1d7c rigidBodyModel: Added movingBodyNames() member function
which returns the list of names of the moving bodies in the model.
2019-03-01 13:47:22 +00:00
e68246b392 Revert "rigidBodyModel: Added movingBodyNames() member function"
This reverts commit a395752fa8.
2019-03-01 13:45:43 +00:00
a395752fa8 rigidBodyModel: Added movingBodyNames() member function
which returns the list of names of the moving bodies in the model.
2019-03-01 13:44:01 +00:00
f60147fc11 waveDisplacementPointPatchVectorField: Added spacial and temporal ramping 2019-02-26 09:40:32 +00:00
9038895701 swirlInletVelocityFvPatchVectorField: Minor correction to documentation 2019-02-26 09:40:11 +00:00
850a347b69 Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2019-02-25 11:34:40 +00:00
fa33e8e198 blockMesh: Added printing of cell edge lengths for distorted blocks 2019-02-25 11:33:46 +00:00
7f09e1901d CloudFunctionObjects: Added relativeVelocity
This cloud function object will write out a lagrangian field of the
relative velocity between the parcels and the surrounding fluid. It
does not have any additional controls.
2019-02-25 09:31:32 +00:00
190dd33576 externalWallHeatFluxTemperature: Changed relaxation strategy
Now uses previous valueFraction and refValue values rather than the previous
boundary temperature for relaxation.

Resolves bug-report https://bugs.openfoam.org/view.php?id=3175
2019-02-22 12:34:38 +00:00
2433fe950c Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2019-02-21 13:58:45 +00:00
b162c4818b ddtScheme::fvcDdtPhiCoeff: Reverted to previous flux-normalised scheme
The current Courant number limited formulation is preferable for cases running
with VERY small Courant numbers but there are stability issues with it on some
cases for which the previous flux-normalised scheme worked well.  Overall the
previous scheme has proved more reliable and fvcDdtPhiCoeff has been reverted to
it pending further research and development in this area which will require
funding:

https://openfoam.org/news/funding-2019/
https://openfoam.org/maintenance/
2019-02-21 13:54:41 +00:00
d7a5456aae convergenceControl: Store solve index per-field not per-entry
Resolves bug report https://bugs.openfoam.org/view.php?id=3173
2019-02-20 14:23:09 +00:00