1. 12 Apr, 2018 1 commit
    • Mark OLESEN's avatar
      STYLE: reorder/refactor stream format options · 4cf932b2
      Mark OLESEN authored
      - IOstreamOption class to encapsulate format, compression, version.
        This is ordered to avoid internal padding in the structure, which
        reduces several bytes of memory overhead for stream objects
        and other things using this combination of data.
            old  IOstream:48  PstreamBuffers:88  Time:928
            new  IOstream:24  PstreamBuffers:72  Time:904
      STYLE: remove support for deprecated uncompressed/compressed selectors
      In older versions, the system/controlDict used these types of
          writeCompression uncompressed;
          writeCompression compressed;
      As of DEC-2009, these were deprecated in favour of using normal switch
          writeCompression true;
          writeCompression false;
          writeCompression on;
          writeCompression off;
      Now removed these deprecated names and treat like any other unknown
      input and issue a warning. Eg,
         Unknown compression specifier 'compressed', assuming no compression
      STYLE: provide Enum of stream format names (ascii, binary)
      COMP: fixed incorrect IFstream construct in FIREMeshReader
      - spurious bool argument (presumably meant as uncompressed) was being
        implicitly converted to a versionNumber. Now caught by making
        IOstreamOption::versionNumber constructor explicit.
      - bad version specifier in changeDictionary
  2. 18 Apr, 2018 5 commits
  3. 17 Apr, 2018 1 commit
  4. 28 Mar, 2018 1 commit
  5. 27 Mar, 2018 2 commits
  6. 22 Mar, 2018 1 commit
  7. 17 Apr, 2018 2 commits
  8. 16 Apr, 2018 1 commit
    • Mark OLESEN's avatar
      ENH: add alternative STL ASCII parsers · ea71484e
      Mark OLESEN authored
      - In addition to the traditional Flex-based parser, added a Ragel-based
        parser and a handwritten one.
        Some representative timings for reading 5874387 points (1958129 tris):
            Flex   Ragel   Manual
            5.2s   4.8s    6.7s         total reading time
            3.8s   3.4s    5.3s         without point merging
  9. 13 Apr, 2018 2 commits
  10. 12 Apr, 2018 6 commits
  11. 11 Apr, 2018 3 commits
  12. 09 Apr, 2018 1 commit
  13. 12 Apr, 2018 1 commit
  14. 11 Apr, 2018 4 commits
  15. 10 Apr, 2018 1 commit
    • Mark OLESEN's avatar
      ENH: additional text expansion shortcuts (issue #792) · a9741cea
      Mark OLESEN authored
      Support the following expansions when they occur at the start of a
          Short-form       Equivalent
          =========       ===========
            <etc>/          ~OpenFOAM/   (as per foamEtcFile)
            <case>/         $FOAM_CASE/
            <constant>/     $FOAM_CASE/constant/
            <system>/       $FOAM_CASE/system/
      These can be used in fileName expansions to improve clarity and reduce
      some typing
           "<constant>/reactions"   vs  "$FOAM_CASE/constant/reactions"
  16. 11 Apr, 2018 1 commit
    • Mark OLESEN's avatar
      CONFIG: adjust paraview lib path for 5.5 (issue #793) · d814bce3
      Mark OLESEN authored
        ParaView 5.4 and older:
          - requires lib/paraview-X.X only
        ParaView 5.5:
          - requires lib/
          - does not appear to require lib/paraview-X.X, but retained for simplicity
      - Change default version to paraview-5.5.0 for testing purposes
  17. 10 Apr, 2018 1 commit
  18. 09 Apr, 2018 1 commit
    • Mark OLESEN's avatar
      ENH: provide Rand48 as generator in the expected C++11 form · b85d0b5c
      Mark OLESEN authored
      - this removes an OS-specific dependency (eg, drand48_r is not POSIX)
        and allows easier use of other random number generators.
        The Rand48 generator has identical behaviour and period as the
        lrand48() library routine, but holds its own seed and state
        (which makes it re-entrant) and can be combined with other
        random distributions.
        However, when using the modified form to obtain scalar values
        they will not be identical to what drand48() yields.
        This is because drand48() uses the raw 48-bit values to directly
        set the mantissa of an IEEE double where as the newer distribution
        normalizes based on the 32-bit value.
      STYLE: simplify code in Random::shuffle and use Swap
  19. 11 Apr, 2018 3 commits
  20. 08 Apr, 2018 1 commit
  21. 06 Apr, 2018 1 commit