Commit Graph

27070 Commits

Author SHA1 Message Date
d6781b91fe Merge remote-tracking branch 'origin/master' into develop 2024-02-01 13:15:51 +00:00
d9c5a5d1a9 BUG: mapped: register to current, not other mesh. See #2723 2024-02-01 13:14:09 +00:00
fc9820b08a STYLE: mapped: remove defaults from mapped 2024-01-31 13:49:26 +00:00
f9bbd06e57 ENH: mapped: avoid patch check. See #3090 2024-01-31 13:12:24 +00:00
182afc27ba STYLE: noexcept for nullObject functions
STYLE: use nullObject for return values of NotImplemented

STYLE: shallowCopy(nullptr) shortcut
2024-01-25 16:03:09 +01:00
0bf39691ff Merge branch 'fix-createZeroBoundaryPtr' into 'develop'
FIX: replaced temp internalField with DimensionedField::null (fixes #3082)

See merge request Development/openfoam!662
2024-01-24 20:47:16 +00:00
312c7a1c32 FIX: replaced temp internalField with DimensionedField::null (fixes #3082) 2024-01-24 20:46:43 +00:00
0ae3da8560 COMP: using incomplete class edgeMesh 2024-01-24 19:58:27 +01:00
44c594dbff Merge branch 'feature-mappedPatch-movingMesh' into 'develop'
ENH: mapped: keep coupling info. Fixes #3090

See merge request Development/openfoam!659
2024-01-24 16:26:07 +00:00
a889e5eba6 STYLE: mappedPatchBase: abstract common code 2024-01-24 16:25:41 +00:00
3d0cb79be3 ENH: mapped: keep coupling info. Fixes #3090 2024-01-24 16:25:41 +00:00
d310f82402 Merge branch 'style-patchfield-clone' into 'develop'
Use factory Clone for patch fields

See merge request Development/openfoam!660
2024-01-23 11:22:20 +00:00
152eceeb56 Use factory Clone for patch fields 2024-01-23 11:22:19 +00:00
ebe49d4cbd BUG: SlicedGeometricField, slices into field instead of shallow copy (#3080)
- regression introduced by e98acdc4fc

  Affected versions: (v2206, v2212, v2306, v2312)
2024-01-19 18:06:38 +01:00
7cfd053079 ENH: use updated globalIndex methods
- range(proci) instead of localStart(proci), localSize(proci) combination.
  * does the same thing, can be used directly with various other
    routines for slicing etc.

    Eg,
       Foam::identity(globalNumbering.range(myProci))

- globalIndex::calcOffset() instead of constructing a globalIndex and
  taking the localStart(). Avoids intermediate resizing and storing of
  an offsets table (which is then discarded) as well as the subsequent
  lookup into that table
2024-01-19 17:15:29 +01:00
81f0620b7b TUT: fix mesh/parallel/cavity for Alltest mode
- use foamListTimes instead of hard-coded time to track the
  redistribution point. Still slightly fragile...
2024-01-18 12:51:49 +01:00
7b7dde0a6d BUG: memory leak and interpolated fields not updated (fixes #3089)
- in singleCellMesh application:
  also remove the interpolated fields from the registry,
  which ensures they are correctly updated between time steps
2024-01-17 17:31:35 +01:00
f485093d37 STYLE: use patch type instead of cloning list of the same 2024-01-17 14:45:31 +01:00
a4cbb33373 STYLE: use Internal typedef within GeometricBoundaryField
- aligns with GeometricField usage etc
2024-01-17 10:44:17 +01:00
f625a9a0dd ENH: additional DimensionedField, GeometricField New factory methods 2024-01-17 10:44:17 +01:00
5d5f541dd6 ENH: add objectRegistry newIOobject() helper method
- creates an IOobject at the current time instance (timeName) with
  NO_READ/NO_WRITE/NO_REGISTER characteristics.
  This generalises and replaces the Cloud fieldIOobject() to simplify
  some common use.

  // Shorter version (new):
      volScalarField fld
      (
          mesh.newIOobject(name),
         ...
      );

  // Longer version:
      volScalarField fld
      (
          IOobject
          (
              name,
              mesh.time().timeName(),
              mesh,
              IOobject::NO_READ,
              IOobject::NO_WRITE
              IOobject::NO_REGISTER
           ),
           ...
      );
2024-01-17 10:44:17 +01:00
646b0aab36 ENH: allow modification of OSstream name
- can be useful when using memory-based streams for buffering,
  in which case the name() can be used to specify the filesystem
  location instead of the default stream names ("input", "output").
2024-01-17 10:43:06 +01:00
d048befbc0 ENH: distributedTriSurfaceMesh: feed through tolerances 2024-01-15 15:36:57 +00:00
26904bf6df ENH: pointConstraints: allow non-facePointPatch. Fixes #3085 2024-01-15 15:24:26 +00:00
62524b140c BUG: protected division - fixes #3084 2024-01-15 15:10:24 +00:00
e3f0521b19 Merge branch 'feature-gcc13' into 'develop'
Code adjustments to avoid gcc-13 warnings about dangling references

See merge request Development/openfoam!656
2024-01-11 10:08:46 +00:00
bb16c493b7 Code adjustments to avoid gcc-13 warnings about dangling references 2024-01-11 10:08:45 +00:00
89cd584440 Merge branch 'style-clone-methods' into 'develop'
factory Clone method for handling member clone() methods

See merge request Development/openfoam!658
2024-01-09 11:56:52 +00:00
2190684914 STYLE: patch field Internal::null() instead of DimensionedField equivalent
- makes for more consistent coding

STYLE: use two-parameter clone when making a copy of patch fields
2024-01-09 11:56:45 +00:00
987dbe4589 ENH: use factory Clone method for handling member clone() methods
- reduces code clutter, simplifies modification for new types.
  Handled classes:

    Function1, PatchFunction1, coordinateRotation, coordinateSystem,
    particle, liquidProperties, solidProperties
2024-01-09 11:56:45 +00:00
39e054b0b8 Merge branch 'fix-ISQP-noBounds' into 'develop'
BUG: ISQP crashing with the ShermanMorrison preconditiooner and no bounds (fixes #3077)

See merge request Development/openfoam!657
2024-01-09 11:45:04 +00:00
f6ec5c676e BUG: ISQP crashing with the ShermanMorrison preconditiooner (fixes #3077)
ISQP crashed during the first update of the design variables, if the
latter had no bounds and the ShermanMorrison preconditiooner was used.
2024-01-09 11:44:41 +00:00
ad85b684bb STYLE: remove unused/stray methods, fix stray deprecated usages
STYLE: use separate value/dimensions for GeometricField

- simplifies calling parameters

COMP: limit enumeration range when reporting chemkin error
2024-01-08 17:42:55 +01:00
dde4b12687 ENH: add pointPatchField::patchInternalField with three-parameters
- allows extraction without constructing a tmp.
  The definition is similar to {faPatch,fvPatch} handling.
2024-01-08 17:42:55 +01:00
1a1322a2b0 COMP: avoid operator= masking (gcc-13) 2024-01-08 17:42:43 +01:00
8394e45c13 BUG: snappyHexMesh: ignore blockSize. See #3068 2024-01-08 15:42:59 +00:00
a46b310fa4 COMP: g++11: suppress optimisation. See #3024 2024-01-08 14:30:06 +01:00
793231b4aa COMP: g++11: suppress optimisation. See #3024 2024-01-04 08:35:37 +00:00
1dc216eb1f TUT: Corrected references to mut - related to #3057 2024-01-03 09:55:44 +00:00
c4328296b0 TUT: Corrected legacy muTilda -> nuTilda. Fixes 3057 2024-01-03 09:43:23 +00:00
52ab1fc06f TUT: changes in optimisation tutorials
- shape optimisation: SQP failed due to wrong divScheme for the adjoint
  equations
- shape optimisation: tutorials designed to show the impact of different flow
  conditions were actually using the same U
- topology optimisation: tutorials designed to show the impact of the
  flow rate distribution were actually using the same target
  fractions
- topology optimisation: updated old fvSolution syntax
2024-01-02 12:03:21 +00:00
f8bee97897 Merge branch 'fix-adjoint-tutorials' into 'develop'
TUT: changes in optimisation tutorials

See merge request Development/openfoam!655
2024-01-02 11:59:39 +00:00
9f0f9f2dd6 TUT: changes in optimisation tutorials
- shape optimisation: SQP failed due to wrong divScheme for the adjoint
  equations
- shape optimisation: tutorials designed to show the impact of different flow
  conditions were actually using the same U
- topology optimisation: tutorials designed to show the impact of the
  flow rate distribution were actually using the same target
  fractions
- topology optimisation: updated old fvSolution syntax
2024-01-02 11:59:08 +00:00
58787bb166 COMP: avoid ambiguous max() call on MacOS (fixes #3066)
- had max(std::streamsize, label) but this does not resolve properly
  on OSX, so write out in long form instead.

  The similar logic in DynamicList is okay since there it compares
  max(label, label) instead
2023-12-22 15:10:49 +01:00
1d8f0d55f7 SUBMODULE: fix remnant function call in visualization OpenFOAM-v2312 2023-12-21 16:23:42 +01:00
c39a0f6494 RELEASE: Updated version to v2312 2023-12-21 11:51:03 +00:00
82417d1d8b SUBMODULE: disable turbulence-community build until compilation issues are resolved 2023-12-21 11:48:30 +00:00
f88e06cac2 Merge branch 'fix-function-objects-in-optimisation' into 'develop'
FIX: functions objects in optimisation

See merge request Development/openfoam!654
2023-12-21 09:50:33 +00:00
e5a62a0bdd TUT: removed unnecessary computations of yPlus
in shape optimisation tutorials
2023-12-21 09:50:26 +00:00
d5661b50de FIX: roll-back of the execution of function objects in optimisation
In steadyOptimisation mode, each time-step corresponds to an
optimisation cycle and is sub-cycled, to allow for iterating the flow
and adjoint equations. This sub-cycling does not allow the execution of
function objects. This was circumvented in 8947735b1d, by explicitly
calling the execution of the function objects in the simple solver
of adjointOptimisationFoam.

However, each sub-cycled iteration is a writeTime, if the current
optimisation cycle corresponds to a writeTime. This means that function
objects with a

writeControl write;

will be executed in each iteration of the flow equations, within this
specific optimisation cycle, leading to a lot of disc space and file
clutter, if the function object outputs fields (e.g. yPlus).

8947735b1d is partially rolled back, by protecting the call to the
execution of the function objects with a bool that defaults to false.
2023-12-21 09:50:26 +00:00