Skip to content
Snippets Groups Projects
  1. Nov 09, 2015
  2. Nov 03, 2015
  3. Nov 02, 2015
  4. Oct 30, 2015
  5. Oct 28, 2015
  6. Oct 26, 2015
    • mattijs's avatar
      Merge branch 'feature-snappyHexMesh' of... · df010ec6
      mattijs authored
      Merge branch 'feature-snappyHexMesh' of develop.openfoam.com:Development/OpenFOAM-dev-OpenCFD into feature-snappyHexMesh
      df010ec6
    • mattijs's avatar
      BUG: snappyHexMesh: minThickness > 1 caused truncation of layers · 2de68a9a
      mattijs authored
      The start of the layer addition loop does a synchronisation of the wanted
      displacement. This also does a truncation of the displacement if it is <
      minThickness. At the first iteration the displacement was initialised to
      vector::one which might trigger the truncation logic (and then disable
      extrusion altogether). Instead we now initialise the displacement to
      vector::GREAT before entering the synchronisation.
      2de68a9a
  7. Oct 21, 2015
  8. Oct 19, 2015
    • Henry Weller's avatar
    • Henry Weller's avatar
      sixDoFSolver: Run-time selectable solver (integrator) for sixDoFRigidBodyMotion · f4202d9e
      Henry Weller authored
      The built-in explicit symplectic integrator has been replaced by a
      general framework supporting run-time selectable integrators.  Currently
      the explicit symplectic, implicit Crank-Nicolson and implicit Newmark
      methods are provided, all of which are 2nd-order in time:
      
      Symplectic 2nd-order explicit time-integrator for 6DoF solid-body motion:
      
          Reference:
              Dullweber, A., Leimkuhler, B., & McLachlan, R. (1997).
              Symplectic splitting methods for rigid body molecular dynamics.
              The Journal of chemical physics, 107(15), 5840-5851.
      
          Can only be used for explicit integration of the motion of the body,
          i.e. may only be called once per time-step, no outer-correctors may be
          applied.  For implicit integration with outer-correctors choose either
          CrankNicolson or Newmark schemes.
      
          Example specification in dynamicMeshDict:
          solver
          {
              type    symplectic;
          }
      
      Newmark 2nd-order time-integrator for 6DoF solid-body motion:
      
          Reference:
              Newmark, N. M. (1959).
              A method of computation for structural dynamics.
              Journal of the Engineering Mechanics Division, 85(3), 67-94.
      
          Example specification in dynamicMeshDict:
          solver
          {
              type    Newmark;
              gamma   0.5;    // Velocity integration coefficient
              beta    0.25;   // Position integration coefficient
          }
      
      Crank-Nicolson 2nd-order time-integrator for 6DoF solid-body motion:
      
          The off-centering coefficients for acceleration (velocity integration) and
          velocity (position/orientation integration) may be specified but default
          values of 0.5 for each are used if they are not specified.  With the default
          off-centering this scheme is equivalent to the Newmark scheme with default
          coefficients.
      
          Example specification in dynamicMeshDict:
          solver
          {
              type    CrankNicolson;
              aoc     0.5;    // Acceleration off-centering coefficient
              voc     0.5;    // Velocity off-centering coefficient
          }
      
      Both the Newmark and Crank-Nicolson are proving more robust and reliable
      than the symplectic method for solving complex coupled problems and the
      tutorial cases have been updated to utilize this.
      
      In this new framework it would be straight forward to add other methods
      should the need arise.
      
      Henry G. Weller
      CFD Direct
      f4202d9e
    • Henry Weller's avatar
      reactingTwoPhaseEulerFoam: Remove the build-in write of Ur · 11f35cc7
      Henry Weller authored
      Ur can be generated using a functionObject or in the post-processor
      11f35cc7
  9. Oct 17, 2015
  10. Oct 15, 2015
  11. Oct 14, 2015
    • mattijs's avatar
      ENH: snappyHexMesh: various improvements. See below or the default snappyHexMeshDict. · 4d1159e6
      mattijs authored
      Refinement:
      -----------
      // Optionally avoid patch merging - keeps hexahedral cells
      // (to be used with automatic refinement/unrefinement)
      //mergePatchFaces off;
      
      // Optional multiple locationsInMesh with corresponding optional cellZone
      // (automatically generates faceZones inbetween)
      locationsInMesh
      (
          ((-0.09 -0.039 -0.049)  bottomAir)  // cellZone bottomAir
          ((-0.09 0.009 -0.049)   topAir)     // cellZone topAir
      );
      
      // Optional faceType and patchType specification for these faceZones
      faceZoneControls
      {
          bottomAir_to_topAir
          {
              faceType baffle;
          }
      }
      
      / Optional checking of 'bleeding' of mesh through a specifying a locations
      // outside the mesh
      locationsOutsideMesh ((0 0 0)(12.3 101.17 3.98));
      
      // Improved refinement: refine all cells with all (or all but one) sides refined
      
      // Improved refinement: refine all cells with opposing faces with different
      // refinement level. These cells can happen on multiply curved surfaces.
      // Default on, can be switched off with
      //interfaceRefine false;
      
      Snapping
      --------
      // Optional smoothing of points at refinement interfaces. This will reduce
      // the non-orthogonality at refinement interfaces.
      //nSmoothInternal $nSmoothPatch;
      
      Layering
      --------
      
      // Layers can be added to patches or to any side of a faceZone.
      // (Any faceZone internally gets represented as two patches)
      
      // The angle to merge patch faces can be set independently of the
      // featureAngle. This is especially useful for large feature angles
      // Default is the same as the featureAngle.
      //mergePatchFacesAngle 45;
      
      // Optional mesh shrinking type 'displacementMotionSolver'. It uses any
      // displacementMotionSolver, e.g. displacementSBRStress
      // (default is the medial-axis algorithm, 'displacementMedialAxis')
      //meshShrinker displacementMotionSolver;
      4d1159e6
    • mattijs's avatar
      ENH: snappyHexMesh: various improvements. See below or the default snappyHexMeshDict. · 7b7967de
      mattijs authored and Andrew Heather's avatar Andrew Heather committed
      Refinement:
      -----------
      // Optionally avoid patch merging - keeps hexahedral cells
      // (to be used with automatic refinement/unrefinement)
      //mergePatchFaces off;
      
      // Optional multiple locationsInMesh with corresponding optional cellZone
      // (automatically generates faceZones inbetween)
      locationsInMesh
      (
          ((-0.09 -0.039 -0.049)  bottomAir)  // cellZone bottomAir
          ((-0.09 0.009 -0.049)   topAir)     // cellZone topAir
      );
      
      // Optional faceType and patchType specification for these faceZones
      faceZoneControls
      {
          bottomAir_to_topAir
          {
              faceType baffle;
          }
      }
      
      / Optional checking of 'bleeding' of mesh through a specifying a locations
      // outside the mesh
      locationsOutsideMesh ((0 0 0)(12.3 101.17 3.98));
      
      // Improved refinement: refine all cells with all (or all but one) sides refined
      
      // Improved refinement: refine all cells with opposing faces with different
      // refinement level. These cells can happen on multiply curved surfaces.
      // Default on, can be switched off with
      //interfaceRefine false;
      
      Snapping
      --------
      // Optional smoothing of points at refinement interfaces. This will reduce
      // the non-orthogonality at refinement interfaces.
      //nSmoothInternal $nSmoothPatch;
      
      Layering
      --------
      
      // Layers can be added to patches or to any side of a faceZone.
      // (Any faceZone internally gets represented as two patches)
      
      // The angle to merge patch faces can be set independently of the
      // featureAngle. This is especially useful for large feature angles
      // Default is the same as the featureAngle.
      //mergePatchFacesAngle 45;
      
      // Optional mesh shrinking type 'displacementMotionSolver'. It uses any
      // displacementMotionSolver, e.g. displacementSBRStress
      // (default is the medial-axis algorithm, 'displacementMedialAxis')
      //meshShrinker displacementMotionSolver;
      7b7967de
    • mattijs's avatar
      STYLE: duplicatePoints: indentation · 9c8492eb
      mattijs authored
      9c8492eb
    • mattijs's avatar
      STYLE: duplicatePoints: indentation · c83c99b3
      mattijs authored and Andrew Heather's avatar Andrew Heather committed
      c83c99b3
    • mattijs's avatar
      ENH: polyTopoChange: improved error message · d9aba8b0
      mattijs authored
      d9aba8b0