Commit Graph

41 Commits

Author SHA1 Message Date
3eec5854be Standardized the selection of required and optional fields in BCs, fvOptions, functionObjects etc.
In most boundary conditions, fvOptions etc. required and optional fields
to be looked-up from the objectRegistry are selected by setting the
keyword corresponding to the standard field name in the BC etc. to the
appropriate name in the objectRegistry.  Usually a default is provided
with sets the field name to the keyword name, e.g. in the
totalPressureFvPatchScalarField the velocity is selected by setting the
keyword 'U' to the appropriate name which defaults to 'U':

        Property     | Description             | Required    | Default value
        U            | velocity field name     | no          | U
        phi          | flux field name         | no          | phi
        .
        .
        .

However, in some BCs and functionObjects and many fvOptions another
convention is used in which the field name keyword is appended by 'Name'
e.g.

        Property     | Description             | Required    | Default value
        pName        | pressure field name     | no          | p
        UName        | velocity field name     | no          | U

This difference in convention is unnecessary and confusing, hinders code
and dictionary reuse and complicates code maintenance.  In this commit
the appended 'Name' is removed from the field selection keywords
standardizing OpenFOAM on the first convention above.
2016-05-21 20:28:20 +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
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
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
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
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
c70c12a2bb functionObjects: Simplified organization and naming 2016-05-03 23:37:28 +01:00
0534a225fd functionObjects: Moved into the functionObjects namespace and rationalized and simplified failable construction
Rather than requiring each functionObject to handle failed construction
internally (using the active_ flag) the static member function "viable"
is provided which returns true if construction of the functionObject is
likely to be successful.  Failed construction is then handled by the
wrapper-class which constructs the functionObject,
e.g. "OutputFilterFunctionObject".
2016-05-02 16:28:24 +01:00
450728ea84 Standardized cell, patch, face and processor loop index names 2016-04-25 12:00:53 +01:00
43beb06018 Standardized cell, patch and face loop index names 2016-04-25 10:28:32 +01:00
7ba41e0095 Removed duplicate, inconsistent and spurious comments in .C files 2016-02-29 18:33:54 +00:00
95d146ecdf Rationalized the indentation of C-preprocessor directives 2016-02-29 15:42:03 +00:00
56fa7c0906 Update code to use the simpler C++11 template syntax removing spaces between closing ">"s 2016-01-10 22:41:16 +00:00
c4d5f65a10 Completed update ...ErrorIn -> ...ErrorInFunction
Avoids the clutter and maintenance effort associated with providing the
function signature string.
2015-11-11 09:03:39 +00:00
1d4ce1f660 lagrangian: Improved handling of binary transfers
Now using memory offsets to calculate transfer block sizes rather than
sum of 'sizeof' to ensure word alignment is accounted for
2015-02-22 12:14:46 +00:00
8628ef2fea Corrected capitalization of Doxygen documentation comments 2015-02-14 13:10:15 +00:00
9fb26d59d3 GIT: Repo update 2014-12-11 08:35:10 +00:00
6b210784dc STYLE: Minor code formatting 2014-01-14 10:49:09 +00:00
56bfb3cb42 Update headers 2013-12-06 15:49:31 +00:00
3f5eda25f0 symmetryPlane: add symmetryPlane as a special type of symmetry condition applied to a single plane
The standard/previous general symmetry type is now named symmetry
    both in class and lookup name for consistency.  The rigorous
    symmetryPlane type is needed for moving-mesh cases in which the
    motion it constrained by one or two planes.
2013-12-06 15:45:11 +00:00
837ca32397 ENH: function obejct updates 2013-10-04 16:44:58 +01:00
a50d78ea93 EMH: Adding a hook to functionObject called 'timeSet' at the
end of Time::operator++. This allows to know if the next timeIndex will be
a dumping time. The function object "partialWrite" modifyes the write option
of the those fields which will be written down at given intervals of the overall
outout times.
2013-06-07 10:11:07 +01:00
53df4289df ENH: Consistency updates - license text abnd code formatting 2013-03-12 15:40:03 +00:00
100a25ee25 STYLE: defineDebug: move into Foam namespace 2012-12-17 17:35:42 +00:00
9d5ce4ae76 ENH: Updated function objects 2012-12-13 10:40:38 +00:00
c9524f202c ENH: Redirected output explicitly to 'postProcessing' sub-folder 2012-10-15 18:02:45 +01:00
f3d8e5316c Updated function object documentation 2012-08-13 17:36:58 +01:00
a17b0c75c6 ENH: Updates to function object documentation 2012-07-23 15:23:35 +01:00
a80d4d9b69 ENH: doxygen documentation updates 2012-07-12 17:12:52 +01:00
3dd7ab054b STYLE: change of doxygen tags for function objects and ico wall functions boundaryConditions 2012-07-12 10:35:09 +01:00
61eaea8b81 ENH: restructured doxygen entries for function objects 2012-07-11 14:02:11 +01:00
354d0ae7ce ENH: First pass through doxygen info updates for function objects 2012-07-11 12:26:08 +01:00
cd51a5eea3 Consistency: Changed exponent FORTRAN style 'E' to C style 'e' 2012-04-17 16:48:27 +01:00
54363ec4cc BUG: wallBoundedParticle.C: I/O compatible 2012-02-14 12:44:48 +00:00
1bef8ec224 ENH: wallBoundedStreamLineParticle: use wallBoundedParticle class 2012-02-14 12:22:26 +00:00
46edbe2bb2 ENH: wallBoundedParticle: generic particle class for tracking along boundary 2012-02-14 12:21:47 +00:00
0dbdea4781 ENH: wallBoundedStreamLine: -store one value per location -optional tracklength specification 2012-02-07 11:35:18 +00:00
54b5b66023 ENH: wallBoundedStreamLine: updated motorBike tutorial. 2012-02-07 08:47:50 +00:00
307a13f08b ENH: wallBoundedStreamLine: near-wall tracking 2012-02-06 16:39:43 +00:00