Skip to content
Snippets Groups Projects
  1. Jun 18, 2021
    • Mark OLESEN's avatar
      CONFIG: inline _foamEval within <etc/config.sh/setup> · e2148b58
      Mark OLESEN authored
      - previously a function (unlike the csh version) but since bashrc and
        setup have been split -> replace with inline definition
      
      STYLE: formatting/wording for openfoam starters
      
      TUT: simplify controlDict modification, add default substitution
      
      ENH: accept '/' for end-of-options terminator (etc/openfoam)
      
      - makes the application or service more apparent.
        * eg.  /usr/bin/openfoam / blockMesh
        * vs.  /usr/bin/openfoam -- blockMesh
      
        Accept lone '-' as the end-of-options terminator, as per bash
      
      - Adjust handling of openfoam '-c' option to flag that a command-string
        will appear, but continue with option parsing.
        Consistent with bash definition.
      e2148b58
    • Mark OLESEN's avatar
      ENH: add auto-detect 0/ to foamCleanTutorials · 7d2a9fad
      Mark OLESEN authored
      - in the 'auto' mode (now the default), it will use cleanCase and also
        remove the 0/ directory if a 0.orig/ directory also exists.
      
        This corresponds to a frequent idiom and can be used quite safely
        for most cases.
      
      ENH: add -serial / -parallel preference for foamRunTutorials
      7d2a9fad
    • Mark OLESEN's avatar
      TUT: add parallel version for various squareBend cases · 096b9dc5
      Mark OLESEN authored
      - adjust commented-out evaluation to avoid warnings.
      
        With code like this
        ```
        #if 0
        nxin    #eval{ round($nxin / 5) };
        #endif
        ```
      
        The handling of the "#if 0 / #endif" clause uses the plain ISstream
        parser to tokenize. This means that the "round(" is parsed as a word
        with a mismatched closing ')', whereas the "#eval" parser will slurp
        everything in until the closing brace and send it off as a string
        to the expression parser.
      096b9dc5
    • Getnet Agegnehu's avatar
      TUT: example of patch expressions (#2114) · a3d90ae9
      Getnet Agegnehu authored and Mark OLESEN's avatar Mark OLESEN committed
      a3d90ae9
    • Andrew Heather's avatar
      Merge branch 'issue-2091-PDRFOAM-End' into 'develop' · f39fedb7
      Andrew Heather authored
      STYLE: PDRFOAM End of Program was inconsistent with other applications
      
      See merge request !447
      f39fedb7
    • HenningScheufler's avatar
      36dd86f8
    • Mattijs Janssens's avatar
      Merge branch 'feature-ami-face-area-intersect' into 'develop' · a9f55f06
      Mattijs Janssens authored
      AMI improvements
      
      See merge request !468
      a9f55f06
    • Andrew Heather's avatar
      ENH: AMI improvements · ba4d38da
      Andrew Heather authored and Mattijs Janssens's avatar Mattijs Janssens committed
      - Added new faceAreaWeightAMI2D AMIMethod:
        - performs intersection using a new 2D triangle class;
        - candidate face matches set using an AABBTree method (vs advancing front for
          faceAreaWeightAMI).
      
        - Use by setting the AMIMethod entry when specifying the AMI in the
          constant/polyMesh/boundary file, e.g.
      
              AMI
              {
                  type            cyclicACMI;
                  AMIMethod       faceAreaWeightAMI2D; // new method
                  Cbb             0.1; // optional coefficient
                  nFaces          1000;
                  startFace       100000;
                  matchTolerance  0.0001;
                  transform       noOrdering;
                  neighbourPatch  AMI1;
                  nonOverlapPatch AMI1_non_overlap;
              }
      
        - The optional Cbb coeffcient controls the size of the bounding box used when
          looking for candidate pairs; the value of 0.1 is the default and worked well
          for a large range of test cases. For badly matched AMI patches this may need
          to be increased.
      
      - Deprecated the partialFaceAreaWeightAMI class - primarily used by ACMI:
        - functionality now offered by the AMI variants.
      ba4d38da
    • Andrew Heather's avatar
      ENH: Vector2D - added isClose function · 3e505614
      Andrew Heather authored and Mattijs Janssens's avatar Mattijs Janssens committed
      3e505614
  2. Jun 17, 2021
  3. Jun 16, 2021
    • Andrew Heather's avatar
      ee4f7feb
    • Mark OLESEN's avatar
      Merge branch 'feature-multiRegion' into 'develop' · 98abafcc
      Mark OLESEN authored
      ENH: Added new multiRegion function object
      
      See merge request !470
      98abafcc
    • Andrew Heather's avatar
      ENH: Added new multiRegion function object · af86d19e
      Andrew Heather authored and Mark OLESEN's avatar Mark OLESEN committed
      Wrapper that clones the supplied object for each region.
      
      Simplifies the setup of identical post-processing requirements for
      multi-region cases.
      Applies the supplied function to all regions by default.
      
      Example of function object specification:
      
          multiRegion
          {
              type    multiRegion;
              libs    (utilityFunctionObjects);
              ...
      
              function
              {
                  // Actual object specification
                  type    fieldMinMax;
                  libs    (fieldFunctionObjects);
                  fields  (<field1> .. <fieldN>);
              }
      
              // Optional entries
              regions     (region1 region2);
          }
      
          Where the entries comprise:
              Property   | Description                    | Reqd | Default
              type       | Type name: multiRegion         | yes |
              function   | Function object sub-dictionary | yes |
              regions    | List of region names           | no  | all
      af86d19e
    • Mark OLESEN's avatar
      Merge branch 'feature-multifieldvalue' into 'develop' · 89de9326
      Mark OLESEN authored
      ENH: new multiFieldValue function object
      
      See merge request !469
      89de9326
    • Andrew Heather's avatar
      ENH: new multiFieldValue function object · ea12bfdb
      Andrew Heather authored and Mark OLESEN's avatar Mark OLESEN committed
          Computes a selected operation between multiple \c fieldValue function
          objects.
      
          The operation is applied to all results of each \c fieldValue object.
      
      Note
          Each object must generate the same number and type of results.
      
      Usage
          Minimal example by using \c system/controlDict.functions:
      
          multiFieldValue1
          {
              // Mandatory entries (unmodifiable)
              type            multiFieldValue;
              libs            (fieldFunctionObjects);
      
              // Mandatory entries (runtime modifiable)
              operation       subtract;
      
              // List of fieldValue function objects as dictionaries
              functions
              {
                  region1
                  {
                      ...
                  }
                  region2
                  {
                      ...
                  }
      
                  ...
      
                  regionN
                  {
                      ...
                  }
              }
      
              // Optional (inherited) entries
              ...
          }
      
          where the entries mean:
      
            Property  ...
      ea12bfdb
  4. Jun 14, 2021
  5. Jun 11, 2021
  6. Jun 10, 2021
    • Andrew Heather's avatar
      Merge branch 'feature-distanceSurface-filtering' into 'develop' · 596d8fab
      Andrew Heather authored
      ENH: add proximityRegions filter to distanceSurface (#2108)
      
      See merge request !460
      596d8fab
    • Mark OLESEN's avatar
      ENH: add proximityRegions filter to distanceSurface (#2108) · ca88abba
      Mark OLESEN authored
      - combines region-based and proximity-based filtering
      
        proxityRegions (post-filter):
          Checks the distance of the resulting faces against the original
          search surface. Filters based on the area-weighted distance
          of each topologically connected region.
          If the area-weighted distance of a region is greater than
          \c absProximity, the entire region is rejected.
      
      STYLE: 'proxityFaces' as newer synonym for 'proximity' filter
      ca88abba
    • Mark OLESEN's avatar
      ENH: additional patch expressions (#2114) · b6b4ab07
      Mark OLESEN authored
      - snGrad, internalField, neighbourField.
        Functional use as per swak: "... + internalField(T) ..."
      
      ENH: additional volume/patch expressions
      
      - deltaT()
      
      STYLE: rename exprDriverWriter -> fvExprDriverWriter
      
      - the original class name was a misnomer since it holds a reference
        to fvExprDriver
      
      BUG: expression faceToPoint/pointToFace definitions were flipped
      
      ENH: refactor expression hierarchy and code style
      
      - handle TimeState reference at the top-level for simpler derivations
      
      - unified internal search parameters (cruft)
      b6b4ab07
    • Mark OLESEN's avatar
      ENH: more flexible finiteArea patch selection (#2084) · 239a7884
      Mark OLESEN authored
      - support wordRes for selecting patch names
      
      - ownerPolyPatch specification is now optional, which simplifies input
        and also supports a faMesh spanning different patches but with a
        single boundary condition.
      
        Alternatively, can specify more granularity if required.
      
        ```
        polyMeshPatches  ( "top.*" );
      
        boundary
        {
            inlet1
            {
                type patch;
                ownerPolyPatch top1;    // <- specific to this portion
                neighbourPolyPatch inlet;
            }
            inlet2
            {
                type patch;
                ownerPolyPatch top2;    // <- specific to this portion
                neighbourPolyPatch inlet;
            }
            outlet
            {
                type patch;
                neighbourPolyPatch outflow;
            }
            bound
            {
                type symmetry;
                neighbourPolyPatch bound;
            }
        }
        ```
      239a7884
    • Mark OLESEN's avatar
      DOC: reorganize Requirements.md, additional note for openSUSE leap · 7b14af42
      Mark OLESEN authored
      - move unreferenced Config.md to wiki content
      7b14af42
    • Mark OLESEN's avatar
      ENH: replace tutorials/AutoTest with bin/foamTestTutorial · 85301030
      Mark OLESEN authored
      - additional -serial/-parallel option:
        prefer Allrun-serial or Allrun-parallel if available
      
      - optional -output=DIR to preserve output
      
      ENH: report missing tutorials/ directory in RunFunctions
      85301030
    • Mark OLESEN's avatar
      ENH: robustness, consistency for wmake -show-api, -version · c7bde70e
      Mark OLESEN authored
      - add to wmakeFunctions to ensure it works even without 'make' being
        installed. Exit immediately after -show-api for consistency with
        -version.
      
      foamEtcFile:
        - drop warnings for some old (pre-v1812) defunct options
          and simply flag as unknown options.
        - handle -version, --version as equivalent to -show-api
      c7bde70e
  7. Jun 09, 2021