Skip to content
Snippets Groups Projects
  1. Nov 11, 2016
  2. Nov 03, 2016
    • Mark Olesen's avatar
      ENH: improved infrastructure for writing VTK content · 5dc910bb
      Mark Olesen authored
      Note: classes are prefixed with 'foamVtk' instead of 'vtk' to avoid potential
      conflicts with VTK itself.
      
      foamVtkCore
      ~~~~~~~~~~~
      - General very low-level functionality.
      
      foamVtkPTraits
      ~~~~~~~~~~~~~~
      - Traits type of functionality for VTK
      
      foamVtkOutputOptions
      ~~~~~~~~~~~~~~~~~~~~
      - The various format output options as a class that can be passed to
        formatters etc.
      
      foamVtkCells
      ~~~~~~~~~~~~
      - Intended for unifying vtkTopo and PV-Reader code in the future.
      - Handles polyhedron decompose internally etc
      
      foamVtkOutput, foamVtkFormatter
      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      - Output helpers.
      - Selector for individual formatters.
        Currently write all scalar data a 'float' (not 'double'). Can
        revisit this in the future.
      5dc910bb
  3. Oct 13, 2016
    • Henry Weller's avatar
      blockMesh: New experimental support for projecting block face point to geometric surfaces · 6849670f
      Henry Weller authored
      For example, to mesh a sphere with a single block the geometry is defined in the
      blockMeshDict as a searchableSurface:
      
          geometry
          {
              sphere
              {
                  type searchableSphere;
                  centre (0 0 0);
                  radius 1;
              }
          }
      
      The vertices, block topology and curved edges are defined in the usual
      way, for example
      
          v 0.5773502;
          mv -0.5773502;
      
          a 0.7071067;
          ma -0.7071067;
      
          vertices
          (
              ($mv $mv $mv)
              ( $v $mv $mv)
              ( $v  $v $mv)
              ($mv  $v $mv)
              ($mv $mv  $v)
              ( $v $mv  $v)
              ( $v  $v  $v)
              ($mv  $v  $v)
          );
      
          blocks
          (
              hex (0 1 2 3 4 5 6 7) (10 10 10) simpleGrading (1 1 1)
          );
      
          edges
          (
              arc 0 1 (0 $ma $ma)
              arc 2 3 (0 $a $ma)
              arc 6 7 (0 $a $a)
              arc 4 5 (0 $ma $a)
      
              arc 0 3 ($ma 0 $ma)
              arc 1 2 ($a 0 $ma)
              arc 5 6 ($a 0 $a)
              arc 4 7 ($ma 0 $a)
      
              arc 0 4 ($ma $ma 0)
              arc 1 5 ($a $ma 0)
              arc 2 6 ($a $a 0)
              arc 3 7 ($ma $a 0)
          );
      
      which will produce a mesh in which the block edges conform to the sphere
      but the faces of the block lie somewhere between the original cube and
      the spherical surface which is a consequence of the edge-based
      transfinite interpolation.
      
      Now the projection of the block faces to the geometry specified above
      can also be specified:
      
          faces
          (
              project (0 4 7 3) sphere
              project (2 6 5 1) sphere
              project (1 5 4 0) sphere
              project (3 7 6 2) sphere
              project (0 3 2 1) sphere
              project (4 5 6 7) sphere
          );
      
      which produces a mesh that actually conforms to the sphere.
      
      See OpenFOAM-dev/tutorials/mesh/blockMesh/sphere
      
      This functionality is experimental and will undergo further development
      and generalization in the future to support more complex surfaces,
      feature edge specification and extraction etc.  Please get involved if
      you would like to see blockMesh become a more flexible block-structured
      mesher.
      
      Henry G. Weller, CFD Direct.
      6849670f
  4. Oct 09, 2016
  5. Oct 08, 2016
  6. Nov 22, 2016
  7. Nov 08, 2016
  8. Oct 05, 2016
  9. Sep 30, 2016
  10. Sep 23, 2016
  11. Oct 07, 2016
  12. Oct 04, 2016
  13. Sep 20, 2016
  14. Aug 24, 2016
    • Henry Weller's avatar
      foamToVTK, PVFoamReader: Resolve problems converting VTK_WEDGE · b7e13883
      Henry Weller authored
        - There will be triangles rendered inside the mesh (when
          surface-rendering), because one of the cell's triangles is defined
          as a quadrangle in VTK_WEDGE.
      
        - Therefore, this VTK_WEDGE representation is only used when
          decomposing the mesh, otherwise the correct representation is done
          by VTK_POLYHEDRON.
      
        - Furthermore, using VTK_PYRAMID gave worse result, because it renders
          2 triangles inside the mesh for the collapsed quadrangle, likely due
          to mismatch with the adjacent cell's face.
      
        - Using VTK_HEXAHEDRON was not tested in this iteration, given that it
          should give even worse results, when compared to using VTK_PYRAMID.
      
      Patch contributed by Bruno Santos
      Resolves bug-report http://bugs.openfoam.org/view.php?id=2099
      b7e13883
  15. Aug 16, 2016
  16. Aug 05, 2016
  17. Jun 24, 2016
  18. May 18, 2016
  19. Apr 30, 2016
    • Henry Weller's avatar
      Updated headers · 30bc7515
      Henry Weller authored
      30bc7515
    • Henry Weller's avatar
      GeometricField: Renamed internalField() -> primitiveField() and... · 866fe210
      Henry Weller authored
      GeometricField: Renamed internalField() -> primitiveField() and dimensionedInternalField() -> internalField()
      
      These new names are more consistent and logical because:
      
      primitiveField():
      primitiveFieldRef():
          Provides low-level access to the Field<Type> (primitive field)
          without dimension or mesh-consistency checking.  This should only be
          used in the low-level functions where dimensional consistency is
          ensured by careful programming and computational efficiency is
          paramount.
      
      internalField():
      internalFieldRef():
          Provides access to the DimensionedField<Type, GeoMesh> of values on
          the internal mesh-type for which the GeometricField is defined and
          supports dimension and checking and mesh-consistency checking.
      866fe210
  20. Apr 26, 2016
  21. Apr 25, 2016
  22. Apr 24, 2016
  23. Sep 07, 2016
  24. Sep 06, 2016
  25. Jul 22, 2016
  26. Jul 12, 2016
  27. Jun 20, 2016
  28. Jun 17, 2016
  29. Jun 16, 2016
  30. Jun 22, 2016
  31. Jun 10, 2016
  32. Apr 26, 2016
  33. Apr 22, 2016
  34. Apr 21, 2016
  35. Apr 25, 2016
  36. Apr 16, 2016