Commit Graph

5982 Commits

Author SHA1 Message Date
f7b08cd9ec argList: Improved documentation for the -libs option 2022-06-29 18:50:08 +01:00
af71115224 Single phase compressible solvers: added -listThermophysicalTransportModels option
to list the available thermophysical transport models.  Also added output for
laminar momentum and thermophysical transport models.
2022-06-28 09:37:51 +01:00
cf3a732789 decomposePar: Corrected error message
Resolves bug-report https://bugs.openfoam.org/view.php?id=3853
2022-06-25 15:28:41 +01:00
9668dd4c20 codedFixedValueFvPatchField: Added support for patchType
so that codedFixedValue BCs can be applied to constraint patches.
2022-06-25 14:20:15 +01:00
4745b9761d decomposePar: Removed inappropriate and fragile -ifRequired option
Resolves bug-report https://bugs.openfoam.org/view.php?id=3852
2022-06-24 19:45:37 +01:00
2628dfe679 Tensor: Added missing implementation of operator=(const DiagTensor<Cmpt>&) 2022-06-24 11:37:01 +01:00
85baf18d39 fvMeshMovers::none: The destructor should be virtual as the class has virtual functions 2022-06-22 22:38:42 +01:00
9d50ffdfbb TimeFunction1: Corrected handling of user-time
Resolves bug-report https://bugs.openfoam.org/view.php?id=3850
2022-06-22 22:37:41 +01:00
0f8a020c70 setDeltaT: Corrected time-step increase limiter 2022-06-21 15:26:36 +01:00
eeccdceb26 Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2022-06-14 14:10:39 +01:00
f0d3be60da utilities: Updated moveMesh -> setPoints
Mesh manipulation utilities do not need to generate or use mesh-motion fluxes so
it is more efficient to use setPoints rather than moveMesh.
2022-06-14 14:09:06 +01:00
da7286bc1d createNonConformalCyclics: Corrected overwrite
The handling of existing constant/fvMesh/polyFaces data has been
corrected so that it no longer interferes with the construction
of a new couple.
2022-06-14 11:52:16 +01:00
cc4f63fbd6 codedFvModel: Restored documentation removed in error 2022-06-14 09:17:22 +01:00
c451f73ed1 codedFvModel: Removed obsolete bits of documentation 2022-06-14 08:19:44 +01:00
737d737b22 polyMesh::setPoints: New function to reset the points
without calculating the mesh-motion fluxes or cache the old points.  Used for
efficient reconstruction of moving mesh cases run in parallel.
2022-06-14 00:21:51 +01:00
6437de8082 domainDecomposition: Call polyMesh::movePoints rather than fvMesh::movePoints
so that polyMesh::moving is not set during reconstruction of moving mesh cases.
2022-06-11 09:48:09 +01:00
867badc024 polyMesh, fvMesh: The moving and topoChanged flags are now maintained by fvMesh
avoiding problems with mesh generation, pre/post-processing applications
etc. triggering inappropriate changes to the moving and topoChanged states which
are only needed for updates in solvers corresponding to mesh changes.
2022-06-10 16:50:41 +01:00
6ff2603fce Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2022-06-10 16:50:06 +01:00
59f7a77093 lagrangian: PatchCollisionDensity: Corrected mass-density fields 2022-06-10 12:04:10 +01:00
d54f5ab9ad polyMesh: Changed topoChanging -> topoChanged
The topoChanged flag now indicates that the mesh topology has changed at the
start of the current time-step rather than it is changing during the run, for
subsequent time-steps without topology change it is set false until the next
topology change.
2022-06-10 12:01:28 +01:00
63ef6f59cf transonicEntrainmentPressureFvPatchScalarField: blending Mach No Mb now optional input
Mb, the Mach number at which blending to zeroGradient starts, can now be
specified in the input:

Description
    This boundary condition provides an entrainment condition for pressure
    including support for supersonic jets exiting the domain.

Usage
    \table
        Property     | Description                 | Required | Default value
        rho          | Density field name          | no       | rho
        psi          | Compressibility field name  | no       | thermo:psi
        gamma        | Heat capacity ratio (cp/Cv) | yes      |
        Mb           | Blending Mach No            | no       | 0.5
        phi          | Flux field name             | no       | phi
        p0           | Reference pressure          | yes      |
    \endtable

    Example of the boundary condition specification:
    \verbatim
    <patchName>
    {
        type            transonicEntrainmentPressure;
        gamma           1.4;
        Mb              0.3;
        p0              uniform 1e5;
    }
    \endverbatim
2022-06-09 21:21:02 +01:00
a9bd590793 fvMeshTopoChangers: Set topoChanging false before any updates and true on the first update
so that subsequent fvMeshTopoChangers in the fvMeshTopoChangers::list know if
any changes have already been applied to the mesh.
2022-06-08 16:55:57 +01:00
7d7d609975 fvMeshTopoChangers::linearValveFvMesh,linearValveLayersFvMesh: Removed, superseded by NCC
All sliding interfaces should use NCC.
2022-06-08 12:37:33 +01:00
ec02a0e881 fvMeshTopoChangers::raw: Prototype, no longer compiled by default
Description
    Prototype fvMeshTopoChanger without any added functionality.

    Can be used as the starting point for any polyTopoChanger based
    topo-changer.
2022-06-08 12:33:11 +01:00
f22e489a70 fvMeshTopoChangers::mixerFvMesh: Removed, superseded by NCC 2022-06-08 12:31:54 +01:00
45428b3260 fvMeshTopoChangers::list: New fvMeshTopoChanger which executes a list of fvMeshTopoChangers in order
Specified in the dynamicMeshDict as type list with the topoChangers dictionary
list following, e.g.

topoChanger
{
    type    list;

    libs    ("libfvMeshTopoChangers.so");

    topoChangers
    {
        refiner
        {
            type    refiner;
            .
            .
            .
        }

        another
        {
            type    another;
            .
            .
            .
        }
    }
}
2022-06-08 11:35:23 +01:00
c9d2b88a8f Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2022-06-07 16:31:19 +01:00
39422ac00a decompositionMethod: Removed the test for cellWeights
which is inconsistent with the weights storage arrangement for Zoltan

Resolves bug-report https://bugs.openfoam.org/view.php?id=3847
2022-06-07 16:29:44 +01:00
0040575a6f polyMesh: Removed unused "dynamic()" method 2022-06-07 13:38:02 +01:00
ed7073516f streamlines: Corrected calculation of age 2022-06-07 09:11:55 +01:00
3d0848996c kOmegaSST: Fixed propagation of correct to the base class 2022-06-07 08:38:44 +01:00
f9d575060e reconstructPar: Reinstate support for reconstructing pointLevel and cellLevel files
to be run with the -constant option after reconstructParMesh when reconstructing
a mesh generated by snappyHexMesh in parallel.
2022-06-04 11:15:03 +01:00
e3298597e1 compressibleInterFoam: Register dgdt to ensure it is mapped after mesh topology change 2022-06-04 11:14:26 +01:00
2a2cc976c4 tutorials/incompressible/pimpleFoam/laminar/movingCone: Added Allrun-parallel
to test and demonstrate the run-time mesh-to-mesh mapping in parallel
20220602
2022-05-30 15:20:34 +01:00
50a1522aaa Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2022-05-30 13:04:34 +01:00
8a517c4732 fvMeshTopoChangers::meshToMesh: Added support for "cutting" patches
These are introduced patches which do not correspond to any existing patches and
instead "cut" the internal mesh, thus requiring mapping from the internal mesh
fields rather than the patch fields.  Cutting patches are specified using the
optional 'cuttingPatches' keyword, e.g. in dynamicMeshDict:

topoChanger
{
    type        meshToMesh;

    libs        ("libmeshToMeshTopoChanger.so");

    cuttingPatches (splitter);

    times       (0.5 1.0);

    timeDelta   1e-6;
}
2022-05-30 13:00:37 +01:00
3e664e9279 mapFieldsPar: Removed unused function 2022-05-30 13:00:22 +01:00
f93300ee11 createBaffles: Simplified input syntax
This utility now always creates two patches, and only creates duplicate
faces when they connect to different cells and point in opposite
directions. Now that ACMI has been removed, there is no need to create
duplicate faces on the same cell and with similar orientations. This is
unituitive and is now considered an invalid mesh topology.

The preferred syntax for createBaffles is now as follows:

    internalFacesOnly true;

    baffles
    {
        cyclics
        {
            type        faceZone;
            zoneName    cyclicFaces;

            owner
            {
                name            cyclicLeft;
                type            cyclic;
                neighbourPatch  cyclicRight;
            }

            neighbour
            {
                name            cyclicRight;
                type            cyclic;
                neighbourPatch  cyclicLeft;
            }
        }
    }

Note that the 'patches' sub-dictionary is not needed any more; the
'owner' and 'neighbour' sub-dictionaries can be in the same dictionary
as the parameters with which faces are selected. For backwards
compatibility, however, a 'patches' sub-dictionary is still permitted,
as are keywords 'master' and 'slave' (in place of 'owner' and
'neighbour', respectively).

The 'patchPairs' syntax has been removed. Whilst consise, this syntax
made a number of assumptions and decisions regarding naming conventions
that were not sufficiently intuitive for the user to understand without
extensive reference to the code. If identical boundaries are desired on
both sides of the patch, dictionary substitution provides a more
intuitive way of minimising the amount of specifiection required. For
example, to create two back-to-back walls, the following specification
could be used:

    internalFacesOnly true;

    fields true;

    baffles
    {
        walls
        {
            type        faceZone;
            zoneName    wallFaces;

            owner
            {
                name            baffleWallLeft;
                type            wall;

                patchFields
                {
                    p
                    {
                        type            zeroGradient;
                    }

                    U
                    {
                        type            noSlip;
                    }
                }
            }

            neighbour
            {
                name            baffleWallRight;
                $owner; // <-- Use the same settings as for the owner
            }
        }
    }
2022-05-27 13:39:34 +01:00
d151a85bf7 tutorials/multiphase/multiphaseEulerFoam/RAS: Updated kineticTheoryModel tutorials 2022-05-27 10:28:48 +01:00
4b907e9bb0 semiPermeableBaffle: Move mapping to patch
This boundary condition no longer stores its own mapping. It now has to
be applied to a mapped wall (or equivalent) patch, which does the
mapping for it. This ensures that mapping information is shared between
multiple fields, and that redundant copies are not generated.
2022-05-26 11:08:43 +01:00
68151b8d01 multiphaseEulerFoam::kineticTheoryModel: Simplified the name of the divDevTau term in fvSchemes
For a single particle phase the divDevTau term in fvSchemes is now specified
thus:

    divDevTau(U.particles)    Gauss linear;

previously:
    div((((thermo:rho.particles*nut.particles)*dev2(T(grad(U.particles))))+(((thermo:rho.particles*lambda.particles)*div(phi.particles))*I))) Gauss linear;
2022-05-26 11:00:16 +01:00
861b7ba2b4 tutorials: Standardised boundary field indentation 2022-05-25 19:41:37 +01:00
141ee94b69 tutorials: Corrected end-of-file delimiter 2022-05-25 17:27:23 +01:00
3b4470d499 multiphaseEulerFoam, MovingPhaseModel: Register fields
All construct-on-demand fields are now registered, so tha they resize
and map appropriately when mesh changes occur
2022-05-25 16:02:57 +01:00
c58fa1c075 fvMeshStitchers::moving: Prevent communication missmatch
The sub mesh on which mesh fluxes are corrected potentially only exists
on a small subset of the processors. This was causing issues when
processor boundaries were evaluated as this triggered the construction
of weights and delta coefficients on only some of the processors,
causing a communications missmatch. This has been resolved by a
pre-emptive call to construct the surface interpolation coefficients.
2022-05-25 16:02:57 +01:00
744924bf69 mixtureKEpsilon: mixture k and epsilon fields are now required
to ensure complex BCs are selected and initialised correctly.

All mixture fields are now constructed and read as required in the construction
of the liquid (phase 1) mixtureKEpsilon model to ensure they are read before
time-increment and possible mesh topology change.
2022-05-25 15:57:33 +01:00
6d3e31f8e0 multiphaseEulerFoam::kineticTheoryModels, phasePressureModel: now use the phase.alphaMax()
rather than read and use a potentially inconsistent local value for alphaMax.
2022-05-25 13:47:18 +01:00
51307a5808 omegaWallFunction: Prevent hangs in cases where some processes have no wall 2022-05-25 10:19:11 +01:00
447ec4b5c2 epsilonWallFunction: Prevent hangs in cases where some processes have no wall 2022-05-24 16:55:45 +01:00
8521cdd0f4 polyMesh: Removed 'virtual' from methods that are never overridden 2022-05-24 14:22:22 +01:00