1. 18 Jun, 2020 1 commit
  2. 16 Jun, 2020 1 commit
  3. 11 Jun, 2020 1 commit
  4. 10 Jun, 2020 3 commits
    • Mark Olesen's avatar
    • Andrew Heather's avatar
      COMP: Resolved compiler warning messages · e2ad9f08
      Andrew Heather authored
      e2ad9f08
    • Kutalmis Bercin's avatar
      ENH: add wall-function blending treatments · 07a5babd
      Kutalmis Bercin 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
  5. 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
  6. 04 May, 2020 1 commit
  7. 01 May, 2020 1 commit
  8. 15 Apr, 2020 1 commit
  9. 11 Mar, 2020 2 commits
  10. 23 Jan, 2020 1 commit
  11. 21 Jan, 2020 1 commit
    • Kutalmis Bercin's avatar
      BUG: add switch for nu:DphitEff in kEpsilonPhitF (fixes #1560) · c234acf1
      Kutalmis Bercin 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
  12. 03 Jan, 2020 1 commit
    • Kutalmis Bercin's avatar
      DEFEATURE: deprecate v2f model in favour of kEpsilonPhitF · ab0dd1f1
      Kutalmis Bercin authored
        - 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 retaini...
      ab0dd1f1
  13. 20 Dec, 2019 1 commit
  14. 19 Dec, 2019 1 commit
  15. 18 Dec, 2019 2 commits
    • Andrew Heather's avatar
      58009f65
    • Kutalmis Bercin's avatar
      ENH: new RAS model: kEpsilonPhitF · e38e5d67
      Kutalmis Bercin 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
  16. 12 Dec, 2019 2 commits
  17. 31 Oct, 2019 1 commit
  18. 02 Nov, 2019 1 commit
  19. 02 Oct, 2019 2 commits
    • Kutalmis Bercin's avatar
      ENH: Subtle renovations in wall function documentation and input · 458738f0
      Kutalmis Bercin authored
        - Improves header file documentations
        - Adds const specifier to various objects
        - Allows various model constants to be user-defined
        - Changes from lookupOrDefault() to getOrDefault()
        - Consistent namespace usage:
          - If the WF belongs to only Foam:: namespace, use Foam:: explicitly
          - If the WF belongs to more than one namespaces, put the WF in namespace
            parentheses
        - Adds the missing dashes in comments required by Doxygen
        - Corrects capitalisation in comments
        - The terminology 'viscous sublayer' was preferred over 'laminar sublayer'
          due to the fact that the sublayer is not laminar.
        - The order of initialisation of fields is changed to be the same across all.
      458738f0
    • Kutalmis Bercin's avatar
      ENH: Integrated OpenFOAM.org developments for wall functions · ce9ea1ca
      Kutalmis Bercin authored
      OpenFOAM.org commits for
        src/TurbulenceModels/turbulenceModels/derivedFvPatchFields/wallFunctions
      were reviewed.
      
      The parts of the commits made by OpenFOAM.org removing various code
      duplications across wall functions were picked up by keeping the remaining
      functionalities the same.
      
      The duplications were mainly due to:
        - wall function model coefficients
        - yPlusLam(), checkPatch(), write() methods
      
      The duplications were united under the base nutWallFunction.
      ce9ea1ca
  20. 24 Sep, 2019 1 commit
  21. 29 Jul, 2019 1 commit
    • Mark Olesen's avatar
      ENH: additional contiguous traits (#1378) · 1d79c045
      Mark Olesen authored
      - change contiguous from a series of global functions to separate
        templated traits classes:
      
          - is_contiguous
          - is_contiguous_label
          - is_contiguous_scalar
      
        The static constexpr 'value' and a constexpr conversion operator
        allow use in template expressions.  The change also makes it much
        easier to define general traits and to inherit from them.
      
        The is_contiguous_label and is_contiguous_scalar are special traits
        for handling data of homogeneous components of the respective types.
      1d79c045
  22. 16 Jul, 2019 1 commit
  23. 12 Jul, 2019 1 commit
  24. 31 May, 2019 1 commit
  25. 13 Feb, 2019 1 commit
  26. 06 Feb, 2019 2 commits
  27. 30 Jan, 2019 1 commit
  28. 17 Jan, 2019 1 commit
  29. 09 Jan, 2019 1 commit
  30. 03 Jan, 2019 1 commit
    • Mark Olesen's avatar
      ENH: additional read guards for dimensionedType. input consistency (#762, #1148) · 6a448016
      Mark Olesen authored
      - provide a lookupOrDefault constructor form, since this is a fairly
        commonly used requirement and simplifies the calling sequence.
      
        Before
      
            dimensionedScalar rhoMax
            (
                dimensionedScalar::lookupOrDefault
                (
                    "rhoMax",
                    pimple.dict(),
                    dimDensity,
                    GREAT
                )
           );
      
        After
      
            dimensionedScalar rhoMax("rhoMax", dimDensity, GREAT, pimple.dict());
      
      - read, readIfPresent methods with alternative lookup names.
      
      - Mark the Istream related constructors with compile-time deprecated
        warnings.
      
      BUG: read, readIfPresent methods not handling optional dimensions (#1148)
      6a448016
  31. 11 Dec, 2018 1 commit
    • Mark Olesen's avatar
      ENH: use Zero when zero-initializing types · 1d85fecf
      Mark Olesen authored
      - makes the intent clearer and avoids the need for additional
        constructor casting. Eg,
      
            labelList(10, Zero)    vs.  labelList(10, 0)
            scalarField(10, Zero)  vs.  scalarField(10, scalar(0))
            vectorField(10, Zero)  vs.  vectorField(10, vector::zero)
      1d85fecf
  32. 03 Nov, 2018 1 commit
  33. 19 Oct, 2018 1 commit