Commit Graph

5841 Commits

Author SHA1 Message Date
4fe853fa87 Updated to support compilation with 64bit label
Resolves bug-report https://bugs.openfoam.org/view.php?id=3821
2022-04-04 11:22:01 +01:00
7592a81c6e polyMeshMap: New mesh to mesh map for the new mapping update function mapMesh(const polyMeshMap&)
This new mapping structure is designed to support run-time mesh-to-mesh mapping
to allow arbitrary changes to the mesh structure, for example during extreme
motion requiring significant topology change including region disconnection etc.
2022-04-04 11:15:41 +01:00
1aa194e18b Updated documentation for the distribute(const polyDistributionMap&) function 2022-04-01 09:11:09 +01:00
cd2f614a48 Added new polyTopoChangeMap and polyDistributionMap directories 2022-03-31 23:46:50 +01:00
6047f27aac polyDistributionMap: renamed from polyMeshDistributionMap for consistency with polyTopoChangeMap 2022-03-31 23:44:47 +01:00
3ace8f434b polyTopoChangeMap: Renamed from mapPolyMesh to clarify purpose and scope
The polyTopoChangeMap is the map specifically relating to polyMesh topological
changes generated by polyTopoChange and used to update and map mesh related
types and fields following the topo-change.
2022-03-31 22:05:37 +01:00
2e6eb5f2ce polyMeshDistributionMap: renamed mapDistributePolyMesh -> polyMeshDistributionMap
This is a map data structure rather than a class or function which performs the
mapping operation so polyMeshDistributionMap is more logical and comprehensible
than mapDistributePolyMesh.
2022-03-31 18:01:44 +01:00
97eee844ad fvMeshDistribute: Added support to map V0 for moving mesh cases with 2nd-order ddt
Moving mesh cases running with 2nd-order ddt schemes can now run with
re-distribution.  This does not include support for topology change including
mesh refinement which will require special complex handling for 2nd-order time
schemes.
2022-03-30 16:21:26 +01:00
14c9057a34 regIOobject: Added registered() member function 2022-03-30 13:39:40 +01:00
b74486ae2a Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2022-03-30 13:39:23 +01:00
7ed2e0c997 nearWallDist: Rationalised 2022-03-30 13:38:54 +01:00
772e22bdff template cases: added default patch entry with type patch 2022-03-30 12:58:14 +01:00
93b106cdfd PackedList: Make iteratorBase copy constructor public
This allows an iterator to be stored and used in the same way as a
non-const reference to an element of a non-packed list
2022-03-30 11:49:28 +01:00
1736fd8f84 Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2022-03-30 11:46:18 +01:00
91e4493a53 nearWallDist: now a MeshObject to provide automatic update on mesh change 2022-03-30 11:45:14 +01:00
b4bcb29d6a multiphaseEulerFoam: Added models
Added solid particle coalescence model by Adachi, Stuart and Fokkink
(1994), solid particle breakage model by Kusters (1991) and spherical
particle lift force model by Saffman-Mei (1992).

Patch contributed by Kasper Gram Bilde and Institute of Fluid Dynamics,
Helmholtz-Zentrum Dresden - Rossendorf (HZDR)
2022-03-30 11:28:42 +01:00
89e4b0fc7c functionObjects::utilities: Improved usage documentation 2022-03-29 15:58:47 +01:00
4e05776106 meshWave: Simplification of transfers through cyclic interfaces
A single transform method has been written to govern meshWave transfers
through transformed interfaces. This allows the transformer class to
take care of the different types of transform (e.g., displacement vs
positions), rather than having the waved data do it manually. It also
simplifies the creation of data classes and removes a large number of
functions that do nothing.

Propagation through AMI interfaces and the transformation of wall
normals through has also been corrected.
2022-03-29 14:30:50 +01:00
495a3a32d4 FaceCellWave: Removed functionality relating to un-split cyclics 2022-03-29 08:36:43 +01:00
b9b8a8ac12 Alltest: added -from and -to options for specifying the directory to run tests from and in
Patch contributed by Institute of Fluid Dynamics,
Helmholtz-Zentrum Dresden - Rossendorf (HZDR)
20220327
2022-03-25 23:25:24 +00:00
b2eff135e6 FaceCellWave: Removed unnecessary intermediate MeshWave class 2022-03-25 12:41:50 +00:00
20ef804fa2 patchDistWave: Removed duplicate and unnecessary code 2022-03-25 12:14:45 +00:00
656162bb76 externalWallHeatFluxTemperatureFvPatchScalarField: Corrected h in mapping constructor 2022-03-24 19:01:30 +00:00
44f4b4c10a externalWallHeatFluxTemperatureFvPatchScalarField.H: Removed unnecessary private: 2022-03-23 19:34:24 +00:00
4c2c4bb43d fvMesh, pointMesh: Simplified field mapping using FOR_ALL_FIELD_TYPES macro 2022-03-23 19:33:47 +00:00
48a7f6716b src/meshTools/Make/files: Added rotatedBoxToFace.C 2022-03-23 16:38:01 +00:00
3306637c2e hexRef8: Added additional consistency check when writing cellLevel and pointLevel 2022-03-23 16:37:26 +00:00
08b67ff147 Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2022-03-23 16:36:25 +00:00
ddbf2d7853 fvMesh: fvSchemes and fvSolution are now demand-driven
fvMesh is no longer derived from fvSchemes and fvSolution, these are now
demand-driven and accessed by the member functions schemes() and solution()
respectively.  This means that the system/fvSchemes and system/fvSolution files
are no longer required during fvMesh constructions simplifying the mesh
generation and manipulation phase; theses files are read on the first call of
their access functions.

The fvSchemes member function names have also been simplified taking advantage
of the context in which they are called, for example

    mesh.ddtScheme(fieldName) -> mesh.schemes().ddt(fieldName)
2022-03-23 16:23:55 +00:00
19b3b2e563 tutorials: reverseBurner: Ignite with temperature constraint
This method of igniting is easier to control than a heat-source based
method. A suitable temperature at which the reaction will take is
typically fairly easy to estimate, whilst determining a heat source
value which achieves the same effect is difficult and is often requires
trial and error.

The new fractional control of value constraints has permitted the use of
fixedTemperatureConstraint in this way; both because it allows for
ramping and for limiting the duration over which the constraint is
applied.
2022-03-23 13:03:42 +00:00
32be464010 fixedValueConstraint, fixedTemperatureConstraint: Permit applying only a fraction of the constraint
An optional Function1 can now be supplied to a fixedValueConstraint
which controls what proportion of the constraint is applied. This can be
used to ramp, pulse, or limit the duration of the constraint. For
example, ramping up of the constraint could be specified as follows:

    scalarSource
    {
        type            fixedValueConstraint;

        selectionMode   points;
        points          ((0 0.1 0));

        fieldValues
        {
            s               1;
        }

        fraction
        {
            type            ramp;
            duration        0.1;
        }
    }
2022-03-23 12:58:33 +00:00
41433213cd multiphaseEulerFoam: populationBalance: Set terminal in test createGraph scripts
Patch contributed by Institute of Fluid Dynamics,
Helmholtz-Zentrum Dresden - Rossendorf (HZDR)
2022-03-22 14:56:28 +00:00
acd5528557 rotatedBoxToFace: New faceSource, the face equivalent of rotatedBoxToCell
Description
    A topoSetSource to select faces based on cell centres inside a rotated
    and/or skewed box.

    The box can be defined with an origin and three vectors; i, j, and k. The
    origin is one corner of the box, and the vectors are the edges connected to
    that corner.

    For example, the following defines a box rotated 45 degrees around the
    z-axis, with width and depth of 0.2, height of 200, and with a bottom left
    corner at (0.4 0.4 -100):

    \verbatim
        origin  (0.4 0.4 -100);
        i       (0.141421 0.141421 0);
        j       (-0.141421 0.141421 0);
        k       (0 0 200);
    \endverbatim

    Alternatively, the box can be defined using a non-rotated box and details
    of how it should be rotated. This syntax is triggered by the presence of
    the keyword "box". A standard bounding box is supplied, along with a centre
    of rotation and two vectors, n1 and n2. The rotation is taken to be that
    which transforms n1 onto n2.

    The above example can be equivalently specified in this alternative form as
    follows:

    \verbatim
        box     (0.4 0.4 -100) (0.6 0.6 100);
        centre  (0.4 0.4 0);
        n1      (1 0 0);
        n2      (1 1 0);
    \endverbatim
2022-03-21 10:37:42 +00:00
87855d849e tutorials/multiphase/interFoam/RAS/floatingObject: Added controlDict.sixDoF
to be used with dynamicMeshDict.sixDoF to test the deprecated
sixDoFRigidBodyMotion motion solver.
2022-03-19 09:54:13 +00:00
27596effc5 foamGet: search through links 2022-03-18 12:44:18 +00:00
fbf7374bef driftFluxFoam: Added MRF centrifugal acceleration effect to the relativeVelocityModels
This required changing the formulation of the relative velocity in terms of a
scalar velocity coefficient Vc rather than the velocity V0 such that

    V0 = Vc*g

where g is the acceleration due to gravity.  With MRF rotation

    V0 = Vc*(g + <MRF centrifugal acceleration>)
2022-03-17 17:35:15 +00:00
05cfe8445c csvSetWriter: Quote problematic fields and permit specification of a field separator 2022-03-17 13:14:28 +00:00
a578586c2c processorTopology: Un-templated
The template parameters were only ever polyBoundaryMesh and
processorPolyPatch. Un-templating makes mainteance and bug-fixing
quicker as it means minor modifications no longer cause a full rebuild
of OpenFOAM.
2022-03-17 11:58:06 +00:00
ec3187fa52 splitBaffles: Added support for hexRef8
so that the pointLevel file is updated for use by hexRef8 in subsequent mesh
manipulations, refinement/unrefinement etc.
2022-03-16 12:17:25 +00:00
0f88d03f5a tutorials/multiphase/interFoam/RAS/planingHullW3/Allmesh.*: Remove sets after refinement
otherwise renumberMesh fails due to the refinement sets being inconsistent with
the final mesh.
2022-03-16 10:43:27 +00:00
08b7a94452 mapFields, mapFieldsPar: Removed the subtract option and supporting complexity in meshToMesh0 and meshToMesh
The subtract option in mapFieldsPar was not implemented correctly and the
significant complexity in meshToMesh required to support it creates an
unwarranted maintenance overhead.  The equivalent functionality is now provided
by the more flexible, convenient and simpler subtract functionObject.
2022-03-15 23:21:32 +00:00
e9608d8f0f Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2022-03-15 14:51:55 +00:00
a08bb7bae1 meshQualityDict: Switch off the minVol control by default
It is not clear for what cases the minVol control is useful or necessary and for
some cases it causes problems with snapping and layer addition if not set to a
sufficiently small value.
2022-03-15 14:50:12 +00:00
b5b842c688 foamGet: include controlDict.orig file in case check 2022-03-15 08:21:58 +00:00
f2bf348ab2 tutorials/incompressible/icoFoam/cavity: Updated transportProperties -> physicalProperties 2022-03-14 13:50:30 +00:00
bbaba1a645 topoSetDict: Corrected/updated formatting
Patch contributed by Institute of Fluid Dynamics, Helmholtz-Zentrum
Dresden - Rossendorf (HZDR)
2022-03-14 13:49:07 +00:00
dfc28bb580 multiphaseEulerFoam: populationBalance: Updated and improved source code documentation
Patch contributed by Institute of Fluid Dynamics, Helmholtz-Zentrum
Dresden - Rossendorf (HZDR)
2022-03-11 09:13:03 +00:00
9de4c78614 points0MotionSolver: Move points0 field to the time directory
This means the field gets decomposed and reconstructed in the same way
as any other point field, and prevents issues with restart of cases
which feature both mesh motion and topology change.
2022-03-10 21:28:17 +00:00
3995456979 parallelProcessing: Various improvements
boundaryProcAddressing has been removed. This has not been needed for a
long time. decomposePar has been optimised for mininum IO, rather than
minimum memory usage. decomposePar has also been corrected so that it
can decompose sequences of time-varying meshes.
2022-03-10 20:31:30 +00:00
dc052dd20c functionObjectList: Added access to the PtrList<functionObject>::append function
to allow addition of case specific functionObjects during the run.
2022-03-10 08:58:43 +00:00