Commit graph

54 commits

Author SHA1 Message Date
Henry Weller
99c000fc94 Rationalized the indentation of C-preprocessor directives 2016-02-29 15:42:03 +00:00
Henry Weller
cd59748bdb tmp: encapsulate refCount to enable the option for tmp to use a specific version 2016-02-28 22:50:24 +00:00
Henry Weller
3a56ebf33d tmp: Improved reference count checks to provide better error diagnostics
in case of tmp misuse.

Simplified tmp reuse pattern in field algebra to use tmp copy and
assignment rather than the complex delayed call to 'ptr()'.

Removed support for unused non-const 'REF' storage of non-tmp objects due to C++
limitation in constructor overloading: if both tmp(T&) and tmp(const T&)
constructors are provided resolution is ambiguous.

The turbulence libraries have been upgraded and '-DCONST_TMP' option
specified in the 'options' file to switch to the new 'tmp' behavior.
2016-02-24 12:47:36 +00:00
Henry Weller
79f0c385ca Info -> InfoInFunction and updated comments 2016-01-20 17:51:15 +00:00
Henry Weller
4426006d69 Info -> InfoInFunction and updated comments 2016-01-20 10:18:13 +00:00
Henry Weller
f9a8134c74 Updated header 2016-01-19 21:58:32 +00:00
Henry Weller
d70384fcc1 Info -> InfoInFunction 2016-01-19 21:58:11 +00:00
Henry Weller
e029c7c1a3 Update headers 2016-01-11 13:02:52 +00:00
Henry Weller
a56ab5f863 Consistently indent continuation backslashes in macro definitions 2016-01-11 13:00:56 +00:00
Henry Weller
94c05a1e6c Update code to use the simpler C++11 template syntax removing spaces between closing ">"s 2016-01-10 22:41:16 +00:00
Henry Weller
36f2d69888 Update code to use the simpler C++11 template syntax 2016-01-10 19:20:16 +00:00
Henry Weller
016aad0d72 functionObjects: Format time according to the specification in controlDict
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1921
2015-11-20 13:22:51 +00:00
Henry Weller
cc99b65d77 src/OpenFOAM: Update ...IOErrorIn -> ...IOErrorInFunction
Avoids the clutter and maintenance effort associated with providing the
function signature string.
2015-11-10 21:13:04 +00:00
Henry Weller
1944b09bb5 SolverPerformance: Complete the integration of the templated SolverPerformance<Type>
Now solvers return solver performance information for all components
with backward compatibility provided by the "max" function which created
the scalar solverPerformance from the maximum component residuals from
the SolverPerformance<Type>.

The residuals functionObject has been upgraded to support
SolverPerformance<Type> so that now the initial residuals for all
(valid) components are tabulated, e.g. for the cavity tutorial case the
residuals for p, Ux and Uy are listed vs time.

Currently the residualControl option of pimpleControl and simpleControl
is supported in backward compatibility mode (only the maximum component
residual is considered) but in the future this will be upgraded to
support convergence control for the components individually.

This development started from patches provided by Bruno Santos, See
http://www.openfoam.org/mantisbt/view.php?id=1824
2015-11-10 08:50:11 +00:00
Henry Weller
d5b4448e1a src/OpenFOAM: Update ...ErrorIn -> ...ErrorInFunction
Avoids the clutter and maintenance effort associated with providing the
function signature string.
2015-11-08 12:23:52 +00:00
Henry Weller
03494fef5d Updated notImplemented -> NotImplemented
The new NotImplemented macro uses __PRETTY_FUNCTION__ for GNU compatible
compilers otherwise __func__ to provide the function name string.
2015-11-01 10:26:37 +00:00
Henry Weller
ff10fe0d5e messageStream, error: Add new versions of message and error macros
which use the __PRETTY_FUNCTION__ constant string to provide the function name
2015-10-30 17:30:26 +00:00
Henry Weller
f623ba2542 Make Doxygen documentation consistent with the rest of OpenFOAM 2015-10-29 22:40:41 +00:00
Henry Weller
fdd1beccf4 functionObjectFile: Use wordList rather than wordHashSet to maintain order
Change based on patch provided by Hassan Kassem
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1796
2015-08-05 17:38:31 +01:00
Henry Weller
e6e7820ae5 Upgrade Intel C++ compiler to icpc (ICC) 15.0.3 20150407
This resolves a whole range of issues and work-arounds with earlier
releases.  This version of icpc is more or less compatible with the
latest gcc and clang compilers and only required one hack to avoid
warnings from PackedBoolList.H.
2015-07-17 16:50:40 +01:00
Henry Weller
77bf182edc Resolved issues with virtual function inheritance and warning from clang
Also removed __GNUC__ conditional compilation statements which are no
longer needed.
2015-07-17 12:11:37 +01:00
Henry Weller
0d024dd37d Removed use of the deprecated "register" keyword
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4340.html
2015-06-30 10:26:44 +01:00
Henry Weller
0b5082b8c7 Correct typo 2015-06-24 10:06:56 +01:00
Henry Weller
97b0882ef4 timeSelector: Add support for -newTimes option
//- Return the set of times selected based on the argList options
    //  including support for \b -newTimes in which times are selected
    //  if the file <fName> does not exist in the time directory.
    //  Also set the runTime to the first instance or the
    //  \c constant/ directory if no instances are specified or available
    static instantList select
    (
        Time& runTime,
        const argList& args,
        const word& fName
    );

This is experimental functionality and currently on test in the yPlus
post-processing utility.
2015-06-24 10:04:29 +01:00
Henry
1a3ef4d827 IOobject: Added member function "member()" which returns the member name of the object
i.e. without the group suffix.

Patch provided by William Bainbridge
2015-06-04 17:09:42 +01:00
Henry
54af0e3359 Time: Correct precision adjustment for user-time 2015-05-20 12:43:54 +01:00
Henry
d9090fcf42 messageStream: Remove confusing argument-based conditional output
This had been used in functionObjects:

    Info(log)<< "messages" << data << ....

in which it is not at all clear what the "log" argument does whereas

    if (log) Info<< "messages" << data << ....

is totally clear and more efficient.
2015-05-18 11:54:56 +01:00
Henry
db4ac98fd8 faceSource: Writing the total area of the faceSource (sum(magSf)) for each time is now optional
Previous behavior which may be useful for moving-mesh cases can be
selected using the optional entry:
    writeTotalArea  yes;

The initial total area is written in the log and data file header e.g.:

 #   Source : faceZone f0
 #   Faces  : 8
 #   Area   : 1.063860e-02
2015-04-26 16:32:19 +01:00
Henry
0fe1967c22 includeEtcEntry: New dictionary include directive: #includeEtc "etcFile"
Description
    Specify an etc file to include when reading dictionaries, expects a
    single string to follow.

    Searches for files from user/group/shipped directories.
    The search scheme allows for version-specific and
    version-independent files using the following hierarchy:
    - \b user settings:
      - ~/.OpenFOAM/\<VERSION\>
      - ~/.OpenFOAM/
    - \b group (site) settings (when $WM_PROJECT_SITE is set):
      - $WM_PROJECT_SITE/\<VERSION\>
      - $WM_PROJECT_SITE
    - \b group (site) settings (when $WM_PROJECT_SITE is not set):
      - $WM_PROJECT_INST_DIR/site/\<VERSION\>
      - $WM_PROJECT_INST_DIR/site/
    - \b other (shipped) settings:
      - $WM_PROJECT_DIR/etc/

    An example of the \c \#includeEtc directive:
    \verbatim
        #includeEtc "etcFile"
    \endverbatim

    The usual expansion of environment variables and other constructs is
    retained.
2015-04-26 10:44:11 +01:00
Henry
2a7c6c18e3 potentialFoam: No longer executes functionObjects by default
Use the new -withFunctionObjects command-line option to execute functionObjects
2015-04-25 21:56:14 +01:00
Henry
c7e807cf74 timeSelector: Rename option zeroTime -> withZero for consistency with the noZero option 2015-04-25 15:12:08 +01:00
Henry
cb82ae7d96 timeSelector: Change select0 to return 'constant' if no times are specified or available
This allows checkMesh and other mesh manipulation utilities to operate
on the mesh without any time directories being present.
2015-04-25 11:51:06 +01:00
Henry
fbb0a87995 Time: Corrected message when maximum time-precision is reached
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=815
2015-03-22 09:48:49 +00:00
Henry
7dfdea2cac Time: Adjust the precision of the time-directories only for write-times
Avoids unnecessary increases in precision during intermediate steps for
cases with adjustable time-step which may require very high precision to
represent the time name.
2015-03-15 18:49:52 +00:00
Henry
c4bb9bbd5b Update header 2015-03-14 20:35:36 +00:00
Henry
b169f09cd3 Time: Increase the precision the value entry is written in uniform/time
Add check for round-off error causing time reversal
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=815
2015-03-14 20:33:51 +00:00
Henry
9df23b529e Time: Improved tolerance used to test time equivalence from Bruno
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=815
2015-03-08 21:02:51 +00:00
Henry
30bbd3e9be Update headers 2015-03-08 16:31:32 +00:00
Henry
85225d817e Time: Handle precision changes on start-up and running more robustly
Changes based on patches from and discussions with Bruno Santos
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=815
2015-03-08 16:29:01 +00:00
Henry
f58fd14271 Corrected capitalization of Doxygen documentation comments 2015-02-14 13:10:15 +00:00
Henry
31fd2512fb GeometricField: Do not transfer registration of a GeometricField to a copy unless it is being transferred from a tmp
This avoids loosing the registration of non-tmp fields
2015-02-13 21:40:45 +00:00
Henry
63938fb3d3 decomposePar: Do not register Lagrangian IOFields as the names may conflict with those of volFields
Required change to IOobjectList to support the optional no-registration specification
2015-02-12 21:59:17 +00:00
Henry
e636b7c73b Correct section comment: there can only be one destructor 2015-02-12 21:57:29 +00:00
Henry
ca026b5dc7 Updated headers to ensure the class name declared to Doxygen is in the appropriate namespace
Also moved global classes which should be in the Foam namespace into it.
2015-02-09 14:43:11 +00:00
Henry
0b7c2ee470 registerSwitch: rationalization of info and optimization switch registration
plus support for other than integer types
2015-02-05 18:10:42 +00:00
Henry
02ba39d93c Rationalized handling of debug, info and opt switches 2015-02-05 10:43:10 +00:00
Henry
2c25b8db52 Add support for reading and updating the debug switches of templated
classes in the DebugSwitches sub-dictionary of system/controlDict
2015-02-04 22:08:27 +00:00
Henry
3b60a97831 POSIX.C findEtcFiles: Revert change to read system/controlDict
Causes problems if the controlDict contains # entries
2015-02-03 11:59:43 +00:00
Henry
097f23e11a Added support for glibc < 2.18
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1474
2015-01-04 20:13:37 +00:00
Henry
cedd21599b Added InfoSwitches::writeOptionalEntries which enables the writing of optional keywords and values which are not present in the dictionary
Warning: generates a VERY large number of messages from OpenFOAM applications
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1473
2015-01-03 16:54:07 +00:00