1. 22 Dec, 2020 1 commit
  2. 16 Dec, 2020 1 commit
  3. 14 Dec, 2020 1 commit
    • Andrew Heather's avatar
      ENH: Function objects - added new 'multiply' function object · 75769add
      Andrew Heather authored
      Multiplies a given list of (at least two or more) fields and outputs the
      result into a new field.
      
          fieldResult = field1 * field2 * ... * fieldN
      
      Minimal example by using \c system/controlDict.functions:
      
          multiply1
          {
              // Mandatory entries (unmodifiable)
              type    multiply;
              libs    (fieldFunctionObjects);
      
              // Mandatory (inherited) entry (runtime modifiable)
              fields  (<field1> <field2> ... <fieldN>);
      
              ...
          }
      75769add
  4. 09 Dec, 2020 1 commit
  5. 30 Nov, 2020 2 commits
    • Mark Olesen's avatar
      ENH: support multiple weights on some field function objects (#1930) · ab692caf
      Mark Olesen authored
      - weight fields are combined by multiplication
      
        - volFieldValue:
          * 0-N scalar fields
      
        - surfaceFieldValue:
          * 0-N scalar fields
          * 0-1 vector fields
      
        In some cases this can be used to avoid creating additional
        fields.
      
            weightFields  (rho U);
        vs.
            derivedFields (rhoU);
            weightField   rhoU;
      ab692caf
    • Mark Olesen's avatar
      ENH: support surfaceFieldValue on multiple faceZones or patches (#1874) · 6cf81518
      Mark Olesen authored
      - additional "names" entry to specify a word/regex list of selections
        For example,
        {
            type    patch;
            name    inlets;
            names   ("inlet_[0-9].*" inlet);
        }
      
      - if "names" exists AND contains a literal (non-regex) that can be used
        as a suitable value for "name", the "name" entry becomes optional.
        For example,
        {
            type    patch;
            names   ("inlet_[0-9].*" inlet);
      
            // inferred name = inlet
        }
      
      - reduce some overhead in surfaceFieldValue
      
      TUT: surfaceFieldValue on patches : reactingParcelFoam/verticalChannel
      6cf81518
  6. 25 Nov, 2020 2 commits
    • Mark Olesen's avatar
      ENH: align Enum methods with HashTable · d2f16905
      Mark Olesen authored
      - deprecate get(key, deflt) in favour of lookup(key, deflt).
        Method name compatibility with HashTable.
      
      - deprecate operator().
        The meaning is too opaque and equally served by other means:
      
        - use get(key) instead of operator()(key).
          Const access whereas HashTable::operator()(key)
          creates missing entry.
      
        - lookup(key, deflt) - instead of operator()(key, deflt).
          Const access whereas HashTable::operator()(key, deflt)
          creates a missing entry.
      
      - make Enum iterable to allow participation in range-for etc.
      d2f16905
    • Mark Olesen's avatar
      STYLE: mark deprecated findIndices methods with warnings · 9122713b
      Mark Olesen authored
      - were deprecated Aug-2018, but not marked as such
      9122713b
  7. 19 Nov, 2020 2 commits
    • Mark Olesen's avatar
      STYLE: can add compile-time deprecated message for autoPtr::set() · 6e3bc1f7
      Mark Olesen authored
      - deprecated Feb-2018, but not marked as such.
      
        The set() method originally enforce an additional run-time check
        (Fatal if pointer was already set), but this was rarely used.
        In fact, the set() method was invariably used in constructors
        where the pointer by definition was unset.
      
        Can now mark as deprecated to catch the last of these.
        We prefer reset() for similarity with std::unique_ptr
      
        Eg,
        FOAM_EXTRA_CXXFLAGS="-DFoam_autoPtr_deprecate_setMethod"  wmake
      6e3bc1f7
    • Mark Olesen's avatar
      STYLE: use brace constructors for Foam::zero and Foam::one · 07bbae0c
      Mark Olesen authored
      - makes it clearer that these are constructors and not function calls
      07bbae0c
  8. 13 Nov, 2020 1 commit
    • Kutalmis Bercin's avatar
      ENH: heatTransferCoeff: add optional Nusselt number functionality · a1c25e62
      Kutalmis Bercin authored
        DOC: heatTransferCoeff models: complete remaining header docs
        STYLE: heatTransferCoeff models: use auto specifier when appropriate
      
        Optionally, the Nusselt number (i.e. the ratio of convective to conductive
        heat transfer at a boundary in a fluid) can be output:
      
        ```math
            Nu = \frac{h L}{\kappa}
        ```
      
        where
        ```
          Nu | Nusselt number
          h  | Convective heat transfer coefficient of the flow
          L  | Characteristic length that defines the scale of the physical system
          \kappa | Thermal conductivity of the fluid
        ```
      a1c25e62
  9. 29 Oct, 2020 1 commit
  10. 28 Oct, 2020 1 commit
    • Mark Olesen's avatar
      ENH: use static to define default blockMesh verbosity · f999013f
      Mark Olesen authored
      - make handling of verbosity more consistent.
      
        Make all setter return the old value, remove (unused) default
        parameter as being counter-intuitive.  This makes it easier to
        restore the original values.
      
        For example,
      
           const bool oldVerbose = sampler.verbose(false);
           ...
           sampler.verbose(oldVerbose);
      f999013f
  11. 28 Sep, 2020 2 commits
    • Mark Olesen's avatar
      ENH: add UPstream::subProcs() static method · 5dc5ea92
      Mark Olesen authored
      - returns a range of `int` values that can be iterated across.
        For example,
      
            for (const int proci : Pstream::subProcs()) { ... }
      
        instead of
      
            for
            (
                int proci = Pstream::firstSlave();
                proci <= Pstream::lastSlave();
                ++proci
            )
            {
                ...
            }
      5dc5ea92
    • Mark Olesen's avatar
      ENH: add UPstream::allProcs() method · e18ff114
      Mark Olesen authored
      - returns a range of `int` values that can be iterated across.
        For example,
      
            for (const int proci : Pstream::allProcs()) { ... }
      
        instead of
      
            for (label proci = 0; proci < Pstream::nProcs(); ++proci) { ... }
      e18ff114
  12. 23 Sep, 2020 1 commit
  13. 09 Sep, 2020 1 commit
  14. 08 Sep, 2020 1 commit
  15. 03 Sep, 2020 2 commits
  16. 05 Aug, 2020 1 commit
  17. 16 Jul, 2020 3 commits
  18. 14 Jul, 2020 1 commit
  19. 26 Jun, 2020 2 commits
  20. 24 Jun, 2020 2 commits
  21. 23 Jun, 2020 1 commit
  22. 19 Jun, 2020 1 commit
  23. 18 Jun, 2020 1 commit
    • Andrew Heather's avatar
      ENH: Updated Curle function object · ceed5377
      Andrew Heather authored
      The function object now computes the acoustic pressure at a list of user
      specified locations, or from the face centres of a user-supplied surface.
      When operating on an input surface, the output can be written back to the
      surface or as a list of point values.
      
      Example of function object specification:
      
          Curle1
          {
              type            Curle;
              libs            ("libfieldFunctionObjects.so");
              ...
              patches         (surface1 surface2);
              c0              330;
      
              // Input - either points or surface
      
              input           points;
              observerPositions ((0 0 0)(1 0 0));
      
              //input           surface;
              //surface         "inputSurface.obj"
      
              // Output - either points or surface
              output          points;
      
              //output          surface;
              //surfaceType     ensight;
          }
      
          Where the entries comprise:
              Property     | Description                  | Required | Default value
              type         | Type name: Curle             | yes      |
              p            | Pressure field name          | no       | p
              patches      | Sound generation patch names | yes      |
              c0           | Reference speed of sound     | yes      |
              input        | Input type                   | yes      |
              observerPositions | List of observer positions (x y z) | no      |
              surface      | Input surface file name      | no       |
              output       | Output type                  | yes      |
              surfaceType  | Output surface type          | no       |
      ceed5377
  24. 17 Jun, 2020 1 commit
  25. 15 Jun, 2020 1 commit
  26. 12 Jun, 2020 1 commit
  27. 11 Jun, 2020 2 commits
    • Kutalmis Bercin's avatar
      ENH: add new 'pow' FO · 4a798b9e
      Kutalmis Bercin authored
      4a798b9e
    • Kutalmis Bercin's avatar
      INT: various integrations from openfoam.org · 5cbdb7a3
      Kutalmis Bercin authored
        ENH: add log FO
        ENH: improve log with scale, and offset entries
        BUG: ensure extrueMesh does not fail in parallel with wedge extrusion
        BUG: add missing clone and mapping funcs to copiedFixedValue, fixedMultiPhaseHeatFlux
        ENH: meshToMesh0::cellAddressing slight speed up for some geometries
        BUG:0003495: Divide-by-zero in SHF particle break-up model
        BUG:0003492: The formula in the OF is inconsistent with the Rosin-Rammler distribution theory formula
      5cbdb7a3
  28. 10 Jun, 2020 3 commits