Skip to content
Snippets Groups Projects
  1. Apr 16, 2017
  2. Apr 13, 2017
  3. Apr 12, 2017
  4. Apr 11, 2017
  5. Apr 05, 2017
    • Henry Weller's avatar
      surfaceTensionModels::liquidProperties: New temperature-dependent surface tension model · 76579f58
      Henry Weller authored
      Description
          Temperature-dependent surface tension model in which the surface tension
          function provided by the phase Foam::liquidProperties class is used.
      
      Usage
          \table
              Property     | Description               | Required    | Default value
              phase        | Phase name                | yes         |
          \endtable
      
          Example of the surface tension specification:
          \verbatim
              sigma
              {
                  type    liquidProperties;
                  phase   water;
              }
          \endverbatim
      
      for use with e.g. compressibleInterFoam, see
      tutorials/multiphase/compressibleInterFoam/laminar/depthCharge2D
      76579f58
  6. Mar 31, 2017
  7. Mar 27, 2017
    • Henry Weller's avatar
      surfaceFilmModels::contactAngleForce: Added temperatureDependentContactAngleForce · cb1faea3
      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
      cb1faea3
  8. Mar 24, 2017
  9. Mar 22, 2017
  10. Mar 17, 2017
  11. Mar 14, 2017
  12. Mar 13, 2017
  13. Mar 10, 2017
  14. Mar 06, 2017
  15. Feb 28, 2017
    • Henry Weller's avatar
      rhoPimpleFoam: Added support for transonic flow of liquids and real gases · 99c992d6
      Henry Weller authored
      Both stardard SIMPLE and the SIMPLEC (using the 'consistent' option in
      fvSolution) are now supported for both subsonic and transonic flow of all
      fluid types.
      
      rhoPimpleFoam now instantiates the lower-level fluidThermo which instantiates
      either a psiThermo or rhoThermo according to the 'type' specification in
      thermophysicalProperties, see also commit 655fc787
      99c992d6
  16. Feb 27, 2017
  17. Feb 24, 2017
    • Henry Weller's avatar
      rhoSimpleFoam: Added support for transonic flow of liquids and real gases · 8504e436
      Henry Weller authored
      Both stardard SIMPLE and the SIMPLEC (using the 'consistent' option in
      fvSolution) are now supported for both subsonic and transonic flow of all
      fluid types.
      8504e436
    • Henry Weller's avatar
      rhoSimpleFoam: added support for compressible liquid flows · 655fc787
      Henry Weller authored
      rhoSimpleFoam now instantiates the lower-level fluidThermo which instantiates
      either a psiThermo or rhoThermo according to the 'type' specification in
      thermophysicalProperties, e.g.
      
      thermoType
      {
          type            hePsiThermo;
          mixture         pureMixture;
          transport       sutherland;
          thermo          janaf;
          equationOfState perfectGas;
          specie          specie;
          energy          sensibleInternalEnergy;
      }
      
      instantiates a psiThermo for a perfect gas with JANAF thermodynamics, whereas
      
      thermoType
      {
          type            heRhoThermo;
          mixture         pureMixture;
          properties      liquid;
          energy          sensibleInternalEnergy;
      }
      
      mixture
      {
          H2O;
      }
      
      instantiates a rhoThermo for water, see new tutorial
      compressible/rhoSimpleFoam/squareBendLiq.
      
      In order to support complex equations of state the pressure can no longer be
      unlimited and rhoSimpleFoam now limits the pressure rather than the density to
      handle start-up more robustly.
      
      For backward compatibility 'rhoMin' and 'rhoMax' can still be used in the SIMPLE
      sub-dictionary of fvSolution which are converted into 'pMax' and 'pMin' but it
      is better to set either 'pMax' and 'pMin' directly or use the more convenient
      'pMinFactor' and 'pMinFactor' from which 'pMax' and 'pMin' are calculated using
      the fixed boundary pressure or reference pressure e.g.
      
      SIMPLE
      {
          nNonOrthogonalCorrectors 0;
      
          pMinFactor      0.1;
          pMaxFactor      1.5;
      
          transonic       yes;
          consistent      yes;
      
          residualControl
          {
              p               1e-3;
              U               1e-4;
              e               1e-3;
              "(k|epsilon|omega)" 1e-3;
          }
      }
      655fc787
  18. Feb 18, 2017
    • Henry Weller's avatar
      thermophysicalProperties: New base-class for liquidProperties and in the future gasProperties · 80123f59
      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.
      80123f59
  19. Feb 17, 2017
    • Henry Weller's avatar
      thermophysicalModels: Changed specie thermodynamics from mole to mass basis · abc50e21
      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.
      abc50e21
  20. Feb 09, 2017
    • Henry Weller's avatar
      compressibleInterFoam: Completed LTS and semi-implicit MULES support · 1c8a0bdc
      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.
      1c8a0bdc
  21. Feb 08, 2017
  22. Feb 07, 2017
  23. Jan 30, 2017
  24. Jan 26, 2017
  25. Jan 25, 2017
  26. Jan 19, 2017
  27. Jan 17, 2017
    • Henry Weller's avatar
      Multi-phase solvers: Improved handling of inflow/outflow BCs in MULES · ad92287a
      Henry Weller authored
      Avoids slight phase-fraction unboundedness at entertainment BCs and improved
      robustness.
      
      Additionally the phase-fractions in the multi-phase (rather than two-phase)
      solvers are adjusted to avoid the slow growth of inconsistency ("drift") caused
      by solving for all of the phase-fractions rather than deriving one from the
      others.
      ad92287a
  28. Dec 19, 2016
    • Henry Weller's avatar
      reactingFoam::setRDeltaT: Add support for limiting the local time-step by the reaction rates · d36d8e37
      Henry Weller authored
      e.g. in the reactingFoam/laminar/counterFlowFlame2DLTS tutorial:
      
      PIMPLE
      {
          momentumPredictor no;
          nOuterCorrectors  1;
          nCorrectors     1;
          nNonOrthogonalCorrectors 0;
      
          maxDeltaT       1e-2;
          maxCo           1;
          alphaTemp       0.05;
          alphaY          0.05;
          Yref
          {
              O2          0.1;
              ".*"        1;
          }
          rDeltaTSmoothingCoeff 1;
          rDeltaTDampingCoeff 1;
      }
      
      will limit the LTS time-step according to the rate of consumption of 'O2'
      normalized by the reference mass-fraction of 0.1 and all other species
      normalized by the reference mass-fraction of 1.  Additionally the time-step
      factor of 'alphaY' is applied to all species.  Only the species specified in the
      'Yref' sub-dictionary are included in the LTS limiter and if 'alphaY' is omitted
      or set to 1 the reaction rates are not included in the LTS limiter.
      d36d8e37
  29. Dec 15, 2016
    • Henry Weller's avatar
      Rationalized heat release rate functions · 1a2c77ab
      Henry Weller authored
      Combined 'dQ()' and 'Sh()' into 'Qdot()' which returns the heat-release rate in
      the normal units [kg/m/s3] and used as the heat release rate source term in
      the energy equations, to set the field 'Qdot' in several combustion solvers
      and for the evaluation of the local time-step when running LTS.
      1a2c77ab
  30. Dec 14, 2016
  31. Dec 13, 2016