Commit Graph

22205 Commits

Author SHA1 Message Date
b7fb6116c3 ENH: restructuring of ensight output files
- changed ensightOutput from a class solely comprising static methods to
  a namespace and added in sub-namespaces Detail and Serial.

  This makes it easier to "mix-in" functions at different levels.
  Refactored and combined some serial/parallel code where possible.

  The general ensightOutput namespace has now shifted to be in the
  fileFormats lib, while leaving volField outputs in the conversion lib
  and cloud outputs in the lagrangian-intermediate lib.

  The ensightCloud namespace is now simply folded into the new
  ensightOutput namespace.

  These changes clean up some code, reduce fragmentation and
  duplication and removes the previous libconversion dependency for
  sampling.

- use int for ensight nTypes constexpr

Note: issue #1176 is unaffected except for the change in file name:

   ensightOutputTemplates.C -> ensightOutputVolFieldTemplates.C
2019-01-29 15:18:17 +01:00
1982f1df89 Merge branch 'feature-solver-info' into 'develop'
Function object updates

See merge request Development/OpenFOAM-plus!231
2019-01-31 17:00:01 +00:00
14e6b198cc ENH: checkMesh: write correct faceWeights. Fixes #1099. 2019-01-31 15:28:01 +00:00
1370060da2 SUBMODULES: catalyst updated to use vtk::Tools as namespace 2019-01-31 13:45:11 +01:00
fe21c9c327 ENH: change vtk::Tools from a class to a namespace
- allows localized extension of functionality
2019-01-31 13:43:18 +01:00
acc66c217b ENH: add bitwise and/or ops 2019-01-31 12:35:34 +01:00
5ffd2e4fe1 CONFIG: add config hooks for gcc 6.5.0, gcc 7.4.0 2019-01-31 12:19:22 +01:00
70f7b7f632 COMP: Allwmake: build order 2019-01-31 10:13:15 +00:00
d685727469 GIT: fix previous dirty commit 2019-01-30 17:44:44 +01:00
70845a8838 ENH: code cleanup and improvement of ensight parts
- improved the selection mechanism to include using a bitSet
  cell selection (more efficient and convenient).

  Use templated implementation internally to remove the previous
  reliance on a NullObject.
2019-01-30 08:06:01 +01:00
8d12e080f6 ENH: new continuityError function object
Example usage:

    continuityError1
    {
        type        continuityError;
        libs        ("libfieldFunctionObjects.so");
        ...
        writeToFile yes;
        log         yes;
        phi         phi;
    }
2019-01-29 13:53:56 +00:00
94070f5ee7 STYLE: Renamed residuals FO -> solverInfo to reflect capabilities 2019-01-29 13:52:37 +00:00
216616638f BUG: fieldSelection - corrected selectionNames() 2019-01-29 14:38:36 +00:00
96bb43ae00 DOC: Updated cloudName -> cloud 2019-01-29 09:53:58 +00:00
86d462c0f5 ENH: add initial support for compile-time project paths (#1050)
Eg,
    #define FOAM_CONFIGURED_PROJECT_ETC "/usr/share/openfoam/etc"

This provides some easy to file patching locations, but is not yet
integrated in the build system at all.
2019-01-29 00:52:22 +01:00
a3f960e36f ENH: add 'default' as possible Switch state, but not as input/output
- in some circumstances we need to pass a bool value upwards to the
  caller and know if the true/false value was set based on real input
  or is a default value.

  Eg, in the object::read() we might normally have

     enabled_(dict.readIfPresent(key, true));

  but would lose information about why the value is true/false.

  We can change that by using

     enabled_(dict.readIfPresent<Switch>(key, Switch::DEFAULT_ON));

  After which we can use this information is testing.

      if
      (
          child.enabled().nonDefault()
        ? child.enabled()
        : parent.enabled()
      )
      { ... }

   And thus enable output if the parent requested it explicitly or by
   default and it has not been explicitly disabled in the child.

  No difference when testing as a bool and the text representation
  of DEFAULT_ON / DEFAULT_OFF will simply be "true" / "false".

ENH: add construction of Switch from dictionary (similar to Enum)
2019-01-28 23:18:21 +01:00
f34acb5679 COMP: add debug flag for repeating runTimePostProcessing rebuilds
- avoids removal of files and the dummy fallback
2019-01-28 19:06:07 +01:00
e05a62d329 COMP: Allwmake: work with -q 2019-01-28 11:56:57 +00:00
ea9fbafa92 GIT: chockedNozzle: rename to chokedNozzle 2019-01-28 11:56:24 +00:00
da29c4f0d0 Merge branch 'feature-snappyHexMesh-check' into 'develop'
Feature snappy hex mesh check

See merge request Development/OpenFOAM-plus!229
2019-01-28 08:57:46 +00:00
3b91160027 STYLE: centralize example dictionaries under etc/ (issue #1074)
- as well as being more convenient to find, this is necessary when the
  OpenFOAM installation is without sources or tutorials
2019-01-26 17:46:08 +01:00
dd23155d81 ENH: foamPackRelease tool for creating tar-files with submodule contents 2019-01-26 16:40:33 +01:00
b0fafd18fe STYLE: reorganize some legacy and less frequently used components
- older emacs tools into legacy
- old process tools

* Less frequently used scripts into bin/tools/

  - findEmptyMake
  - foamAllHC
  - foamUpdateCaseFileHeader

* Infrastructure file (only used by foamNewApp)

  - wmake/wmakeFilesAndOptions -> wmake/scripts/wmakeFilesAndOptions

* Merge wmakeRoot convenience as 'wmake -pwd'
* Remove obsolete wmakePrintBuild (superseded by wmakeBuildInfo)
* Remove unused mergeHistory file
2019-01-26 11:30:50 +01:00
a39ed60625 STYLE: limit foamCreateManpage to documented options
Previously silently accepted '-o' as being equivalent to '-output',
but the former could be misinterpreted meaning an output file (which
it is not) instead of an output directory.
2019-01-26 11:24:52 +01:00
ef6c2ef590 CONFIG: combine wmake rules for KNL architecture as a compile option
- instead of

      WM_COMPILER=GccKNL WM_COMPILE_OPTION=Opt

      -> linux64GccKNLDPInt32Opt

  now specify

      WM_COMPILER=Gcc  WM_COMPILE_OPTION=OptKNL

      -> linux64GccDPInt32OptKNL

This makes it easier (and more obvious) for adding different tweaks
without needing to generate too many files.
Eg,

    cd wmake/rules/linux64Gcc

    cp cOpt   cOptBdw
    cp c++Opt c++OptBdw

    edit these two files and then use WM_COMPILE_OPTION=OptBdw

CONFIG: provide some default c/c++ flags in General compiler rules

- can make is easier when deriving new compile options, and ensures
  that '-02' is enabled as an initial default.
2019-01-25 17:39:05 +01:00
3d98c3d593 ENH: add -root option for wmakeLnInclude (convenience)
- finds the correct root directory location before creating
  the lnInclude directory

  Eg,

  from within something like src/finiteVolume/fields/fvPatchFields/..

      wmakeLnInclude -update -root

  it backtracks to find the top-level directory with Make/
  and makes the lnInclude directory there:

    Using /home/mark/openfoam/OpenFOAM-plus/src/finiteVolume
        ln: /home/mark/openfoam/OpenFOAM-plus/src/finiteVolume/lnInclude
2019-01-25 16:20:58 +01:00
d4b495131f COMP: avoid autoPtr automatic cast conversion in more places
- Can result in inadvertent conversions where the user should really
  know or check if the pointer is valid prior to using.

- Still have several places to fix that are using the deprecated copy
  construct and copy assignment
2019-01-25 12:45:22 +01:00
fe6abf0f61 STYLE: remove NoConstructFromTmp conditional
- workaround for some old compilers many years ago, but no longer relevant
2019-01-25 12:22:38 +01:00
c45fad8362 ENH: add support for an output object registry for function objects 2019-01-25 12:15:46 +01:00
c4aebc3c8e ENH: avoid double write triggering in writeObjects functionObject
- in the previous version, a specification such as (U "U.*")
  would have selected the field name twice for writing
2019-01-25 12:04:23 +01:00
87523acad3 ENH: add ListOps find/found accepting a unary predicate (#1182)
- can also be used for other purposes.
  Eg,

      if (ListOps::found(list, matcher))
      {
         ...
      }

  vs.

      if (!findStrings(matcher, list).empty())
      {
         ...
      }
2019-01-25 11:45:03 +01:00
5ec44cd51f ENH: add range check on findIndices (#1182)
- add compile-time detection of deprecated findIndex() function

- replace occurrences of findIndex() with the equivalent container
  method
2019-01-25 10:47:34 +01:00
ad7f29466a ENH: added timeFunctionObject virtual class in inheritance hierarchy
- simply a functionObject with an additional Time reference, which is
  a combination frequently used by concrete functionObjects
2019-01-25 08:56:21 +01:00
8433ddee0e ENH: simplify coding in functionObjectList
- use for-range when iterating
- dictionary access/search methods
- autoPtr for memory management
2019-01-24 17:00:12 +01:00
f9eb16db2a STYLE: remove shadow variable name 2019-01-25 01:09:45 +01:00
c2debedd08 ENH: changeDictionary: allow removal of patches (!). Fixes #1179. 2019-01-24 12:40:46 +00:00
a0fe04976e STYLE: remove unused code from tutorials/Alltest 2019-01-24 11:36:59 +01:00
1910ebc0ad STYLE: used guarded read in runTimeControl 2019-01-24 10:03:33 +01:00
1c85c64984 STYLE: clarify input requirements for extrusion models (#1181)
- changed the sectorCoeffs keyword to 'point' from 'axisPt'
  for more similarity with other dictionaries.
  Continue to accept 'axisPt' for compatibility.
2019-01-24 09:40:12 +01:00
8b3a00efcc STYLE: fixup very old-style case headers 2019-01-24 08:44:41 +01:00
b2ae359c99 GIT: relocate ensight parts (from conversion -> fileFormats) 2019-01-24 00:53:29 +01:00
b967f2511e GIT: relocate surfMesh fields directory 2019-01-24 00:53:29 +01:00
3316055267 ENH: minor adjustments to Switch
- assignment operators return a value, for consistency with bool.

- partial revert of DEFAULT_TRUE, DEFAULT_FALSE, to reduce complexity.
2019-01-29 09:38:09 +01:00
73705d8290 BUG: decomposePar: incorrect indexing. Fixes #1189. 2019-01-30 11:48:35 +00:00
bfb72353eb ENH: nutUWallFunction: user defined tolerance on N-R. See #1172 2019-01-30 10:12:41 +00:00
e3b6195050 COMP: Allwmake: order 2019-01-30 08:42:17 +00:00
53e03b33df COMP: relocate vtk::surfaceWriter from meshTools -> fileFormats
- allows use in surfMesh library, which does not depend on meshTools
2019-01-24 00:19:22 +01:00
722ce91ae0 STYLE: combine if (log) ... Log statements 2019-01-23 22:55:50 +01:00
c5fd858c14 STYLE: avoid floating point comparison with uint8_t in DSMCCloud 2019-01-23 22:52:35 +01:00
5bdb6ddf9f STYLE: missing break 2019-01-23 22:48:46 +01:00