Commit Graph

64 Commits

Author SHA1 Message Date
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
ee0aff67ce etc/codeTemplates/functionObject: Updated to correspond to the new functionObject structure 2016-05-15 21:47:18 +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
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
080908732d src/postProcessing/functionObjects: Removed unused IOOutputFilter clutter 2016-05-10 12:54:42 +01:00
32762aa1f9 Change field loop index from "fieldI" to "fieldi" 2016-05-02 18:20:48 +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
aa89254c79 foamNewFunctionObject: script to create template code for a new function object
Run foamNewFunctionObject -h for details
2016-03-22 17:40:03 +00:00
7e5d9982a7 etc/codeTemplates/BC: Use Use 'Zero' rather than 'pTraits<Type>::zero' to initialize to 0 2016-03-22 08:33:16 +00:00
95d146ecdf Rationalized the indentation of C-preprocessor directives 2016-02-29 15:42:03 +00:00
caed25f447 Code templates: Updated headers 2016-02-15 20:53:21 +00:00
350d03246e scripts: Reformat with consistent section separators 2016-02-15 18:30:24 +00:00
968c888fc4 Rename DataEntry -> Function1
Function1 is an abstract base-class of run-time selectable unary
functions which may be composed of other Function1's allowing the user
to specify complex functions of a single scalar variable, e.g. time.
The implementations need not be a simple or continuous functions;
interpolated tables and polynomials are also supported.  In fact form of
mapping between a single scalar input and a single primitive type output
is supportable.

The primary application of Function1 is in time-varying boundary
conditions, it also used for other functions of time, e.g. injected mass
is spray simulations but is not limited to functions of time.
2016-02-08 16:18:07 +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
4eba393fe1 Update code to use the simpler C++11 template syntax 2016-01-10 19:20:16 +00:00
cc996852a7 foamNewApp: corrected template case 2015-12-07 17:28:40 +00:00
b52f7571b9 foamNewApp: added execution and clock times to template 2015-12-07 14:15:14 +00:00
a3e555e72c foamNewBC: script to create template code for a new boundary condition
Run foamNewBC -h for details
2015-12-04 14:33:56 +00:00
e356211140 foamNewApp: script to create template for a new application
Creates a directory containing source .C file and Make directory
Will deprecate foamNewSource with App argument in due course
2015-12-04 14:20:23 +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
c1d3fbaee8 etc/codeTemplates/foamScript: Make executable 2015-10-26 16:35:20 +00:00
09fe6408d3 codeTemplates: Update copyright date 2015-06-23 10:54:51 +01:00
0ea062816e Correct section comment: there can only be one destructor 2015-02-12 21:57:29 +00:00
de75e1f18c BUG: mantis #1338: added compressible coded fvOption template 2014-07-28 09:26:43 +01:00
59921dfc5c ENH: Updating codedFvOptionTemplate 2013-12-20 11:53:13 +00:00
1aefea9df7 BUG: codedFunctionObject: add timeSet functionality 2013-06-10 11:18:17 +01:00
7d5d504788 ENH: codeTemplates: update date for newly created files 2013-01-21 12:25:07 +00:00
b35f0f0620 STYLE: functionObjectTemplate: modification date 2013-01-15 12:39:31 +00:00
3d8a083c40 STYLE: codedMixed: changed className to be consistent with function 2012-09-25 11:35:18 +01:00
aab426ec9e Merge branch 'master' of /home/dm4/OpenFOAM/OpenFOAM-dev 2012-05-11 14:24:38 +01:00
8c3a48b20d ENH: Updated code templates copyright year to 2012 2012-05-09 10:16:57 +01:00
2e760a3453 ENH: codedBasicSource: coded version of sources 2012-05-04 11:36:47 +01:00
747ba9dd29 ENH: functionObjectTemplate: moved include files to header file since $codeData might need them 2012-03-30 12:02:43 +01:00
ed87e54618 ENH: codedFixedValuePointPatchField: coded version for point fields 2012-03-09 10:06:22 +00:00
50b2b78d83 ENH: codedMixed: coded variant of mixed 2011-12-01 15:56:13 +00:00
0143ef82ea ENH: dynamicCode: include unitConversion by default 2011-11-14 15:11:30 +00:00
c2dd153a14 Copyright transfered to the OpenFOAM Foundation 2011-08-14 12:17:30 +01:00
b60866d98c ENH: coded functionObject: added mesh() 2011-03-23 09:34:51 +00:00
889b0a0488 ENH: Release-notes-dev: updated for coded functionObject 2011-03-23 04:58:00 +00:00
e24dd4fe2a ENH: codedFunctionObject: initial version. 2011-03-22 22:16:48 +00:00
7a0d3ebd64 ENH: refactor fixedValueFvPatchFieldTemplate
- can be reused for other (vector, tensor, ...) field types
2011-03-11 17:28:51 +01:00
12d965ead9 STYLE: more constness on const char* values 2011-03-11 09:08:45 +01:00
e8a3587df4 ENH: support file-scope 'localCode' in dynamicCode 2011-03-08 11:08:42 +01:00
3d34c5146c BUG: codedFixedValueFvPatchScalarField oldLibPath_ not copied
- prevented the reloading from working properly (thanks Mattijs!)
2011-03-08 08:48:27 +01:00
336fa74478 ENH: add static const char* SHA1sum to fixedValueFvPatchScalarFieldTemplate
- useful for debugging purposes
2011-03-07 18:10:29 +01:00
7cd3c926bd ENH: discard codeProperties in favour of using sha1-encoded library names 2011-03-03 09:06:14 +01:00
815a806be7 ENH: allow verbose output for fixedValueFvPatchScalarFieldTemplate 2011-03-02 14:28:22 +01:00
97cd3af1ff ENH: cleanup codeStream - use dynamicCode, dynamicCodeContext encapsulation
Problems remain with codedFixedValueFvPatchScalarField:

- readIfModified() notices change on system/codeDict, but the
  codeProperties::setUnmodified() means that only a single entry will
  get processed

- it appears that while dlclose() may (or may not) be actually closing
  the library, there are probably still references about. This means
  that a subsequent reloading still points to the original functions
  and the lookup is not updated correctly.
2011-03-01 14:19:24 +01:00
6b79aae433 BUG: removing coded FixedValue patch deleted fvPatch constructor tables
- use newly introduced makeRemovablePatchTypeField to avoid this problem
2011-03-01 10:51:59 +01:00
51399bbbd1 STYLE: use dynamicCode/ instead of codeStream/ for dynamically generated code 2011-02-24 13:21:39 +01:00