1. 16 Dec, 2020 1 commit
    • Sergio Ferraris's avatar
      ENH: adding non-uniform rho to incompressible two-phase turbulent models · 3db12bbd
      Sergio Ferraris authored and Andrew Heather's avatar Andrew Heather committed
      1) PhaseIncompressibleTurbulenceModel class was changed to use
         uniform alpha and non-uniform rho templates. This fits the need
         of incompressible two phase turbulence models.
      
      2) A new type DPMIncompressibleTurbulenceModel was created for
         non-uniform alpha and uniform rho. It is  used in single phase flows
         in DPM solvers where alpha represents the volumen occupancy.
      
      3) A new type incompressibleRhoTurbulenceModel  was created where
         non-uniform rho is allowed.
      
      4) A new base templated turbulent class for two-phase VOF named
         VoFphaseTurbulentTransportModel was implemented which is created
         templating on PhaseIncompressibleTurbulenceModel and
         incompressibleRhoTurbulenceModel
      
      5) In order to make the chnage to rho based VOF turbulence a help
         class was added incompressibleInterPhaseTransportModel templated
         on the mixing.
      3db12bbd
  2. 10 Dec, 2020 4 commits
  3. 09 Dec, 2020 1 commit
  4. 05 Aug, 2020 2 commits
  5. 03 Aug, 2020 1 commit
  6. 31 Jul, 2020 1 commit
  7. 16 Jul, 2020 2 commits
  8. 18 Jun, 2020 1 commit
  9. 17 Jun, 2020 1 commit
  10. 16 Jun, 2020 1 commit
  11. 11 Jun, 2020 1 commit
  12. 10 Jun, 2020 3 commits
    • Mark OLESEN's avatar
    • Andrew Heather's avatar
      COMP: Resolved compiler warning messages · e2ad9f08
      Andrew Heather authored
      e2ad9f08
    • Kutalmış Berçin's avatar
      ENH: add wall-function blending treatments · 07a5babd
      Kutalmış Berçin authored
          Please see the Extended Code Guide and header files for the details.
      
          ENH: add wall-function blending treatments to epsilonWallFunc
               adds `stepwise`, `max`, `binomial`, and `exponential` wall-function
               blending treatments:
          COMP: check backward compatibility for:
                `serial`
                `parallel`
                `serial restart`
                `parallel restart`
                computations in comparison to the following tutorials from v1906:
                `circuitBoardCooling  condensatingVessel  evaporationMultiComponent
                 hotRoom  movingBox  multiRegionHeaterRadiation  reverseBurner
                 solidQuenching2D`
          STYLE: simplify `forAll`s
      
          ENH: add new wall blending approaches into omegaWallFunction
               adds stepwise, max, binomial, and exponential wall function blending apprs.
               ensures/forces the backward compatibility:
                 - blended = true    (blending:BINOMIAL2) (default)
                 - blended = false   (blending:STEPWISE)
              simplifies forAlls
              deprecates objects:
                 - "blended" - use "blending::" options
                 - "includeG" - as was hardcoded
      
          ENH: add wall-func blending treatments into nutWallFuncs
          - nutWallFunction
          - nutUWallFunction
          - nutkWallFunction
          COMP: check backward compatibility for:
                - serial
                - parallel
                - serial restart
                - parallel restart
                computations in comparison to the following tutorials from v1906:
                - heatTransfer/buoyantSimpleFoam/buoyantCavity
                - compressible/rhoSimpleFoam/gasMixing/injectorPipe
      
          DOC: modify header docs in wallFuncs
          - nutUTabulatedWallFunction
          - nutUSpaldingWallFunction
          - nutURoughWallFunction
          - nutUBlendedWallFunction
            - REVERT: change write order
          - nutLowReWallFunction
          - kLowReWallFunction:
            - ENH: protect against zero-division error through 'Ceps2' entry
            - STYLE: remove few redundant empty lines
      07a5babd
  13. 02 Jun, 2020 1 commit
    • Mark OLESEN's avatar
      ENH: unify use of dictionary method names · 3e43edf0
      Mark OLESEN authored
      - previously introduced `getOrDefault` as a dictionary _get_ method,
        now complete the transition and use it everywhere instead of
        `lookupOrDefault`. This avoids mixed usage of the two methods that
        are identical in behaviour, makes for shorter names, and promotes
        the distinction between "lookup" access (ie, return a token stream,
        locate and return an entry) and "get" access (ie, the above with
        conversion to concrete types such as scalar, label etc).
      3e43edf0
  14. 23 May, 2020 1 commit
  15. 07 May, 2020 1 commit
  16. 04 May, 2020 1 commit
  17. 01 May, 2020 1 commit
  18. 15 Apr, 2020 1 commit
  19. 08 Apr, 2020 1 commit
  20. 11 Mar, 2020 2 commits
  21. 23 Jan, 2020 1 commit
  22. 21 Jan, 2020 1 commit
    • Kutalmış Berçin's avatar
      BUG: add switch for nu:DphitEff in kEpsilonPhitF (fixes #1560) · c234acf1
      Kutalmış Berçin authored
          Including `nu` in `DphitEff` even though it is not present in (LUU:Eq. 17)
          provided higher level of resemblance to benchmarks for the tests considered,
          particularly for the peak skin friction (yet, pressure-related predictions
          were unaffected). Users can switch off `nu` in `DphitEff` by using
          `includeNu` entry in `kEpsilonPhitFCoeffs` in order to follow the
          reference paper thereat. `includeNu` is left `true` by default.
          See GitLab issue #1560,
      
        LUU: Laurence, D. R., Uribe, J. C., & Utyuzhnikov, S. V. (2005).
      c234acf1
  23. 03 Jan, 2020 1 commit
    • Kutalmış Berçin's avatar
      DEFEATURE: deprecate v2f model in favour of kEpsilonPhitF · ab0dd1f1
      Kutalmış Berçin authored and Andrew Heather's avatar Andrew Heather committed
        - kEpsilonPhitF is a kEpsilon-based model which originated
          from (Durbin, 1995)’s v2-f methodology. However, the majority of
          v2-f model variants proved to be numerically stiff for segregated
          solution algorithms due to the coupled formulations of v2 and f fields,
          particularly on wall boundaries.
      
          The v2-f variant (i.e. OpenFOAM’s v2f model) due to
          (Lien and Kalitzin, 2001) reformulated the original v2-f model to enable
          segregated computations; however, a number of shortcomings regarding
          the model fidelity were reported in the literature.
      
          To overcome the shortcomings of the v2-f methodology, the v2-f approach
          was re-evaluated by (Laurence et al., 2005) by transforming v2 scale into
          its equivalent non-dimensional form, i.e. phit, to reduce the numerical
          stiffness.
          This variant, i.e. kEpsilonPhitF, is believed to provide numerical
          robustness, and insensitivity to grid anomalies while retaining the
          theoretical model fidelity of the original v2-f model.
      
          Accordingly the v2f RANS model is deprecated in favour of the variant
          kEpsilonPhitF model.
      ab0dd1f1
  24. 02 Jan, 2020 2 commits
    • sergio's avatar
      BUG: Fix issue 1535 in turbulentTemperatureRadCoupledMixed. · 122e4965
      sergio authored
          When a contact resistance is used the T field on each coupled
          patch is different due to the thermal resistance. Thus, instead
          of solving for a unique Tw at the wall, we solve for Tw1 at one side
          then, the Tnbr internal becomes Tw2, which is the T of the nbr
          patch.
      122e4965
    • sergio's avatar
      BUG: Fix issue 1535 in turbulentTemperatureRadCoupledMixed. · 0ff95341
      sergio authored
      When a contact resistance is used the T field on each coupled
      patch is different due to the thermal resistance. Thus, instead
      of solving for a unique Tw at the wall, we solve for Tw1 at one side
      then, the Tnbr internal becomes Tw2, which is the T of the nbr patch.
      0ff95341
  25. 20 Dec, 2019 1 commit
  26. 19 Dec, 2019 1 commit
  27. 18 Dec, 2019 2 commits
    • Andrew Heather's avatar
      58009f65
    • Kutalmış Berçin's avatar
      ENH: new RAS model: kEpsilonPhitF · e38e5d67
      Kutalmış Berçin authored
          ENH: modify fWallFunction for kEpsilonPhitF model
      
          The k-epsilon-phit-f turbulence closure model for incompressible and
          compressible flows.
      
          The model is a three-transport-equation linear-eddy-viscosity turbulence
          closure model alongside an elliptic relaxation equation:
            - Turbulent kinetic energy, \c k,
            - Turbulent kinetic energy dissipation rate, \c epsilon,
            - Normalised wall-normal fluctuating velocity scale, \c phit,
            - Elliptic relaxation factor, \c f.
      
          Reference:
          \verbatim
              Standard model (Tag:LUU):
                  Laurence, D. R., Uribe, J. C., & Utyuzhnikov, S. V. (2005).
                  A robust formulation of the v2−f model.
                  Flow, Turbulence and Combustion, 73(3-4), 169–185.
                  DOI:10.1007/s10494-005-1974-8
          \endverbatim
      
          The default model coefficients are (LUU:Eqs. 19-20):
          \verbatim
              kEpsilonPhitFCoeffs
              {
                  Cmu         0.22,    // Turbulent viscosity constant
                  Ceps1a      1.4,     // Model constant for epsilon
                  Ceps1b      1.0,     // Model constant for epsilon
                  Ceps1c      0.05,    // Model constant for epsilon
                  Ceps2       1.9,     // Model constant for epsilon
                  Cf1         1.4,     // Model constant for f
                  Cf2         0.3,     // Model constant for f
                  CL          0.25,    // Model constant for L
                  Ceta        110.0,   // Model constant for L
                  CT          6.0,     // Model constant for T
                  sigmaK      1.0,     // Turbulent Prandtl number for k
                  sigmaEps    1.3,     // Turbulent Prandtl number for epsilon
                  sigmaPhit   1.0,     // Turbulent Prandtl number for phit = sigmaK
              }
          \endverbatim
      
      Note
          The name of the original variable replacing 'v2' is 'phi' (LUU:Eq. 14).
          However, the name 'phi' preexisted in OpenFOAM; therefore, this name was
          replaced by 'phit'
      e38e5d67
  28. 12 Dec, 2019 3 commits