1. 18 Oct, 2016 4 commits
  2. 17 Oct, 2016 1 commit
  3. 16 Oct, 2016 1 commit
  4. 15 Oct, 2016 2 commits
  5. 13 Oct, 2016 2 commits
    • Henry Weller's avatar
      blockMesh: New experimental support for projecting block face point to geometric surfaces · 00920318
      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.
      00920318
    • Henry Weller's avatar
  6. 12 Oct, 2016 2 commits
  7. 11 Oct, 2016 1 commit
  8. 09 Oct, 2016 5 commits
  9. 08 Oct, 2016 1 commit
  10. 07 Oct, 2016 4 commits
  11. 06 Oct, 2016 2 commits
  12. 05 Oct, 2016 1 commit
  13. 04 Oct, 2016 5 commits
  14. 03 Oct, 2016 2 commits
  15. 30 Sep, 2016 3 commits
  16. 28 Sep, 2016 1 commit
  17. 25 Sep, 2016 3 commits
    • Henry Weller's avatar
      blockMesh: Added printing of the block description to the '-help' output · 02579155
      Henry Weller authored
      blockMesh -help
      
      Usage: blockMesh [OPTIONS]
      options:
        -blockTopology    write block edges and centres as .obj files
        -case <dir>       specify alternate case directory, default is the cwd
        -dict <file>      specify alternative dictionary for the blockMesh description
        -noFunctionObjects
                          do not execute functionObjects
        -region <name>    specify alternative mesh region
        -srcDoc           display source code in browser
        -doc              display application documentation in browser
        -help             print the usage
      
      Block description
      
        For a given block, the correspondence between the ordering of
        vertex labels and face labels is shown below.
        For vertex numbering in the sequence 0 to 7 (block, centre):
          faces 0 (f0) and 1 are left and right, respectively;
          faces 2 and 3 are bottom and top;
          and faces 4 and 5 are front the back:
      
                 4 ---- 5
            f3   |\     |\   f5
            |    | 7 ---- 6   \
            |    0 |--- 1 |    \
            |     \|     \|    f4
            f2     3 ---- 2
      
                  f0 ----- f1
      
      Using: OpenFOAM-dev (see www.OpenFOAM.org)
      Build: dev-dc59c633
      02579155
    • Henry Weller's avatar
      pre-commit-hook: Added checks for multi-level template parameters and 'NULL' · abb4d671
      Henry Weller authored
      Patch contributed by Bruno Santos
      Resolves bug-report http://bugs.openfoam.org/view.php?id=2267
      
         1. Spaced ending of multi-level template parameters are not allowed, such as:
      
             List<List<scalar> >
      
           which instead should be:
      
             List<List<scalar>>
      
         2. The use of the 'NULL' macro should be replaced by 'nullptr'
      abb4d671
    • Henry Weller's avatar