1. 26 Nov, 2017 2 commits
    • Mark Olesen's avatar
    • Mark Olesen's avatar
      STYLE: relegate special purpose readList<T> function to points of use · 2787a866
      Mark Olesen authored
      - the readList<T>(Istream&) function was introduced to handle command
        -options with either a single or a list value, but was also used for
        the #remove dictionary directive. However, the parsing was fragile
        if the list did not start with a '('.
        Now handle command-line arg/option list directly (via ITstream)
        and #remove with special-purpose reading of a string or word list.
        This removes ambiguity and reduces potential future problems.
      STYLE: use ITstream instead of IStringStream for command-line lookups
      - parses directly to a tokenList without a string copy.
  2. 24 Nov, 2017 3 commits
    • Mark Olesen's avatar
      ENH: more succinct output from command-line errors. · 5947f9a3
      Mark Olesen authored
      - unknown options or missing option values now emit a shorter message
        without the entire usage. This makes it easier to identify the errors
        and is better aligned with the behaviour of GNU system tools.
           $ simpleFoam -case
           Using: OpenFOAM-plus (see www.OpenFOAM.com)
           Build: plus-01234
           Error: option '-case' requires an argument
           See 'simpleFoam -help' for usage
      - provide for reduced (-help) and full (-help-full) usage information.
        In many cases the reduced usage provided sufficient and easier
        to find the information.
      - make -srcDoc an alias for -doc-source
      - no warnings about option aliases for future dates.
    • Mark Olesen's avatar
      ENH: argList::optionReadList now uses ITstream directly · 9985b93c
      Mark Olesen authored
      - stricter and robuster than previous solution using List::readList
        since the option input can be fully tokenized prior to list
    • Mark Olesen's avatar
  3. 23 Nov, 2017 3 commits
  4. 22 Nov, 2017 9 commits
  5. 20 Nov, 2017 2 commits
  6. 19 Nov, 2017 2 commits
  7. 10 Nov, 2017 1 commit
  8. 18 Nov, 2017 1 commit
    • Mark Olesen's avatar
      ENH: add argList support for non-mandatory arguments · 834d46c6
      Mark Olesen authored
      - in rare cases we may wish to have command-line arguments that are
        non-mandatory. This can now be reflected in the usage output, provided
        that the argList::nonMandatoryArgs() has been used.
      - added setRootCaseNonMandatoryArgs.H that applies the
        argList::nonMandatoryArgs() settings and otherwise performs largely
        as per setRootCase.H, except that the check for mandatory arguments
        is deferred to later user code.
  9. 10 Nov, 2017 1 commit
    • Mark Olesen's avatar
      ENH: improved zone constructors · a59c87d5
      Mark Olesen authored
      - constructor for empty cell/face/point Zones, with contents to be
        transferred in later.
      - ZoneMesh::operator(const word&) to return existing zone or a new empty one.
  10. 18 Nov, 2017 2 commits
  11. 17 Nov, 2017 2 commits
    • Mark Olesen's avatar
      ENH: add -case option for foamLog · 810d090e
      Mark Olesen authored
    • Mark Olesen's avatar
      ENH: improve robustness of MPI start/stop · 9c3bef5a
      Mark Olesen authored
      - warn or fatal if Pstream::init or Pstream::exit are called multiple
      - additional Pstream::initNull method as failsafe to initialize MPI
        when the underlying OpenFOAM process is not running in parallel but
        the application still needs MPI.
      - Pstream::exit() can now also be called without having used MPI::init(),
        which means it can be used to cleanup serial process or for
        applications that used the special purpose Pstream::initNull()
  12. 13 Nov, 2017 1 commit
  13. 17 Nov, 2017 1 commit
  14. 16 Nov, 2017 1 commit
  15. 15 Nov, 2017 1 commit
  16. 14 Nov, 2017 1 commit
  17. 13 Nov, 2017 6 commits
  18. 10 Nov, 2017 1 commit
    • Mark Olesen's avatar
      ENH: add dictionary-driven multi-pass stitchMesh facility · 3cafdccb
      Mark Olesen authored
      - the dictionary-driven variant of stitchMesh allows sequential
        application of 'stitch' operation with requiring intermediate
        writing to disk.
      - Without arguments:
        * stitchMesh uses a system/stitchMeshDict or -dict dict
      - With arguments:
        * master/slave patches specified on the command-line as in previous