Oriented somewhat on dictionary methods.
Return the argument string associated with the named option:
Info<< "-foo: " << args.option("foo") << nl;
Return true if the named option is found
if (args.optionFound("foo")) ...
Return an IStringStream to the named option
old: value = readScalar(IStringStream(args.options()["foo"])());
newer: value = readScalar(args.optionLookup("foo")());
also: List<scalar> lst(args.optionLookup("foo")());
Read a value from the named option
newest: value = args.optionRead<scalar>("foo");
Read a value from the named option if present.
old: if (args.options().found("foo"))
{
value = readScalar(IStringStream(args.options()["foo"])());
}
new: args.optionReadIfPresent("foo", value);
Read a List of values from the named option
patches = args.optionReadList<word>("patches");
Didn't bother adding optionReadListIfPresent<T>(const word&), since it
probably wouldn't be common anyhow.
- Read a bracket-delimited list, or handle a single value as list of size 1.
Mostly useful for handling command-line arguments.
eg,
if (args.options().found("patches"))
{
patches = readList<word>(IStringStream(args.options()["patches"])());
}
can handle both of these:
-patches patch0
-patches \( patch1 patch2 patch3 \)
- get version from $ParaView_VERSION or from -version option
- added QT gui support (useful when compiling enGrid)
- update files for finding cmake-2.6.4 as well
- added bin/engridFoam for calling a version of enGrid that uses the
paraview libraries compiled with/for OpenFOAM
- added foam3rdParty change directory alias
foamToEnsight:
- add -noPatches option
- had incorrect part# when the internalMesh was not output
- case file is always ascii
foamToEnsightParts:
- fixed field selection bug,
no fields were selected when a single time-step was selected
- explicitly remove any previously decomposed 'mut' and 'nut' when
decomposing fields since they can otherwise prevent the turbulence model
from being upgraded properly.
Removing all decomposed fields first might be a better idea in the
long-term, but would probably be slower.
- added constructor dictionary(const dictionary*) that also handles NULL
pointers and makes it convenient to construct from a possibly nonexistent
sub-dictionary:
eg,
dictionary dict2(dict1.subDictPtr("someDict"));
- make some of the turbulence Coeffs sub-dictionary optional.
Their contents are all 'lookupOrAddDefault' anyhow.
- in turbulentMixingLength BCs, skip namespace qualifier in template
(eg, <RASModel> vs. <compressible::RASModel>)
- change comments from 'turbulenceProperties' to RASProperties/LESProperties
- consistency between compressible/incompressible - no separate file for
'New' selector etc
- consistency in accessing the model coefficients.
Use method coeffDict() for const access.
Use protected data member coeffDict_ for read/write access.
- document model coefficients in etc/constant/RASProperties.
Need the same for LESProperties before we can prune these from the
tutorials.
- actually blend correction factors as well in fixedBlended scheme
- consistency change: move 'linearUpwindV' into same directory as
'linearUpwind', move correction code from .H into .C code.
- minor docu format/spelling changes
A more general question:
~~~~~~~~~~~~~~~~~~~~~~~~
- would it make more sense to use template specializations for the
'*V' differencing schemes?
- place wmkdep and dirToString executables under
utilbin/$(WM_ARCH)$(WM_COMPILER).
This helps somewhat when copying rules about, and might help when creating
general rules.
Conflicts:
applications/utilities/mesh/manipulation/createBaffles/createBaffles.C
Can't use [0] to assign the first value of a DynamicList unless it has been
preceded by a setSize() - use append() instead.
- #inputMode error
now issues a FatalError on duplicate entries
- #inputMode warn
issues a warning on duplicate entries, corresponds to the
old behaviour of 'error'
- #inputMode protect
prevents overwriting existing entries
The 'protect' mode provides a simple mechanism for supplying default values.
eg,
in file1:
#inputMode protect
intensity 0.1;
mixingLength 0.005;
#inputMode merge
inlet
{
type turbulentIntensityKineticEnergyInlet;
intensity $intensity;
}
which is included from file2:
intensity 0.05;
#include "file1"
- added rules for gcc-4.3 in preparation for switching to gcc-4.4
- added 'clean' target for wmake/src/Makefile
It is probably reasonable to separate the binaries from the rules (TODO)