Commit Graph

17194 Commits

Author SHA1 Message Date
1c48d056e6 tmp, autoPtr: Provide a typedef 'Type' to the stored type 2016-05-21 13:55:47 +01:00
03c497f6df Updated header 2016-05-19 09:40:29 +01:00
bf14e44bb3 Updated code comments 2016-05-19 09:40:17 +01:00
f2432865b5 Scalar: Documented 'posPart' and 'negPart' 2016-05-19 09:39:45 +01:00
83c7e97655 dynamicCode: Renamed 'redirectType' to 'name' to clarify the purpose
of the entry which is to provide the name of the generated class.

'redirectType' is supported for backward-compatibility.
2016-05-18 23:10:42 +01:00
7af20fd9db IOOutputFilter: Updated the signature of the 'write' function to correspond to the new functionObject 2016-05-18 23:09:26 +01:00
67de20df25 Further standardization of loop index naming: pointI -> pointi, patchI -> patchi 2016-05-18 21:20:42 +01:00
ac632e7984 functionObjects: minor reformatting of output 2016-05-18 13:37:08 +01:00
5af1a7e4f3 functionObjects::partialWrite: Redundant and removed
the equivalent functionality is provided by the writeRegisteredObject
   functionObject in a MUCH simpler, easier and extensible manner.

functionObject: Removed the now redundant 'timeSet' function.
2016-05-18 12:23:29 +01:00
354bc8bdcb dynamicCode: the "code" entry is now optional
codedFunctionObject: Added the "codeWrite" entry
    for the "write" function for consistency.
    The previous method of using the "code" entry for the "write"
    function was inconsistent and very confusing.
2016-05-18 12:20:03 +01:00
2b501b7e85 timeControlFunctionObject: Updated the control logic in the 'end' function
to correspond to the new default behavior of the 'end' function in
functionObject which now calls 'execute' then 'write'.
2016-05-18 09:05:24 +01:00
195b73e0f7 functionObject: Call 'execute' then 'write' from the default 'end' function. 2016-05-17 22:56:47 +01:00
76caf29e0b patchProbes: Corrected the signature of the write function 2016-05-17 21:49:17 +01:00
2ac07f386e patchProbes: Corrected the signature of the write function 2016-05-17 21:40:16 +01:00
f871f51970 Update loop index name probeI -> probei 2016-05-17 20:33:19 +01:00
3b63c760a9 writeRegisteredObject: Now writes the <time>/uniform/time dictionary 2016-05-17 12:36:49 +01:00
d6ce71f39a reconstructPar: Added '-noFields' option 2016-05-17 09:25:29 +01:00
cfb6d6c84e functionObjects/lagrangian/icoUncoupledKinematicCloud: Minor simplification of documentation 2016-05-17 09:24:58 +01:00
947fdf84af functionObjects::icoUncoupledKinematicCloud: tracks a uncoupled kinematic particle cloud
Description
    This Foam::functionObject tracks a uncoupled kinematic particle cloud in the
    specified velocity field of an incompressible flow (laminar, RANS or LES).

    It may be used in conjunction with any transient single-phase incompressible
    flow solver such as \c pisoFoam or \c pimpleFoam and tracks the particles or
    parcels without affecting the the flow-field.

    The \c kinematicCloud requires the the density of the fluid which is
    looked-up from \c constant/transportProperties dictionary and the
    acceleration due to gravity which is read from the \c constant/g file if
    present or defaults to zero.

    The \c kinematicCloud properties are read from the \c
    constant/kinematicCloudProperties dictionary in the usual manner.

    Example of function object specification:
    \verbatim
        tracks
        {
            libs ("liblagrangianFunctionObjects.so");
            type icoUncoupledKinematicCloud;
        }
    \endverbatim

    \heading Function object usage
    \table
        Property | Description                     | Required   | Default value
        type     | Type name: icoUncoupledKinematicCloud | yes  |
        U        | Name of the velocity field       | no        | U
        kinematicCloud | Name of the kinematicCloud | no        | kinematicCloud
    \endtable
2016-05-16 22:52:44 +01:00
fc0bdee154 dynamicCode/functionObjectTemplate: Updated and simplified by deriving from the regionFunctionObject base-class 2016-05-16 22:23:53 +01:00
1c992eba9c etc/codeTemplates/functionObject: Updated and simplified using fvMeshFunctionObject as the base-class 2016-05-16 22:16:22 +01:00
83bae2efd3 functionObjects: Renamed dictionary entry 'functionObjectLibs' -> 'libs'
This changes simplifies the specification of functionObjects in
controlDict and is consistent with the 'libs' option in controlDict to
load special solver libraries.

Support for the old 'functionObjectLibs' name is supported for backward compatibility.
2016-05-16 22:09:01 +01:00
a44857b4f2 functionObjects: Simply functionObjects requiring access to the fvMesh using fvMeshFunctionObject 2016-05-16 16:21:06 +01:00
e7fc198592 Allwmake: improved '-update' option to handle out-of-date '.dep' files
Patch contributed by Bruno Santos
Resolves bug-report http://bugs.openfoam.org/view.php?id=2091
2016-05-16 12:21:57 +01:00
fd38002d57 functionObjects: Added regionFunctionObject and fvMeshFunctionObject intermediate base-classes
to simplify writing common functionObjects and avoid unnecessary code duplication
2016-05-16 12:20:44 +01:00
ee0aff67ce etc/codeTemplates/functionObject: Updated to correspond to the new functionObject structure 2016-05-15 21:47:18 +01:00
248ab45998 Updates to script documentation
Patch contributed by Bruno Santos
Resolves text report http://bugs.openfoam.org/view.php?id=2089
2016-05-15 18:12:26 +01:00
78d2971b21 functionObjects: rewritten to all be derived from 'functionObject'
- Avoids the need for the 'OutputFilterFunctionObject' wrapper
  - Time-control for execution and writing is now provided by the
    'timeControlFunctionObject' which instantiates the processing
    'functionObject' and controls its operation.
  - Alternative time-control functionObjects can now be written and
    selected at run-time without the need to compile wrapped version of
    EVERY existing functionObject which would have been required in the
    old structure.
  - The separation of 'execute' and 'write' functions is now formalized in the
    'functionObject' base-class and all derived classes implement the
    two functions.
  - Unnecessary implementations of functions with appropriate defaults
    in the 'functionObject' base-class have been removed reducing
    clutter and simplifying implementation of new functionObjects.
  - The 'coded' 'functionObject' has also been updated, simplified and tested.
  - Further simplification is now possible by creating some general
    intermediate classes derived from 'functionObject'.
2016-05-15 16:40:01 +01:00
ce0cd35185 Patches contributed by Mattijs Janssens:
splitMeshRegions: handle flipping of faces for surface fields

subsetMesh: subset dimensionedFields

decomposePar: use run-time selection of decomposition constraints. Used to
    keep cells on particular processors. See the decomposeParDict in

$FOAM_UTILITIES/parallel/decomposePar:
  - preserveBaffles: keep baffle faces on same processor
  - preserveFaceZones: keep faceZones owner and neighbour on same processor
  - preservePatches: keep owner and neighbour on same processor. Note: not
    suitable for cyclicAMI since these are not coupled on the patch level
  - singleProcessorFaceSets: keep complete faceSet on a single processor
  - refinementHistory: keep cells originating from a single cell on the
    same processor.

decomposePar: clean up decomposition of refinement data from snappyHexMesh

reconstructPar: reconstruct refinement data (refineHexMesh, snappyHexMesh)

reconstructParMesh: reconstruct refinement data (refineHexMesh, snappyHexMesh)

redistributePar:
  - corrected mapping surfaceFields
  - adding processor patches in order consistent with decomposePar

argList: check that slaves are running same version as master

fvMeshSubset: move to dynamicMesh library

fvMeshDistribute:
  - support for mapping dimensionedFields
  - corrected mapping of surfaceFields

parallel routines: allow parallel running on single processor

Field: support for
  - distributed mapping
  - mapping with flipping

mapDistribute: support for flipping

AMIInterpolation: avoid constructing localPoints
2016-05-15 16:36:48 +01:00
274d1df8a4 snappyHexMesh: Automatically remove zero-sized patches
All patches are preserved if the 'keepPatches' option is set true.
Patch contributed by Mattijs Janssens
2016-05-13 17:47:38 +01:00
bd52e35f77 checkMesh: Updated the closed-ness test for ACMI to use FV
Patch contributed by Mattijs Janssens
Resolves bug-report http://bugs.openfoam.org/view.php?id=2088
2016-05-13 16:23:02 +01:00
ded5f35dd6 functionObjects: Separated 'execute' and 'write' functions to simplify support for post-processing 2016-05-13 09:05:29 +01:00
6164c2f262 Standardized the naming of functions which control the writing of fields etc.
to have the prefix 'write' rather than 'output'

So outputTime() -> writeTime()

but 'outputTime()' is still supported for backward-compatibility.

Also removed the redundant secondary-writing functionality from Time
which has been superseded by the 'writeRegisteredObject' functionObject.
2016-05-12 17:38:01 +01:00
c983670c91 functionObjects: Changed options 'outputControl' -> 'writeControl' and 'outputInterval' -> 'writeInterval'
for consistency with the time controls in controlDict and to avoid
unnecessary confusion.  All code and tutorials have been updated.

The old names 'outputControl' and 'outputInterval' are but supported for
backward compatibility but deprecated.
2016-05-12 11:38:11 +01:00
cacbc688d8 Doxygen documentation: Use C++-style comments for enumeration elements 2016-05-11 23:10:42 +01:00
84f6355ad0 OutputFilterFunctionObject: Removed support for "dictionary" option
Superseded by the more general #include dictionary directive.
2016-05-11 23:08:48 +01:00
acdfa68116 OutputFilterFunctionObject: Simplify construction 2016-05-11 14:40:55 +01:00
8152652476 etc/config.sh/metis: Added $WM_PRECISION_OPTION to support SP
etc/config.sh/scotch: Added $WM_PRECISION_OPTION for consistency
2016-05-11 14:39:28 +01:00
7389969e94 etc/config.*/settings: Remove unnecessary $WM_COMPILE_OPTION from $FOAM_EXT_LIBBIN
Simplified the directory structure in ThirdParty-dev/platforms
2016-05-11 14:37:07 +01:00
437030a57d functionObjects: Removed the redundant "viable" member function
Construction failure and recovery is not handled with exceptions in functionObjectList
2016-05-11 12:57:17 +01:00
82151962c5 functionObjects: Removed redundant "start()" member function 2016-05-11 10:20:39 +01:00
862d963a95 functionObjectList: Print the messages from errors caught during functionObject construction
Exit on FatalIOError
2016-05-11 10:19:07 +01:00
32dbb01e96 functionObjectList: Rationalized and simplified the handling of disabled functionObjects
Simplified and generalized the handling of functionObjects which fail to
construct by removing them from the list rather than maintaining an
"enabled" switch in each functionObject.
2016-05-11 09:03:52 +01:00
080908732d src/postProcessing/functionObjects: Removed unused IOOutputFilter clutter 2016-05-10 12:54:42 +01:00
1343b24611 etc/config.sh/metis: Updated for changes to ThirdParty-dev/Allwmake
See commit b627924a4bf104521b567d3aa3dc80c864325b1a

    Allwmake: Added scripted changes for REALTYPEWIDTH and IDXTYPEWIDTH
    Patch contributed by Bruno Santos
    Resolves bug-report http://bugs.openfoam.org/view.php?id=2085
2016-05-10 11:39:51 +01:00
1ab0875293 writeVTK: New functionObject to write fields is VTK format
Description
    This functionObject writes objects registered to the database in VTK format
    using the foamToVTK library.

    Currently only the writing of the cell-values of volFields is supported but
    support for other field types, patch fields, Lagrangian data etc. will be
    added.

    Example of function object specification:
    \verbatim
        writeVTK1
        {
            type        writeVTK;
            functionObjectLibs ("libIOFunctionObjects.so");
            ...
            objectNames (obj1 obj2);
        }
    \endverbatim

    \heading Function object usage
    \table
        Property     | Description             | Required    | Default value
        type         | type name: writeVTK     | yes         |
        objectNames  | objects to write        | yes         |
    \endtable
2016-05-10 10:06:19 +01:00
80a0b4a124 applications/solvers/heatTransfer/chtMultiRegionFoam: Check there are fluid meshes present for the '-postProcess' option 2016-05-09 19:55:11 +01:00
34811e43cd tutorials/incompressible/simpleFoam: Updated for changes in functionObjects 2016-05-09 19:12:38 +01:00
fe16f10f26 tutorials: "readFields" is no longer needed to post-process functionObjects
Use the solver '-postProcess' command-line option instead of execFlowFunctionObjects
2016-05-09 17:03:15 +01:00
5469e21fe2 execFlowFunctionObjects: Replaced with script providing instructions to use the '-postProcess' option 2016-05-09 17:02:00 +01:00