1. 05 Aug, 2020 1 commit
  2. 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
  3. 31 Oct, 2019 1 commit
  4. 22 Aug, 2019 1 commit
  5. 07 Jun, 2019 1 commit
    • Sergio Ferraris's avatar
      INT: Org integration of VOF, Euler phase solvers and models. · 8170f2ad
      Sergio Ferraris authored
      Integration of VOF MULES new interfaces. Update of VOF solvers and all instances
      of MULES in the code.
      Integration of reactingTwoPhaseEuler and reactingMultiphaseEuler solvers and sub-models
      Updating reactingEuler tutorials accordingly (most of them tested)
      
      New eRefConst thermo used in tutorials. Some modifications at thermo specie level
      affecting mostly eThermo. hThermo mostly unaffected
      
      New chtMultiRegionTwoPhaseEulerFoam solver for quenching and tutorial.
      
      Phases sub-models for reactingTwoPhaseEuler and reactingMultiphaseEuler were moved
      to src/phaseSystemModels/reactingEulerFoam in order to be used by BC for
      chtMultiRegionTwoPhaseEulerFoam.
      
      Update of interCondensatingEvaporatingFoam solver.
      8170f2ad
  6. 06 Feb, 2019 1 commit
  7. 11 Dec, 2018 1 commit
  8. 13 Dec, 2018 1 commit
    • Mark Olesen's avatar
      ENH: consolidate handling of mandatory/optional command arguments · 5d9e278e
      Mark Olesen authored
      - for some special cases we wish to mark command-line arguments as
        being optional, in order to do our own treatment. For example,
        when an arbitrary number of arguments should be allowed.
      
        Now tag this situation with argList::noMandatoryArgs().
        The argList::argsMandatory() query can then be used in any further
        logic, including the standard default argument checking.
      
      - with the new default check, can consolidate the special-purpose
      
            "setRootCaseNonMandatoryArgs.H"
      
        into the regular
      
            "setRootCase.H"
      
      - revert to a simple "setRootCase.H" and move all the listing related
        bits to a "setRootCaseLists.H" file. This leaves the information
        available for solvers, or whoever else wishes, without being
        introduced everywhere.
      
      - add include guards and scoping to the listing files and rename to
        something less generic.
      
           listOptions.H -> setRootCaseListOptions.H
           listOutput.H  -> setRootCaseListOutput.H
      5d9e278e
  9. 27 Apr, 2018 1 commit
    • Mark Olesen's avatar
      ENH: make format of ExecutionTime = ... output configurable (issue #788) · dd8341f6
      Mark Olesen authored
      - controlled by the the 'printExecutionFormat' InfoSwitch in
        etc/controlDict
      
            // Style for "ExecutionTime = " output
            // - 0 = seconds (with trailing 's')
            // - 1 = day-hh:mm:ss
      
         ExecutionTime = 112135.2 s  ClockTime = 113017 s
      
         ExecutionTime = 1-07:08:55.20  ClockTime = 1-07:23:37
      
      - Callable via the new Time::printExecutionTime() method,
        which also helps to reduce clutter in the applications.
        Eg,
      
           runTime.printExecutionTime(Info);
      
        vs
      
           Info<< "ExecutionTime = " << runTime.elapsedCpuTime() << " s"
               << "  ClockTime = " << runTime.elapsedClockTime() << " s"
               << nl << endl;
      
      --
      
      ENH: return elapsedClockTime() and clockTimeIncrement as double
      
      - previously returned as time_t, which is less portable.
      dd8341f6
  10. 26 Mar, 2018 1 commit
    • Mark Olesen's avatar
      STYLE: consistent lookupOrDefault template parameters · 36719bf5
      Mark Olesen authored
      - in many cases can just use lookupOrDefault("key", bool) instead of
        lookupOrDefault<bool> or lookupOrDefault<Switch> since reading a
        bool from an Istream uses the Switch(Istream&) anyhow
      
      STYLE: relocated Switch string names into file-local scope
      36719bf5
  11. 02 Jul, 2018 1 commit
    • Mark Olesen's avatar
      ENH: improve controls for Time (issue #910) · 2662042d
      Mark Olesen authored
      - relocate some standard functionality to TimePaths to allow a lighter
        means of managing time directories without using the entire Time
        mechanism.
      
      - optional enableLibs for Time construction (default is on)
        and a corresponding argList::noLibs() and "-no-libs" option
      
      STYLE:
      
      - mark Time::outputTime() as deprecated MAY-2016
      
      - use pre-increment for runTime, although there is no difference in
        behaviour or performance.
      2662042d
  12. 11 Jan, 2018 1 commit
  13. 31 Oct, 2016 1 commit
  14. 19 Sep, 2016 1 commit
  15. 08 May, 2016 1 commit
  16. 13 Feb, 2016 1 commit
    • Henry Weller's avatar
      Solvers: Added support for extrapolated pressure boundary conditions · fc2ce737
      Henry Weller authored
      The boundary conditions of HbyA are now constrained by the new "constrainHbyA"
      function which applies the velocity boundary values for patches for which the
      velocity cannot be modified by assignment and pressure extrapolation is
      not specified via the new
      "fixedFluxExtrapolatedPressureFvPatchScalarField".
      
      The new function "constrainPressure" sets the pressure gradient
      appropriately for "fixedFluxPressureFvPatchScalarField" and
      "fixedFluxExtrapolatedPressureFvPatchScalarField" boundary conditions to
      ensure the evaluated flux corresponds to the known velocity values at
      the boundary.
      
      The "fixedFluxPressureFvPatchScalarField" boundary condition operates
      exactly as before, ensuring the correct flux at fixed-flux boundaries by
      compensating for the body forces (gravity in particular) with the
      pressure gradient.
      
      The new "fixedFluxExtrapolatedPressureFvPatchScalarField" boundary
      condition may be used for cases with or without body-forces to set the
      pressure gradient to compensate not only for the body-force but also the
      extrapolated "HbyA" which provides a second-order boundary condition for
      pressure.  This is useful for a range a problems including impinging
      flow, extrapolated inlet conditions with body-forces or for highly
      viscous flows, pressure-induced separation etc.  To test this boundary
      condition at walls in the motorBike tutorial case set
      
          lowerWall
          {
              type            fixedFluxExtrapolatedPressure;
          }
      
          motorBikeGroup
          {
              type            fixedFluxExtrapolatedPressure;
          }
      
      Currently the new extrapolated pressure boundary condition is supported
      for all incompressible and sub-sonic compressible solvers except those
      providing implicit and tensorial porosity support.  The approach will be
      extended to cover these solvers and options in the future.
      
      Note: the extrapolated pressure boundary condition is experimental and
      requires further testing to assess the range of applicability,
      stability, accuracy etc.
      
      Henry G. Weller
      CFD Direct Ltd.
      fc2ce737
  17. 03 Dec, 2015 1 commit
  18. 13 Nov, 2015 1 commit
  19. 11 Sep, 2015 1 commit
  20. 26 Aug, 2015 1 commit
  21. 19 Jul, 2015 1 commit
  22. 26 Jun, 2015 1 commit
    • Henry Weller's avatar
      reactingTwoPhaseEulerFoam: Added experimental run-time selectable LTS support · 1d16db3f
      Henry Weller authored
      Select LTS via the ddtScheme:
      
          ddtSchemes
          {
              default         localEuler rDeltaT;
          }
      
      The LTS algorithm is currently controlled with the standard settings in
      controlDict, e.g.:
      
          maxCo           0.5;
          maxDeltaT       2e-8;
      
      with the addition of the optional rDeltaT smoothing coefficient:
      
          rDeltaTSmoothingCoeff 0.02;
      
      which defaults to 0.02.
      
          ddtSchemes
          {
              default         localEuler rDeltaT;
          }
      1d16db3f
  23. 25 Jun, 2015 3 commits
  24. 12 Jun, 2015 2 commits
    • Henry Weller's avatar
      reactingTwoPhaseEulerFoam: New twoPhaseEulerFoam supporting mass-transfer and reactions · eb53f9bd
      Henry Weller authored
      Multi-species, mass-transfer and reaction support and multi-phase
      structure provided by William Bainbridge.
      
      Integration of the latest p-U and face-p_U algorithms with William's
      multi-phase structure is not quite complete due to design
      incompatibilities which needs further development.  However the
      integration of the functionality is complete.
      
      The results of the tutorials are not exactly the same for the
      twoPhaseEulerFoam and reactingTwoPhaseEulerFoam solvers but are very
      similar.  Further analysis in needed to ensure these differences are
      physical or to resolve them; in the meantime the twoPhaseEulerFoam
      solver will be maintained.
      eb53f9bd
    • Henry Weller's avatar
      twoPhaseEulerFoam: Minor reorganization · 360604b1
      Henry Weller authored
      360604b1
  25. 29 May, 2015 1 commit
    • Henry's avatar
      MRF: Separate MRF from fvOptions · c3ee2348
      Henry authored
      fvOptions does not have the appropriate structure to support MRF as it
      is based on option selection by user-specified fields whereas MRF MUST
      be applied to all velocity fields in the particular solver.  A
      consequence of the particular design choices in fvOptions made it
      difficult to support MRF for multiphase and it is easier to support
      frame-related and field related options separately.
      
      Currently the MRF functionality provided supports only rotations but
      the structure will be generalized to support other frame motions
      including linear acceleration, SRF rotation and 6DoF which will be
      run-time selectable.
      c3ee2348
  26. 28 Apr, 2015 1 commit
  27. 27 Apr, 2015 1 commit
    • Henry's avatar
      twoPhaseEulerFoam: Added experimental face-based momentum equation formulation · fc6b44ee
      Henry authored
      This formulation provides C-grid like pressure-flux staggering on an
      unstructured mesh which is hugely beneficial for Euler-Euler multiphase
      equations as it allows for all forces to be treated in a consistent
      manner on the cell-faces which provides better balance, stability and
      accuracy.  However, to achieve face-force consistency the momentum
      transport terms must be interpolated to the faces reducing accuracy of
      this part of the system but this is offset by the increase in accuracy
      of the force-balance.
      
      Currently it is not clear if this face-based momentum equation
      formulation is preferable for all Euler-Euler simulations so I have
      included it on a switch to allow evaluation and comparison with the
      previous cell-based formulation.  To try the new algorithm simply switch
      it on, e.g.:
      
      PIMPLE
      {
          nOuterCorrectors 3;
          nCorrectors      1;
          nNonOrthogonalCorrectors 0;
          faceMomentum     yes;
      }
      
      It is proving particularly good for bubbly flows, eliminating the
      staggering patterns often seen in the air velocity field with the
      previous algorithm, removing other spurious numerical artifacts in the
      velocity fields and improving stability and allowing larger time-steps
      For particle-gas flows the advantage is noticeable but not nearly as
      pronounced as in the bubbly flow cases.
      
      Please test the new algorithm on your cases and provide feedback.
      
      Henry G. Weller
      CFD Direct
      fc6b44ee
  28. 12 Apr, 2015 1 commit
  29. 11 Apr, 2015 1 commit
  30. 08 Apr, 2015 1 commit
  31. 05 Apr, 2015 1 commit
    • Henry's avatar
      twoPhaseEulerFoam: Add partial-elimination to phase flux and velocity correction · 724b0fdb
      Henry authored
      Improves stability and convergence of systems in which drag dominates
      e.g. small particles in high-speed gas flow.
      
      Additionally a new ddtPhiCorr strategy is included in which correction
      is applied only where the phases are nearly pure.  This reduces
      staggering patters near the free-surface of bubble-column simulations.
      724b0fdb
  32. 17 Mar, 2015 1 commit
  33. 12 Feb, 2015 2 commits
  34. 09 Feb, 2015 1 commit
  35. 08 May, 2014 1 commit
  36. 29 Apr, 2014 1 commit