Commit Graph

24910 Commits

Author SHA1 Message Date
Kutalmis Bercin
c161d0e069 BUG: uniformSet: add missing hit point updates (fixes #2067) 2021-10-04 15:24:47 +01:00
Kutalmis Bercin
9923cc9bf8 BUG: applyBoundaryLayer: disable application on disconnected cells (fixes #1513) 2021-10-04 15:24:47 +01:00
Mark Olesen
8a3dc0527c ENH: -no-finite-area, -no-lagrangian options for some parallel utils 2021-10-01 15:26:50 +02:00
Mark Olesen
20902b7f7c ENH: use updated surface methods, additional debugging for isoTopo 2021-10-01 15:26:50 +02:00
Mark Olesen
15f2487c0b ENH: extend vtk::polyWriter and vtk:GenericPatchWriter
- writeCellData() and writePointData() for polyWriter
- writeProcIDs for generic vtk patch writer
2021-10-01 15:26:50 +02:00
Mark Olesen
aa5ba2b494 ENH: additional cleanup method(s) for MeshedSurface, triSurface
- adjust zone addressing after surface face swap and upon construction
2021-10-01 15:26:50 +02:00
Mark Olesen
8e5c569cf1 ENH: explicitly check for invalid edge (PrimitivePatch::findEdge) 2021-10-01 15:25:13 +02:00
Mark Olesen
d585774841 ENH: handle float values for named optimisation switches (#2222) 2021-10-01 12:47:06 +02:00
Mark Olesen
6a3f63c2bc BUG: error write() method not marked as virtual (fixes #2218)
- slices on output and misses file/line information for IOerror
2021-09-30 19:58:26 +02:00
mattijs
9ce5aa2136 BUG: Function1 Table: disallow wildcards. See #2223 2021-09-30 13:35:06 +01:00
mattijs
ad8e5540a3 BUG: overset: memory leak. Fixes #2219
Not tested; from visual inspection
2021-09-29 10:57:42 +01:00
Andrew Heather
680c1dcfdd Merge branch 'feature-isosurface-snapping' into 'develop'
add point snapping to iso-surface topo algorithm (#2210)

See merge request Development/openfoam!488
2021-09-27 15:46:13 +00:00
Mark Olesen
4ff010d094 ENH: add point snapping to iso-surface topo algorithm (#2210)
- helps avoid the creation of small face cuts (near corners, edges)
  that result in zero-size faces on output.

CONFIG: make default iso-surface topo regularisation less aggressive

- The full (diagcell) regularisation no longer includes cleaning of
  non-manifold surfaces by removing open edges.
  This can be selected by the 'clean' regularisation option instead.
  ie, 'clean' = 'full' + erode open edges

ENH: additional debug modes for iso-surface topo

- with (debug & 8) dumps out a VTK file of the tets to be cut and the
  calculated open edges.
2021-09-27 16:23:58 +02:00
Mark Olesen
0454f4a040 ENH: robustness and functionality improvements for VTK output
- PstreamBuffers for parallel VTK output.
  - avoids MPI overflows for larger meshes

- new vtk::lineWriter for writing edges

- vtk::fileWriter::writeUniform now also supports processor-specific
  uniform values instead of assuming that they are identical everywhere.
2021-09-27 13:26:22 +02:00
Mark Olesen
a0d7933360 ENH: support vtu mesh subsetting, creation from cellShapes
- support simple mesh subsetting to vtu formats to enable debug output
  for a subsection of an existing polyMesh

- rudimentary support for VTK from cellShapes is intended for handling
  basic primitive cell shapes without a full blown polyMesh description.

  For example,

     // Create an empty polyMesh with points only
     polyMesh debugMesh
     (
         io,
         std::move(points),
         faceList(),     // faces
         labelList(),    // owner
         labelList(),    // neighbour
         true            // syncPar
     );

    // Establish the appropriate VTK sizing for the TET shapes
    vtk::vtuCells vtuCells;
    vtuCells.resetShapes(debugCutTets);
    vtuCells.nPoints(debugMesh.nPoints());

  NOTE
  Since the vtk::internalMeshWriter only uses the polyMesh reference
  for the points, it is also possible to create the vtuCells
  description without a pointField (or from a different mesh
  description) and write out the connectivity using the pointField
  from a different mesh.
2021-09-27 13:26:02 +02:00
Mark Olesen
8628d4216c BUG: foamToVTK patch/proc ids missing if there are no volume fields 2021-09-27 13:18:27 +02:00
Mark Olesen
fcd7423fa8 CONFIG: add date and paths information for tutorial Allrun script
STYLE: replace short-circuit Allrun script with Alltest
2021-09-22 17:42:21 +02:00
Mark Olesen
134aaee91a ENH: relocated tetBasePtIs adjustment from sampling to polyMeshTetDecomposition 2021-09-22 13:32:31 +02:00
Mark Olesen
c0b4c26dc1 BUG: correct erroneous PoutInFunction macro
- replace unusable operator() calls with simple '<<' operations
2021-09-21 15:26:45 +02:00
Andrew Heather
72e67c7d1b Merge branch 'feature-cyclicPeriodicAMI' into 'develop'
ENH: interpolate in cylindrical coordinates: See #2145

See merge request Development/openfoam!483
2021-09-16 08:48:16 +00:00
mattijs
a4289f7dd2 ENH: interpolate in cylindrical coordinates: See #2145
This intercepts all vector/tensor AMI interpolations and
does the interpolation in cylindrical coordinates.

Use (component) 'coupled' linear solver to enable this in
the linear solver sweeps.
2021-09-16 08:30:17 +00:00
Mark Olesen
c0feb56521 ENH: optional face area normals output for VTK surface format
- similar to additional flag for the raw surface writer (#2003)

  Example,
  ```
  formatOptions
  {
      vtk
      {
          normal      yes;
      }
  }
2021-09-15 18:04:36 +02:00
Andrew Heather
7c46daea0d Merge branch 'issue-1838-yPlus' into 'develop'
BUG: fix yPlus predictions of nut wall functions

See merge request Development/openfoam!484
2021-09-14 15:21:49 +00:00
Kutalmis Bercin
6ed5e23536 BUG: nut{k,U}WallFunction: use viscous predictions in yPlus (fixes #1773,#1838) 2021-09-14 15:21:09 +00:00
Kutalmis Bercin
da1afe816a ENH: yPlus: add a warning to remind users about solver's postProcess option (#1846) 2021-09-14 15:21:09 +00:00
Kutalmis Bercin
f3d0db18bb ENH: yPlus: add a flag to enable/disable wall-function predictions 2021-09-14 15:21:09 +00:00
Kutalmis Bercin
91439bb30d BUG: nutLowReWallFunction: add effective viscosity into yPlus (fixes #1843) 2021-09-14 15:21:09 +00:00
Kutalmis Bercin
0265f2caad COMP: ShihQuadraticKE: remove redundant header file 2021-09-14 15:21:09 +00:00
Mark Olesen
fb88d4887b SUBMODULE: update cfmesh (compilation only) 2021-09-08 13:47:32 +02:00
mattijs
7d20854726 BUG: fileHandler: disable parallel inside master-only ops. See #806. 2021-09-08 09:04:57 +01:00
Mark Olesen
f89fb3e066 CONFIG: adjust ordering of library paths (#2200)
- previously OpenFOAM library paths were set before adding in
  MPI-specific elements. However, this may mask some libraries.

  |  New library order  |  Old library order  |
  |---------------------|---------------------|
  |  user-lib (serial)  |  various 3rd-party  |
  |  site-lib (serial)  |  foam-lib (mpi)     |
  |  foam-lib (mpi)     |  ext-lib (mpi)      |
  |  foam-lib (serial)  |  system mpi-libs    |
  |  ext-lib  (mpi)     |  user-lib (serial)  |
  |  ext-lib  (serial)  |  site-lib (serial)  |
  |  various 3rd-party  |  foam-lib (serial)  |
  |  system mpi-libs    |  ext-lib (serial)   |
  |  dummy              |  dummy              |
2021-09-07 16:35:34 +02:00
Mark Olesen
96adf3ae80 ENH: add IOobject::objectRelPath() for compact output (#2195) 2021-09-07 16:35:34 +02:00
Mark Olesen
610711ac47 ENH: inGroups support for mesh zones
- provisions for alternative groupings of zones

- extend indices() for boundary meshes to handle wordRes as well
2021-09-07 16:35:10 +02:00
Kutalmis Bercin
f0fb0d4263 ENH: variable-specific debug flags (finiteArea solvers) 2021-09-07 11:29:11 +02:00
Mark Olesen
dabe506e9e ENH: code-style for lduMatrix and fvMatrix solve
- use dictionary methods directly in LduMatrix::solver::readControls.
  Deprecate the redundant LduMatrix::solver::readControl helper-function

- define solver log-level outside of the loop,
  narrow log flag to int.

- reinstate API-compatible parameters for SolverPerformance
2021-09-07 11:29:11 +02:00
Mark Olesen
bf1ed94e53 ENH: use PrecisionAdaptor to support scotch with label widening
- allows reuse of an int64_t scotch library with label-size 32
  and/or label-size 64.

COMP: prefer scotch/metis/kahip libraries with label-size qualifiers

- as noted in #2200, mpirun may insert mpi libraries higher in the
  library loader which can cause masking of our ThirdParty libraries
  of the same name. With scotch (for example), the operating system
  may have an int32 version installed but we have an int64 version
  compiled under ThirdParty. Runing in serial is fine, but in parallel
  we resolve to the (incorrect) system version due to the adjustments
  in mpirun.

- adjust the ThirdParty make scripts to also create corresponding
  links (eg, 'ln -s libscotch.so libscotch-int64.so') and prefer
  linkage with these qualified libraries.

    Eg,  -L$(SCOTCH_LIB_DIR) -lscotch$(SCOTCH_LIBNAME_SUFFIX)

  this prevent accidental runtime linkage with the system versions.

STYLE: simplify scotch interface code by using local functions
2021-09-07 11:29:11 +02:00
Mark Olesen
5e4d678c98 ENH: make precision adaptors modifiable (#2173)
- allows reuse similar to refPtr for wrapping different content.

- additional control for when contents are copied back,
  instead of waiting for the adaptor to go out of scope.

  Eg,

  if (adaptor.active())
  {
      adaptor.commit();
      adaptor.clear();
  }

- static ConstPrecisionAdaptor::get method renamed to 'select' as a
  better description of its purpose and avoid confusion with
  non-static 'get' method.

  Was previously only used within GAMGPreconditioner, but even there
  it is better just to use the ConstPrecisionAdaptor directly.
2021-09-07 11:29:11 +02:00
Kutalmis Bercin
d27aa79cd7 ENH: KirchhoffShell: further simplication of log output 2021-09-07 11:29:11 +02:00
Andrew Heather
ac6077b471 Merge remote-tracking branch 'origin/master' into develop 2021-09-07 10:14:29 +01:00
Kutalmis Bercin
aeda015a78 BUG: distributionModels::general: avoid zero-division errors 2021-09-07 09:50:16 +01:00
Andrew Heather
0aa44f2b9b ENH: ConeInjection - randomised the injector order. See #2199
For cases where the number of injectors exceeded the number of parcels to
inject, processing the injectors sequentially led to not all injector locations
being active and yielding non-physical spatial distributions.
2021-09-06 14:23:21 +01:00
Andrew Heather
c307c4abd2 Merge branch 'feature-distributionModels' into 'develop'
Improve the Lagrangian distribution models

See merge request Development/openfoam!426
2021-09-06 13:07:03 +00:00
Kutalmis Bercin
4be5511f8c DOC: distributionModels: improve header file documentation 2021-09-02 13:58:20 +01:00
Kutalmis Bercin
2bd37c7643 INT: distributionModels::general: add cumulative distribution function 2021-09-02 13:58:20 +01:00
Kutalmis Bercin
5a1baa478d BUG: distributionModels: fix mean functions (#1996) 2021-09-02 13:58:20 +01:00
Kutalmis Bercin
800df883a6 BUG: distributionModels: fix sample functions (#1996) 2021-09-02 13:58:20 +01:00
Kutalmis Bercin
07cd88abd0 ENH: distributionModels: replace input variable names with de facto conventions
Previous naming conventions for input variables in the
normal, multiNormal, RosinRammler, and massRosinRammler
distributions were heuristic and did not reflect
the de facto conventions being used in statistics.
2021-09-02 13:58:20 +01:00
Kutalmis Bercin
89289b0716 STYLE: distributionModels: modernise code style 2021-09-02 13:58:16 +01:00
Kutalmis Bercin
0feb0e4d7b ENH: distributionModel: add new sanity checks 2021-09-02 13:58:16 +01:00
Kutalmis Bercin
839a52ee16 ENH: distributionModel: consolidate min/max of distributions
BUG: distributionModel: disallow any distribution
where input min is equal to input max

ENH: distributionModel: ensure execution of check() at ctor level
2021-09-02 13:57:04 +01:00