Skip to content
Snippets Groups Projects
  1. Jun 20, 2017
    • Andrew Heather's avatar
      INT: Integration of isoAdvector and supporting material · a6ef8b90
      Andrew Heather authored
      Community contribution from Johan Roenby, DHI
      
      IsoAdvector is a geometric Volume-of-Fluid method for advection of a
      sharp interface between two incompressible fluids. It works on both
      structured and unstructured meshes with no requirements on cell shapes.
      IsoAdvector is as an alternative choice for the interface compression
      treatment with the MULES limiter implemented in the interFoam family
      of solvers.
      
      The isoAdvector concept and code was developed at DHI and was funded
      by a Sapere Aude postdoc grant to Johan Roenby from The Danish Council
      for Independent Research | Technology and Production Sciences (Grant-ID:
      DFF - 1337-00118B - FTP).
      Co-funding is also provided by the GTS grant to DHI from the Danish
      Agency for Science, Technology and Innovation.
      
      The ideas behind and performance of the isoAdvector scheme is
      documented in:
      
          Roenby J, Bredmose H, Jasak H. 2016 A computational method for sharp
          interface  advection. R. Soc. open sci. 3: 160405.
          [http://dx.doi.org/10.1098/rsos.160405](http://dx.doi.org/10.1098/rsos.160405)
      
      Videos showing isoAdvector's performance with a number of standard
      test cases can be found in this youtube channel:
      
          https://www.youtube.com/channel/UCt6Idpv4C8TTgz1iUX0prAA
      
      Project contributors:
      
      * Johan Roenby <jro@dhigroup.com> (Inventor and main developer)
      * Hrvoje Jasak <hrvoje.jasak@fsb.hr> (Consistent treatment of
        boundary faces including processor boundaries, parallelisation,
        code clean up
      * Henrik Bredmose <hbre@dtu.dk> (Assisted in the conceptual
        development)
      * Vuko Vukcevic <vuko.vukcevic@fsb.hr> (Code review, profiling,
        porting to foam-extend, bug fixing, testing)
      * Tomislav Maric <tomislav@sourceflux.de> (Source file
        rearrangement)
      * Andy Heather <a.heather@opencfd.co.uk> (Integration into OpenFOAM
        for v1706 release)
      
      See the integration repository below to see the full set of changes
      implemented for release into OpenFOAM v1706
      
          https://develop.openfoam.com/Community/Integration-isoAdvector
      a6ef8b90
  2. Jun 19, 2017
    • sergio's avatar
      Adding alphaEqn.H with interpolation method. · 6ff341b5
      sergio authored
      Adding special alphaCourantNo for overlaping
      Adding bounded term to UEq.H for overInterDyMFoam
      Changing to NO_WRITE for the cellMask field
      Changing twoSimpleRotors tutorial to open domain
      6ff341b5
  3. Jun 14, 2017
    • mattijs's avatar
      ENH: overset: Initial release of overset capability. · fd665b4a
      mattijs authored
      Adds overset discretisation to selected physics:
      - diffusion : overLaplacianDyMFoam
      - incompressible steady : overSimpleFoam
      - incompressible transient : overPimpleDyMFoam
      - compressible transient: overRhoPimpleDyMFoam
      - two-phase VOF: overInterDyMFoam
      
      The overset method chosen is a parallel, fully implicit implementation
      whereby the interpolation (from donor to acceptor) is inserted as an
      adapted discretisation on the donor cells, such that the resulting matrix
      can be solved using the standard linear solvers.
      
      Above solvers come with a set of tutorials, showing how to create and set-up
      simple simulations from scratch.
      fd665b4a
  4. Jun 02, 2017
  5. May 31, 2017
  6. May 24, 2017
  7. May 19, 2017
  8. May 17, 2017
  9. Jun 08, 2017
  10. May 03, 2017
  11. Apr 27, 2017
  12. Apr 24, 2017
  13. Apr 20, 2017
    • Henry Weller's avatar
      The "<type>Coeffs" sub-dictionary is now optional for most model parameters · 5c518365
      Henry Weller authored
      except turbulence and lagrangian which will also be updated shortly.
      
      For example in the nonNewtonianIcoFoam offsetCylinder tutorial the viscosity
      model coefficients may be specified in the corresponding "<type>Coeffs"
      sub-dictionary:
      
      transportModel  CrossPowerLaw;
      
      CrossPowerLawCoeffs
      {
          nu0         [0 2 -1 0 0 0 0]  0.01;
          nuInf       [0 2 -1 0 0 0 0]  10;
          m           [0 0 1 0 0 0 0]   0.4;
          n           [0 0 0 0 0 0 0]   3;
      }
      
      BirdCarreauCoeffs
      {
          nu0         [0 2 -1 0 0 0 0]  1e-06;
          nuInf       [0 2 -1 0 0 0 0]  1e-06;
          k           [0 0 1 0 0 0 0]   0;
          n           [0 0 0 0 0 0 0]   1;
      }
      
      which allows a quick change between models, or using the simpler
      
      transportModel  CrossPowerLaw;
      
      nu0         [0 2 -1 0 0 0 0]  0.01;
      nuInf       [0 2 -1 0 0 0 0]  10;
      m           [0 0 1 0 0 0 0]   0.4;
      n           [0 0 0 0 0 0 0]   3;
      
      if quick switching between models is not required.
      
      To support this more convenient parameter specification the inconsistent
      specification of seedSampleSet in the streamLine and wallBoundedStreamLine
      functionObjects had to be corrected from
      
          // Seeding method.
          seedSampleSet   uniform;  //cloud; //triSurfaceMeshPointSet;
      
          uniformCoeffs
          {
              type        uniform;
              axis        x;  //distance;
      
              // Note: tracks slightly offset so as not to be on a face
              start       (-1.001 -0.05 0.0011);
              end         (-1.001 -0.05 1.0011);
              nPoints     20;
          }
      
      to the simpler
      
          // Seeding method.
          seedSampleSet
          {
              type        uniform;
              axis        x;  //distance;
      
              // Note: tracks slightly offset so as not to be on a face
              start       (-1.001 -0.05 0.0011);
              end         (-1.001 -0.05 1.0011);
              nPoints     20;
          }
      
      which also support the "<type>Coeffs" form
      
          // Seeding method.
          seedSampleSet
          {
              type        uniform;
      
              uniformCoeffs
              {
                  axis        x;  //distance;
      
                  // Note: tracks slightly offset so as not to be on a face
                  start       (-1.001 -0.05 0.0011);
                  end         (-1.001 -0.05 1.0011);
                  nPoints     20;
              }
          }
      5c518365
  14. Apr 16, 2017
  15. Apr 12, 2017
  16. Apr 11, 2017
  17. Apr 05, 2017
  18. Mar 31, 2017
  19. Mar 28, 2017
  20. Mar 27, 2017
    • Henry Weller's avatar
      surfaceFilmModels::contactAngleForce: Added temperatureDependentContactAngleForce · 054eec50
      Henry Weller authored
      Created a base-class from contactAngleForce from which the
      distributionContactAngleForce (for backward compatibility) and the new
      temperatureDependentContactAngleForce are derived:
      
      Description
          Temperature dependent contact angle force
      
          The contact angle in degrees is specified as a \c Function1 type, to
          enable the use of, e.g.  contant, polynomial, table values.
      
      See also
          Foam::regionModels::surfaceFilmModels::contactAngleForce
          Foam::Function1Types
      
      SourceFiles
          temperatureDependentContactAngleForce.C
      054eec50
  21. Mar 24, 2017
  22. Mar 17, 2017
  23. Mar 14, 2017
  24. Mar 06, 2017
  25. Feb 27, 2017
  26. Mar 21, 2017
  27. Feb 23, 2017
  28. Feb 18, 2017
    • Henry Weller's avatar
      thermophysicalProperties: New base-class for liquidProperties and in the future gasProperties · d2be6454
      Henry Weller authored
      Description
          Base-class for thermophysical properties of solids, liquids and gases
          providing an interface compatible with the templated thermodynamics
          packages.
      
      liquidProperties, solidProperties and thermophysicalFunction libraries have been
      combined with the new thermophysicalProperties class into a single
      thermophysicalProperties library to simplify compilation and linkage of models,
      libraries and applications dependent on these classes.
      d2be6454
  29. Feb 17, 2017
    • Henry Weller's avatar
      thermophysicalModels: Changed specie thermodynamics from mole to mass basis · c52e4b58
      Henry Weller authored
      The fundamental properties provided by the specie class hierarchy were
      mole-based, i.e. provide the properties per mole whereas the fundamental
      properties provided by the liquidProperties and solidProperties classes are
      mass-based, i.e. per unit mass.  This inconsistency made it impossible to
      instantiate the thermodynamics packages (rhoThermo, psiThermo) used by the FV
      transport solvers on liquidProperties.  In order to combine VoF with film and/or
      Lagrangian models it is essential that the physical propertied of the three
      representations of the liquid are consistent which means that it is necessary to
      instantiate the thermodynamics packages on liquidProperties.  This requires
      either liquidProperties to be rewritten mole-based or the specie classes to be
      rewritten mass-based.  Given that most of OpenFOAM solvers operate
      mass-based (solve for mass-fractions and provide mass-fractions to sub-models it
      is more consistent and efficient if the low-level thermodynamics is also
      mass-based.
      
      This commit includes all of the changes necessary for all of the thermodynamics
      in OpenFOAM to operate mass-based and supports the instantiation of
      thermodynamics packages on liquidProperties.
      
      Note that most users, developers and contributors to OpenFOAM will not notice
      any difference in the operation of the code except that the confusing
      
          nMoles     1;
      
      entries in the thermophysicalProperties files are no longer needed or used and
      have been removed in this commet.  The only substantial change to the internals
      is that species thermodynamics are now "mixed" with mass rather than mole
      fractions.  This is more convenient except for defining reaction equilibrium
      thermodynamics for which the molar rather than mass composition is usually know.
      The consequence of this can be seen in the adiabaticFlameT, equilibriumCO and
      equilibriumFlameT utilities in which the species thermodynamics are
      pre-multiplied by their molecular mass to effectively convert them to mole-basis
      to simplify the definition of the reaction equilibrium thermodynamics, e.g. in
      equilibriumCO
      
          // Reactants (mole-based)
          thermo FUEL(thermoData.subDict(fuelName)); FUEL *= FUEL.W();
      
          // Oxidant (mole-based)
          thermo O2(thermoData.subDict("O2")); O2 *= O2.W();
          thermo N2(thermoData.subDict("N2")); N2 *= N2.W();
      
          // Intermediates (mole-based)
          thermo H2(thermoData.subDict("H2")); H2 *= H2.W();
      
          // Products (mole-based)
          thermo CO2(thermoData.subDict("CO2")); CO2 *= CO2.W();
          thermo H2O(thermoData.subDict("H2O")); H2O *= H2O.W();
          thermo CO(thermoData.subDict("CO")); CO *= CO.W();
      
          // Product dissociation reactions
      
          thermo CO2BreakUp
          (
              CO2 == CO + 0.5*O2
          );
      
          thermo H2OBreakUp
          (
              H2O == H2 + 0.5*O2
          );
      
      Please report any problems with this substantial but necessary rewrite of the
      thermodynamic at https://bugs.openfoam.org
      
      Henry G. Weller
      CFD Direct Ltd.
      c52e4b58
  30. Feb 09, 2017
    • Henry Weller's avatar
      compressibleInterFoam: Completed LTS and semi-implicit MULES support · b167c95f
      Henry Weller authored
      Now the interFoam and compressibleInterFoam families of solvers use the same
      alphaEqn formulation and supporting all of the MULES options without
      code-duplication.
      
      The semi-implicit MULES support allows running with significantly larger
      time-steps but this does reduce the interface sharpness.
      b167c95f
  31. Feb 08, 2017
  32. Feb 07, 2017
  33. Jan 30, 2017
  34. Jan 26, 2017