1. 21 Feb, 2019 1 commit
  2. 07 Jan, 2019 1 commit
  3. 13 Feb, 2019 1 commit
  4. 06 Feb, 2019 1 commit
  5. 01 Feb, 2019 1 commit
  6. 25 Jan, 2019 1 commit
  7. 18 Jan, 2019 1 commit
  8. 10 Jan, 2019 2 commits
    • Mark Olesen's avatar
      BUG: incorrect dimensions for surfaceTensionForce · 3d6d6df5
      Mark Olesen authored
      - accidentally introduced by 27c62303
      
      STYLE: trial use of brace-initialized dimensionSet
      
      - instead of writing
      
            dimensionedScalar(dimensionSet(1, -2, -2, 0, 0, 0), Zero);
      
        we can use C++11 brace-initialization to bundle the parameters
        for the dimensionSet construction and simply write
      
            dimensionedScalar({1, -2, -2, 0, 0, 0}, Zero);
      
        Note the following is incorrect syntax (extra brackets):
      
            dimensionedScalar(({1, -2, -2, 0, 0, 0}), Zero);
      3d6d6df5
    • Mark Olesen's avatar
      ENH: add clip() method to GeometricField · 5c226864
      Mark Olesen authored
      5c226864
  9. 07 Jan, 2019 1 commit
  10. 09 Jan, 2019 1 commit
  11. 07 Jan, 2019 1 commit
  12. 03 Jan, 2019 2 commits
  13. 02 Jan, 2019 1 commit
  14. 11 Dec, 2018 2 commits
  15. 13 Dec, 2018 1 commit
    • Mark Olesen's avatar
      ENH: consolidate handling of mandatory/optional command arguments · 5d9e278e
      Mark Olesen authored
      - for some special cases we wish to mark command-line arguments as
        being optional, in order to do our own treatment. For example,
        when an arbitrary number of arguments should be allowed.
      
        Now tag this situation with argList::noMandatoryArgs().
        The argList::argsMandatory() query can then be used in any further
        logic, including the standard default argument checking.
      
      - with the new default check, can consolidate the special-purpose
      
            "setRootCaseNonMandatoryArgs.H"
      
        into the regular
      
            "setRootCase.H"
      
      - revert to a simple "setRootCase.H" and move all the listing related
        bits to a "setRootCaseLists.H" file. This leaves the information
        available for solvers, or whoever else wishes, without being
        introduced everywhere.
      
      - add include guards and scoping to the listing files and rename to
        something less generic.
      
           listOptions.H -> setRootCaseListOptions.H
           listOutput.H  -> setRootCaseListOutput.H
      5d9e278e
  16. 06 Dec, 2018 1 commit
  17. 14 Nov, 2018 1 commit
  18. 20 Nov, 2018 1 commit
    • Mark Olesen's avatar
      ENH: add read guard for dimensionedType constructors (#762) · dd87c983
      Mark Olesen authored
      - deprecate dimensionedType constructors using an Istream in favour of
        versions accepting a keyword and a dictionary.
      
        Dictionary entries are almost the exclusive means of read
        constructing a dimensionedType. By construct from the dictionary
        entry instead of doing a lookup() first, we can detect possible
        input errors such as too many tokens as a result of a input syntax
        error.
      
        Constructing a dimensionedType from a dictionary entry now has
        two forms.
      
        1.  dimensionedType(key, dims, dict);
      
            This is the constructor that will normally be used.
      
            It accepts entries with optional leading names and/or
            dimensions. If the entry contains dimensions, they are
            verified against the expected dimensions and an IOError is
            raised if they do not correspond. On conclusion, checks the
            token stream for any trailing rubbish.
      
        2.  dimensionedType(key, dict);
      
            This constructor is used less frequently.
      
            Similar to the previous description, except that it is initially
            dimensionless. If entry contains dimensions, they are used
            without further verification. The constructor also includes a
            token stream check.
      
            This constructor is useful when the dimensions are entirely
            defined from the dictionary input, but also when handling
            transition code where the input dimensions are not obvious from
            the source.
      
            This constructor can also be handy when obtaining values from
            a dictionary without needing to worry about the input dimensions.
            For example,
      
               Info<< "rho: " << dimensionedScalar("rho", dict).value() << nl;
      
            This will accept a large range of inputs without hassle.
      
      ENH: consistent handling of dimensionedType for inputs (#1083)
      
      BUG: incorrect Omega dimensions (fixes #2084)
      dd87c983
  19. 03 Nov, 2018 1 commit
  20. 01 Nov, 2018 1 commit
  21. 19 Oct, 2018 2 commits
  22. 18 Oct, 2018 1 commit
    • Mark Olesen's avatar
      ENH: cleanup of Enum class · 3b745122
      Mark Olesen authored
      - more dictionary-like methods, enforce keyType::LITERAL for all
        lookups to avoid any spurious keyword matching.
      
      - new readEntry, readIfPresent methods
      
      - The get() method replaces the now deprecate lookup() method.
      
      - Deprecate lookupOrFailsafe()
        Failsafe behaviour is now an optional parameter for lookupOrDefault,
        which makes it easier to tailor behaviour at runtime.
      
      - output of the names is now always flatted without line-breaks.
        Thus,
      
           os << flatOutput(someEnumNames.names()) << nl;
           os << someEnumNames << nl;
      
        both generate the same output.
      
      - Constructor now uses C-string (const char*) directly instead of
        Foam::word in its initializer_list.
      
      - Remove special enum + initializer_list constructor form since
        it can create unbounded lookup indices.
      
      - Removd old hasEnum, hasName forms that were provided during initial
        transition from NamedEnum.
      
      - Added static_assert on Enum contents to restrict to enum or
        integral values.  Should not likely be using this class to enumerate
        other things since it internally uses an 'int' for its values.
      
        Changed volumeType accordingly to enumerate on its type (enum),
        not the class itself.
      3b745122
  23. 17 Oct, 2018 2 commits
    • sergio's avatar
      ENH: · 5daa38d5
      sergio authored
      Update of overRhoPimpleDyMFoam and overInterDyMFoam solvers.
      Adding corresponding tutorials with best possible settings
      The main effort was put on reducing pressure spikes as the
      stencil change with hole cells on the background mesh.
      5daa38d5
    • Mark Olesen's avatar
      ENH: simplify objectRegistry access names (issue #322) · 8fabc325
      Mark Olesen authored
        New name:  findObject(), cfindObject()
        Old name:  lookupObjectPtr()
      
            Return a const pointer or nullptr on failure.
      
        New name:  findObject()
        Old name:  --
      
            Return a non-const pointer or nullptr on failure.
      
        New name:  getObjectPtr()
        Old name:  lookupObjectRefPtr()
      
            Return a non-const pointer or nullptr on failure.
            Can be called on a const object and it will perform a
            const_cast.
      
      - use these updated names and functionality in more places
      
      NB: The older methods names are deprecated, but continue to be defined.
      8fabc325
  24. 16 Oct, 2018 1 commit
  25. 12 Oct, 2018 1 commit
    • Mark Olesen's avatar
      ENH: avoid readScalar, readLabel etc from dictionary (#762, #1033) · 8eddcc07
      Mark Olesen authored
      - use the dictionary 'get' methods instead of readScalar for
        additional checking
      
           Unchecked:  readScalar(dict.lookup("key"));
           Checked:    dict.get<scalar>("key");
      
      - In templated classes that also inherit from a dictionary, an additional
        'template' keyword will be required. Eg,
      
           this->coeffsDict().template get<scalar>("key");
      
        For this common use case, the predefined getXXX shortcuts may be
        useful. Eg,
      
           this->coeffsDict().getScalar("key");
      8eddcc07
  26. 11 Sep, 2018 1 commit
  27. 08 Aug, 2018 1 commit
    • Mark Olesen's avatar
      ENH: add missing Hash function for List/UList (issue #966) · dd9ecd49
      Mark Olesen authored
      - there were previously no hashing mechanisms for lists so they
        would fall back to the definition for primitives and hash the
        memory location of the allocated List object.
      
      - provide a UList::Hash<> sub-class for inheritance, and also a global
        specialization for UList<T>, List<T> such that the hash value for
        List<List<T>> cascades properly.
      
      - provide similar function in triFace to ensure that it remains
        similar in behaviour to face.
      
      - added SymmHash to Pair, for use when order is unimportant.
      
      STYLE: use string::hash() more consistently
      
      - no particular reason to use Hash<word>() which forwards to
        string::hash() anyhow
      dd9ecd49
  28. 30 Jul, 2018 1 commit
  29. 27 Jul, 2018 1 commit
  30. 05 Oct, 2018 1 commit
    • Mark Olesen's avatar
      ENH: use dictionary::readEntry for detection of input errors (#762, #1033) · 13778f76
      Mark Olesen authored
      - instead of   dict.lookup(name) >> val;
        can use      dict.readEntry(name, val);
      
        for checking of input token sizes.
        This helps catch certain types of input errors:
      
        {
      
            key1 ;                // <- Missing value
            key2 1234             // <- Missing ';' terminator
            key3 val;
        }
      
      STYLE: readIfPresent() instead of 'if found ...' in a few more places.
      13778f76
  31. 24 Jul, 2018 1 commit
  32. 19 Jul, 2018 1 commit
  33. 11 Jul, 2018 1 commit
  34. 27 Jun, 2018 1 commit
    • Will Bainbridge's avatar
      fileHandler: Added flush method · 2ae4bf73
      Will Bainbridge authored
      This method waits until all the threads have completed IO operations and
      then clears any cached information about the files on disk. This
      replaces the deactivation of threading by means of zeroing the buffer
      size when writing and reading of a file happen in sequence. It also
      allows paraFoam to update the list of available times.
      
      Patch contributed by Mattijs Janssens
      Resolves bug report https://bugs.openfoam.org/view.php?id=2962
      2ae4bf73
  35. 25 Jun, 2018 1 commit