1. 01 Mar, 2019 1 commit
  2. 28 Feb, 2019 2 commits
  3. 25 Feb, 2019 2 commits
  4. 24 Feb, 2019 2 commits
    • Mark Olesen's avatar
      ENH: basic i-j-k Field container (#1216) · 4d499d3c
      Mark Olesen authored
      - this is a simple container for fields with i-j-k addressing.
      
        It does not support field operations directly, but is primarily
        intended to be used when assembling field information with i-j-k
        logic. After assembly, the field can be transferred to a regular
        field for normal operations.  Eg,
      
            IjkField<scalar> assemble({15, 16, 200});
      
            // .. fill in i-j-k fields
      
            Field<scalar> final(std::move(assemble));
            assemble.clear();   // be pedantic
            ...
      4d499d3c
    • Mark Olesen's avatar
      e9323ecb
  5. 23 Feb, 2019 1 commit
    • Mark Olesen's avatar
      ENH: new PDRblockMesh mesh generation utility (issue #1216) · 84270ed6
      Mark Olesen authored
      - While a rectilinear mesh can be created with blockMesh, not every mesh
        created with blockMesh will satisfy the requirements for being a
        rectilinear mesh.
      
        This alternative to blockMesh uses a single block that is aligned
        with the xy-z directions and specifications of the control points,
        mesh divisions and expansion ratios. For example,
      
          x
          {
              points  ( -13.28 -0.10 6.0 19.19 );
              nCells  (  10  12 10 );
              ratios  ( 0.2   1  5 );
          }
      
          y { ... }
          z { ... }
      
        With only one block, the boundary patch definition is simple and the
        canonical face number is used directly. For example,
      
          inlet
          {
              type    patch;
              faces   ( 0 );
          }
          outlet
          {
              type    patch;
              faces   ( 1 );
          }
      
          sides
          {
              type    patch;
              faces   ( 2 3 );
          }
      
          ...
      
      - After a mesh is defined, it is trivial to retrieve mesh-related
        information such as cell-volume, cell-centres for any i-j-k location
        without an actual polyMesh.
      
      STYLE: remove -noFunctionObjects from blockMesh
      
      - no time loop, so function objects cannot be triggered anyhow.
      84270ed6
  6. 24 Feb, 2019 1 commit
  7. 23 Feb, 2019 1 commit
  8. 22 Feb, 2019 11 commits
  9. 20 Feb, 2019 1 commit
  10. 21 Feb, 2019 2 commits
    • Mark Olesen's avatar
      ENH: trap negative blockMesh expansions and treat as their inverse · 7da0b5be
      Mark Olesen authored
      - A negative expansion ratio is geometrically invalid and will
        normally cause issues (FatalError).
        However, we can trap this type of input and interpret it as the
        inverse expansion ratio - ie, the expansion ratio in the opposite
        direction. This can be especially convenient when generating a blockMesh
        with a symmetrical expansion. It permits using the same expansion
        ratio (with a sign change) instead of providing the reciprocal values
        manually.
      
      COMP: revert demand-driven point creation in blockMesh (db9b35b5)
      
      - appears to have caused a dangling reference on some systems
      
      ENH: add a lightweight ijkAddressing class
      
      - it can be used for an i-j-k to linear lookup of meshes or fields,
        where applicable.
      7da0b5be
    • sergio's avatar
      BUG: Fixing entry consistency in PhaseMixtureEThermo.C · 1dc9e7c4
      sergio authored
      and reading dpdt in one basicThermo constructor
      1dc9e7c4
  11. 20 Feb, 2019 1 commit
  12. 17 Feb, 2019 2 commits
    • Mark Olesen's avatar
      ENH: minor blockMesh improvements · 48e3590b
      Mark Olesen authored
      - avoid potential ambiguities in naming of mesh faces/edges
        vs. block faces/edges
      
      - additional methods characterizing the number of faces
        (internal, boundary, total) associated with a blockDescriptor
      
      - cellLabel() accessor and checkIndex() methods
      
      - restore demand-driven behaviour of block, cache the calculated cells
        and refactor generation of block boundary faces to improve potential
        reuse.
      48e3590b
    • Mark Olesen's avatar
      ENH: support VTK output of point ids · fe445ac5
      Mark Olesen authored
      - can be useful for diagnosing mesh internals and the locations of
        decomposed cells.
      fe445ac5
  13. 16 Feb, 2019 2 commits
    • Mark Olesen's avatar
      STYLE: declare edge::operator[] · 9cb6338c
      Mark Olesen authored
      - already available from the FixedList inheritance, but provide
        explicitly in edge to allow future adjustment of the inheritance
        (#1205)
      9cb6338c
    • Mark Olesen's avatar
      ENH: improvements to label/scalar ranges · 041be829
      Mark Olesen authored
      - construct from MinMax, optional start index for identity factory
        method to match Foam::identity()
      
      - use GREAT instead of VGREAT in inverted scalarRange.
        Consistent with boundBox - to reduce the potential of overflow
        if calculating the span.
      
      - add min()/max() methods to labelRange
      041be829
  14. 18 Feb, 2019 5 commits
  15. 15 Feb, 2019 4 commits
  16. 13 Feb, 2019 1 commit
    • Mark Olesen's avatar
      ENH: extended runTimePostProcessing (#1206) · 42fbf6d3
      Mark Olesen authored
      - Extended runTimePostProcessing to include access to "live"
        simulation objects such a geometry patches and sampled surfaces
        stored on the "functionObjectObjects" registry.
      
      - Add 'live' runTimePostProcessing of cloud data.
        Extracts position and fields from the cloud via its objectRegistry writer
      
      - For the "live" simulation objects, there are two new volume filters
        that work directly with the OpenFOAM volume fields:
            * iso-surface
            * cutting planes
        Both use the VTK algorithms directly and support multiple values.
        Eg, can make multiple iso-levels or multiple planes parallel to each
        other.
      
      - When VTK has been compiled with MPI-support, parallel rendering will
        be used.
      
      - Additional title text properties (shadow, italic etc)
      
      - Simplified handling of scalar-bar and visibility switches
      
      - Support multiple text positions. Eg, for adding watermark text.
      42fbf6d3
  17. 12 Feb, 2019 1 commit