Commit Graph

17013 Commits

Author SHA1 Message Date
7b5cfbd1b0 COMP: Gcc 11+ potential fix - see #2434 2022-06-09 12:58:22 +02:00
d2d976bda8 BUG: (un)refinement: combine topochange+motion. Fixes #2492
Explicitly unset the mesh.moving flag whilst doing the topo change.
2022-06-09 11:34:32 +01:00
c5cede38aa ENH: snappyHexMesh: early exit of leak detection. See #2403
Changed behaviour to make it the default
2022-06-09 11:34:32 +01:00
de5f75eb13 COMP: Updated dependent code following changes to forces/forceCoeffs FOs 2022-06-09 09:32:53 +00:00
6a4f7c9c68 ENH: forces/forceCoeffs: refactor function objects
- enables runtime selection of operand coefficients by 'coefficients' entry
- removes binning - now handled using the new 'binField' FO

Co-authored-by: Kutalmis Bercin <kutalmis.bercin@esi-group.com>
2022-06-09 09:32:53 +00:00
78c984f8f4 ENH: binField: new field function object
The new 'binField' function object calculates binned data,
where specified patches are divided into segments according to
various input bin characteristics, so that spatially-localised
information can be output for each segment.

Co-authored-by: Kutalmis Bercin <kutalmis.bercin@esi-group.com>
2022-06-09 09:32:53 +00:00
a7d01a7d43 ENH: writeFile: add writeValue function 2022-06-09 09:32:53 +00:00
726ce59b66 BUG: Checking range of Tmin and Tmax. Fixes #2506 2022-06-08 18:37:16 -07:00
9a75ce8434 ENH: support coordinateSystem/transform for sampled planes
- previously only defined for cell-cutting version, now for
  iso-surface version too

TUT: remove old transform/coordinateSystem syntax
2022-06-08 16:43:05 +02:00
fbaadf3a94 ENH: make 'planeType' optional for dictionary construct of a plane
- simpler to write for sampled cutting planes etc.
  For example,

      slice
      {
          type        cuttingPlane;
          point       (0 0 0);
          normal      (0 0 1);
          interpolate true;
      }

  instead of

      slice
      {
          type        cuttingPlane;
          planeType   pointAndNormal;
          pointAndNormalDict
          {
              point   (0 0 0);
              normal  (0 0 1);
          }
          interpolate true;
      }

STYLE: add noexcept to some plane methods
2022-06-08 16:43:05 +02:00
da157dca47 GIT: snappyHexMesh: extraneous merge removal 2022-06-08 15:39:31 +01:00
f12399c39b ENH: DMD: add multi-patch input functionality 2022-06-08 13:22:42 +00:00
d2e2533546 STYLE: DMD: simplify various parts of the class 2022-06-08 13:22:42 +00:00
e3d8b36c63 ENH: DMDModel: move nComponents function to an upper level 2022-06-08 13:22:42 +00:00
44ba2d868d ENH: DMD: apply various optimisations 2022-06-08 13:22:42 +00:00
408e6b55e9 TUT: simplify setups.orig cases
DOC: Curle: fix typo in header file (fixes #2498)

TUT: airfoil2D: apply standard freestream conditions for nuTilda and nut
2022-06-08 13:53:01 +01:00
9cf6ac4145 ENH: new tabulated anisotropic solid transport model 2022-06-08 12:26:17 +01:00
c54ea62aa4 ENH: InterfaceCompositionModels: add tabulated (fluid) - icoTabulated (solid) options 2022-06-08 12:26:17 +01:00
853f2fcaf3 ENH: solidThermos: add icoTabulated-solidThermo option 2022-06-08 12:26:17 +01:00
c1311bc785 ENH: EBRSM: new elliptic-blending Reynolds-stress turbulence model 2022-06-08 08:52:33 +01:00
745fc42dee ENH: turbulentDFSEMInlet: improve Reynolds-stress realizability checks
ENH: turbulentDFSEMInlet: new realizability checking function for scalar fields
2022-06-07 20:12:03 +00:00
29acac9f97 ENH: turbulentDigitalFilter: refactor the boundary condition
- Previous state of the condition was largely inoperative
due to bugs and lack of functionalities
- New state of the condition is more versatile, elegant, robust and faster

ENH: turbulentDigitalFilter: add new scalar-based synthetic turbulence condition

- Realistic temperature and/or concentration fluctuations
can be generated based on given input statistics
2022-06-07 20:12:03 +00:00
7184de50df ENH: simplify coordinate rotation specification (#2505)
- can specify rotations that are not "axes" in a compact form:

      transform
      {
          origin  (0 0 0);
          rotation none;
      }

      transform
      {
          origin  (0 0 0);
          rotation axisAngle;
          axis    (0 0 1);
          angle   45;
      }

   An expanded dictionary form also remains possible:

      transform
      {
          origin  (0 0 0);
          rotation
          {
              type  axisAngle;
              axis  (0 0 1);
              angle 45;
          }
      }

STYLE: verbose deprecation for "coordinateRotation" keyword

- the "coordinateRotation" keyword was replaced by the "rotation"
  keyword (OpenFOAM-v1812 and later) but was handled silently.
  Now elevated to non-silent.

STYLE: alias lookups "axesRotation", "EulerRotation", "STARCDRotation"

- these warn and report the equivalent short form, which aids in
  upgrading. Previously had silent lookups.
2022-06-07 17:25:30 +02:00
460b29b8c7 STYLE: missing quote when reporting selection table aliases 2022-06-07 15:01:40 +02:00
cc47a37ed1 ENH: add external surface handling to meshedSurfRef (#2505)
- previously just handled surface components
- move/scale mesh points (copy)

STYLE: pass in dummy faces/points to writer

STYLE: use tensor is_identity()
2022-06-03 17:26:38 +02:00
264c09c365 Merge remote-tracking branch 'origin/master' into develop 2022-06-03 14:11:00 +02:00
68599d552d ENH: minor code cleanup for SHA1 calculation
- append single character
- make append() methods void: methods are never chained anyhow
- refactor digest comparison (code reduction)

COMP: add overflow handling for OSHA1stream
2022-06-03 11:18:08 +02:00
40cadfd2f2 COMP: references to temporaries
COMP: include <limits>
2022-06-03 10:04:38 +02:00
91198eaf6a COMP: gcc-12 buffer check bypasses xsputn (#2481, #2496)
- add overflow() method to the SHA1 streambuf. Previously could rely
  on xsputn for adding to sha1 content, but streams now check pptr()
  first to test for the buffering range and thus overflow() is needed.
2022-06-03 10:04:35 +02:00
a465e4db85 ENH: support Euler rotation rollPitchYaw/yawPitchRoll ordering
- can be more intuitive to specify for some cases:

      rotation
      {
          type    euler;
          order   rollPitchYaw;
          angles  (0 20 45);
      }

- refactor starcd rotation to reuse Euler ZXY ordering
  (code reduction)

ENH: add -rotate-x, -rotate-y, -rotate-z for transformPoints etc

- easier to specify for simple rotations
2022-06-02 16:47:40 +02:00
eba7a485ba ENH: quaternion ROLL_PITCH_YAW and YAW_PITCH_ROLL aliases/lookups
COMP: define labelSphericalTensor::I

- remove spurious 'labelI' global constant (labelSphericalTensor::I)

STYLE: replace use of deprecated Tensor vectorComponent

STYLE: avoid bit-wise assignment of bool (VectorSpace compare ops)
2022-06-02 11:14:10 +02:00
8b63b8cdfe ENH: add hashedWordList find, appendUniq methods
- aligns calling signatures with wordList, for possible future
  replacement

- drop construct from const char** (can use initializer_list instead)

ENH: replace hashedWordList with plain wordList in triSurfaceLoader

- additional hashing optimisation (and overhead) is not worth it for
  the comparatively small lists of surfaces used.
2022-06-02 11:14:10 +02:00
49d0e82842 ENH: patchSeed: fix debug message 2022-06-02 09:21:37 +01:00
903f45dcdc ENH: snappyHexMesh: early exit of leak detection. See #2403 2022-06-01 15:30:11 +01:00
11b0d70b2d COMP: use the template disambiguator for dependent names (clang-9.0.1) 2022-06-01 10:00:50 +01:00
aaa25d105b ENH: STDMD: apply QRMatrix changes 2022-05-31 16:11:20 +00:00
1ef855cf0b ENH: QRMatrix: refactor the QR decomposition algorithms (fixes #2212) 2022-05-31 16:11:20 +00:00
cf492d42a1 ENH: Matrix: improve row access in inner/outer products 2022-05-31 16:11:20 +00:00
98b4779793 ENH: Rectangular/SquareMatrix: add move assignment 2022-05-31 16:11:20 +00:00
96cb473305 ENH: Matrix: add non-conjugate transpose function 2022-05-31 16:11:20 +00:00
addfcf1bc2 ENH: handle chemical equations parsing errors (#2440)
- catch extra punctuation tokens in chemical equations
- catch unknown species

- simplify generation of reaction string (output)

ENH: allow access of solid concentrations from sub-classes (#2441)
2022-05-31 17:52:16 +02:00
37e1da82ff CONFIG: add ARM64 nvidia rules
CONFIG: revise Pstream/OpenFOAM linkage (nvidia)

- double-pass linkage seems to be unnecessary
2022-05-31 17:19:49 +02:00
8081fc7234 ENH: refactor cell selections into cellBitSet
- ensightWrite, vtkWrite, fv::cellSetOption

ENH: additional topoSet "ignore" action

- this no-op can be used to skip an action step, instead of removing
  the entire entry
2022-05-31 13:04:43 +02:00
1845c28ee4 BUG: ensightWrite has out-of-date subMesh reference (fixes #2499)
- triggered with cell selections (especially with manifold cells).
  The ensightMesh was still holding an old subMesh reference.
2022-05-31 13:04:43 +02:00
d2e10bca40 ENH: support exprField specification for SemiImplicitSource
- this allows more flexibility when defining the location or intensity
  of sources.

  For example,

  {
      type            scalarSemiImplicitSource;
      volumeMode      specific;
      selectionMode   all;

      sources
      {
          tracer0
          {
              explicit
              {
                  type       exprField;

                  functions<scalar>
                  {
                      square
                      {
                          type square;
                          scale 0.0025;
                          level 0.0025;
                          frequency 10;
                      }
                  }

                  expression
                  #{
                      (hypot(pos().x() + 0.025, pos().y()) < 0.01)
                    ? fn:square(time())
                    : 0
                  #};
              }
          }
      }
  }

ENH: SemiImplicitSource: handle "sources" with explicit/implicit entries

- essentially the same as injectionRateSuSp with Su/Sp,
  but potentially clearer in purpose.

ENH: add Function1 good() method to define if function can be evaluated

- for example, provides a programmatic means of avoiding the 'none'
  function
2022-05-31 13:04:39 +02:00
ef743147ea GIT: relocate coordinate from meshTools -> OpenFOAM
- supports use of coordinate systems in fileFormats, surfMesh etc.

GIT: remove remnant dependency check placeholders
2022-05-31 10:05:17 +02:00
11d5677368 ENH: snappyHexMesh: better messages. See #2403. 2022-05-30 11:57:43 +01:00
1a6e9030fa ENH: fvMesh: maintain mesh.phi(). See #2492 2022-05-30 11:57:42 +01:00
6acbd98231 STYLE: DragForce: modernise the code content 2022-05-30 09:15:28 +01:00
eab0a11079 DOC: DragForce: improve header file documentation 2022-05-30 09:06:08 +01:00