Commit Graph

15257 Commits

Author SHA1 Message Date
839f14afcd ENH: Code clean-up 2016-09-30 12:30:02 +01:00
64560defc5 ENH: wallDist - suppress calc if updateInterval is zero 2016-09-30 11:47:38 +01:00
bd0e982d99 MRG: Initial commit after latest Foundation merge 2016-09-30 11:16:28 +01:00
1e00bd7f45 GIT: resolve merge errors to ddt2, zeroGradient functionObjects
- the function objects are from issue #224 and issue #235
2016-09-30 11:26:58 +02:00
f3888f0a2a Merge branch 'merge-foundation' of develop.openfoam.com:Development/OpenFOAM-plus into merge-foundation 2016-09-29 16:24:12 +01:00
60d7a71eaf STYLE: forceCoeffs - minor code updates 2016-09-29 16:24:08 +01:00
aa78b03011 ENH: functionObjects - do not add to list if error on read 2016-09-29 16:19:15 +01:00
6d380dddf6 ENH: Updated kOmegaSST family of models 2016-09-29 11:40:30 +01:00
6645d6d1cd STYLE: Added header documentation to function 2016-09-29 10:30:30 +01:00
5c921caa55 fvOptions: Corrected docs: 'fieldName' -> 'fields'
Resolves bug-report http://bugs.openfoam.org/view.php?id=2273
2016-09-28 19:42:07 +01:00
3c790e2316 Correcting Typo in SolarLoad radiation model 2016-09-28 10:42:21 -07:00
5c4bd557cb ENH: wallDist - added option to evaluate every XXX steps 2016-09-28 16:59:57 +01:00
95c74f9b93 Merge branch 'develop' of develop.openfoam.com:Development/OpenFOAM-plus into develop 2016-09-28 12:26:58 +01:00
1c2aadb8d8 ENH: distributedTriSurfaceMesh: bail out if getting stuck due to precision errors 2016-09-28 12:26:23 +01:00
6d7ff59fc8 ENH: provide refOrNull method for autoPtr.
- Normally use '()' to deference. This has extra safety and issues a
  fatal error if the underlying pointer is not valid.

  However, in some cases we are happy with getting a null reference.
  The refOrNull() method returns the reference without any checking.

  Usage example:

      autoPtr<OFstream> osPtr;
      if (Pstream::master())
      {
          osPtr.reset(new OFstream(...));
      }
      writeViaMaster(osPtr.refOrNull());

      - The writeViaMaster() call takes an OFstream reference,
        but this is only used directly on the master.
        The slaves will pass things through to the master.
2016-09-28 11:26:42 +02:00
3dbd39146c STYLE: consistency updates 2016-09-27 15:17:55 +01:00
df9d406816 ENH: add in code for ensightCells, ensightFaces
- intended as a base for various ensight-related handling
2016-09-27 13:38:43 +02:00
bbec683e42 ENH: provide list of enums for NamedEnum
- can be used to loop over all enumerations in the order of definition.
2016-09-27 12:40:17 +02:00
c9cf232a02 ENH: add some convenience methods in ensightFile, ensightGeoFile
- Some commonly used write methods that are independent of
  the calling context (ie, 2D/3D data, geometry, fields)

- Provide singleton null() for ensightFile, ensightGeoFile.
  Can be used for MPI slaves that need a file reference for their
  methods, but will never write to it, but it is also reasonable
  to use an autoPtr with rawRef() for that as well.
2016-09-27 10:08:07 +02:00
405210a4f2 STYLE: relocate commonly used ensight components to fileFormats
- use explicit names within ensightPTraits
2016-09-27 09:02:35 +02:00
47eb24bed5 GIT: Resolved conflicts arising from merge with develop branch 2016-09-26 10:57:34 +01:00
ad1e798293 ENH: Initial testing updates 2016-09-26 09:28:31 +01:00
a2a6fedf9f blockMesh::blockDescriptor: Added block indexing description 2016-09-25 18:38:31 +01:00
1649b57a40 processorFvPatchField: If the value is not supplied set to the internal field 2016-09-25 18:38:06 +01:00
dc59c63351 processorFvPatchField: Reinstate 'value' as an optional entry 2016-09-25 16:54:20 +01:00
b6feaea53b fvPatchFields: Constructors from dictionary now call the corresponding constructor of the fvPatchField base-class
to ensure 'patchType' is set as specified.

Required substantial change to the organization of the reading of the
'value' entry requiring careful testing and there may be some residual
issues remaining.  Please report any problems with the reading and
initialization of patch fields.

Resolves bug-report http://bugs.openfoam.org/view.php?id=2266
2016-09-25 09:11:53 +01:00
93530f1747 blockMesh: Added support for (<block> <face>) specification of patch faces
e.g. for the cavity tutorial the moving wall patch can be specified in
terms of the block vertices as before:

boundary
(
    movingWall
    {
        type wall;
        faces
        (
            (3 7 6 2)
        );
    }
    .
    .
    .

or the new specification of the face as block 0, block face 3:

boundary
(
    movingWall
    {
        type wall;
        faces
        (
            (0 3)
        );
    }
2016-09-24 08:40:13 +01:00
1fbcb686ff STYLE: Consistency updates 2016-09-23 16:52:46 +01:00
b9940cbbb1 COMP: Multiple changes - first clean build after latest merge - UNTESTED 2016-09-23 15:36:53 +01:00
3503c872a5 STYLE: add OpenFOAM version to ensight geom file description.
- More informative than a horizonal line, can help when debugging.

STYLE: remove unused write field methods from ensightParts
2016-09-23 14:53:01 +02:00
3c25f26aab BUG: incorrect symmTensor order for some ensight output (fixes #243)
- affects foamToEnsightParts, sampled surfaces

- Use ensightPTraits mechanism throughout to avoid this issue
2016-09-23 09:10:57 +02:00
f066a9b54e Updated template formatting
Resolves bug-report http://bugs.openfoam.org/view.php?id=2264
2016-09-22 21:03:30 +01:00
447cdc2098 globalMeshData: Revert NULL -> nullptr 2016-09-22 14:22:26 +01:00
c0f841e4f7 globalIndexAndTransform: Support any number of transforms but no more than 3 per point
Patch contributed by Mattijs Janssens
Resolves bug-report http://bugs.openfoam.org/view.php?id=1815
2016-09-22 14:10:45 +01:00
9e1e9011a5 decomposePar: Corrected construction of cloud for processors
Resolves bug-report http://bugs.openfoam.org/view.php?id=2239
2016-09-21 17:19:58 +01:00
481f8e5b97 linearUpwind: Simplified the vector specialization 2016-09-21 11:09:59 +01:00
bd0b363292 linearUpwind: Specialize for volVectorField to support cached gradients 2016-09-21 09:50:49 +01:00
1d08519d6e linearUpwind: Evaluate the gradient of each component of the field to provide support all field types
Also reduces peak-storage as it now generates a volVectorField for each component
rather than the gradient of the field type.
2016-09-20 21:34:47 +01:00
9da9a78cee turbulentTransportModels: Add new Maxwell model 2016-09-20 21:11:41 +01:00
bb3c0c3593 Maxwell model for viscoelasticity using the upper-convected time
derivative of the stress tensor.  See
http://en.wikipedia.org/wiki/Upper-convected_Maxwell_model

The model includes an additional viscosity (nu) from the transport
model from which it is instantiated, which makes it equivalent to the
Oldroyd-B model for the case of an incompressible transport model.
See https://en.wikipedia.org/wiki/Oldroyd-B_model
2016-09-20 18:38:15 +01:00
6b42dbae41 TurbulenceModels: Created a general base-class and selection mechanism for laminar stress models
Renamed the original 'laminar' model to 'Stokes' to indicate it is a
linear stress model supporting both Newtonian and non-Newtonian
viscosity.

This general framework will support linear, non-linear, visco-elastic
etc. laminar transport models.

For backward compatibility the 'Stokes' laminar stress model can be
selected either the original 'laminar' 'simulationType'
specification in turbulenceProperties:

    simulationType laminar;

or using the new more general 'laminarModel' specification:

    simulationType laminar;

    laminar
    {
        laminarModel        Stokes;
    }

which allows other laminar stress models to be selected.
2016-09-20 15:05:43 +01:00
9fbd612672 GIT: Initial state after latest Foundation merge 2016-09-20 14:49:08 +01:00
4dc06c656d BUG: output field name instead of field (fixes #224) 2016-09-20 15:15:19 +05:30
3aa78f2bf3 blockMesh: Added block face orientation checks to aid debugging
Individual inward-pointing faces are checked and if all faces are
inward-pointing the block is inside-out.  These errors are fatal and the
message indicates which block the error occurs in and where in the
blockMeshDict the block is defined.
2016-09-19 07:52:42 +01:00
899fe81eba PatchToPatchInterpolate: Update to use the tmp ref() non-const access function
Resolves bug-report http://bugs.openfoam.org/view.php?id=2248
2016-09-16 14:49:50 +01:00
b4d83b8f83 ENH: more flexible selection/naming for ddt2 FO (issue #224)
- bugfix (empty patches), and added detection of steady-state
  scheme.

Caveat: when called via execFlowFunctionObjects will always produce a
  zero field, since the oldTime field is not available for this mode.
2016-09-16 14:49:47 +02:00
3008d80bc7 ENH: runTime calculation of zeroGradient volume fields (issue #235)
Extrapolate internal field to walls for post-processing.
Uses as new syntax for handling the naming of multiple fields.

The input fields are selected via a wordReList.
For example,

    fields      (U "(T|k|epsilon|omega)");

The names of the resulting output fields use placeholder tokens for
flexibility. For example,

    result      zeroGradient(@@);

The '@@' placeholder is replaced by the name of the input field.
Eg,
    fields      (U T);
    result      zeroGradient(@@);
->  zeroGradient(U), zeroGradient(T)

Or,
    fields      (U T);
    result      @@nearWall;
->  UnearWall, TnearWall

NOTE:
    The function object will skip over fields that only have
    processor, empty, zeroGradient patches. The operation does not
    make much sense for these, and it avoids inadvertently
    re-processing fields twice.
2016-09-16 21:33:40 +02:00
7cc35abc3a GAMGAgglomeration: corrected continueAgglomerating
Patch provided by Mattijs Janssens
Resolves bug-report http://bugs.openfoam.org/view.php?id=2226
2016-09-16 11:10:03 +01:00
f281477d85 rigidBodyMotion: Change the transform averaging to use approximate inverse-distance weighting
Now works correctly for an arbitrary number of bodies
Resolves bug-report http://bugs.openfoam.org/view.php?id=2211
2016-09-14 14:14:14 +01:00
d3d693e17c ENH: runTime calculation of (dp/dt)^2 - issue #224
- implemented using magSqr() instead of sqr().
  For scalar fields they are the same, but can be useful
  if this function object is extended for more field types.
2016-09-14 14:02:40 +02:00