Commit Graph

5552 Commits

Author SHA1 Message Date
677defdc5c particleTracks, steadyParticleTracks: Standardised dictionary locations
Settings for the particleTracks utility are now specified in
system/particleTracksDict. Correspondingly, settings for
steadyParticleTracks are now specified in
system/steadyParticleTracksDict.
2021-07-02 17:09:31 +01:00
e017a1e664 viewFactorsGen,faceAgglomerate: Moved viewFactorsDict to system 2021-07-02 16:45:46 +01:00
609d1839ad blockMesh: Improved error message 2021-07-02 16:45:27 +01:00
c63c1a90c2 systemDict: Consistent handling of the -dict option
The -dict option is now handled correctly and consistently across all
applications with -dict options. The logic associated with doing so has
been centralised.

If a relative path is given to the -dict option, then it is assumed to
be relative to the case directory. If an absolute path is given, then it
is used without reference to the case directory. In both cases, if the
path is found to be a directory, then the standard dictionary name is
appended to the path.

Resolves bug report http://bugs.openfoam.org/view.php?id=3692
2021-07-02 15:11:06 +01:00
2fe27ab56e patchFields: Consistent patchType handling across field types
The patchType override logic has been simplified and made consistent
between fv, fvs and point patch fields. The "constraintType" attribute
has been removed from point fields as it was not being used.
2021-07-02 08:44:56 +01:00
261d5ccd6d patchFields: Fixes to patchType handling
This change fixes failures that occur with the mapping of fields with
patchType overrides. It fixes a crash that previously occurred when
redistributing patch fields with patchType overrides. It also makes
decomposition correctly maintain patchType overrides on cyclics when
those cyclics are separated and become processorCyclics.

These fixes have been achieved by removing the patchType override data
from the fv and point patches. Whether or not the field overrides the
underlying patchType constraint is now determined on the fly from the
patch and field names and what is available on the field run-time
selection table.
2021-07-01 16:13:05 +01:00
fbfbe79bcd engineTime: Added support for -case
Resolves bug-report http://bugs.openfoam.org/view.php?id=3690
2021-06-29 17:42:39 +01:00
10a6e7a46b kOmega2006: New RAS turbulence model
This is the 2006 version of Wilcox's k-omega RAS turbulence model which has some
similarities in formulation and behaviour to the k-omega-SST model but is much
simpler and cleaner.  This model is likely to perform just as well as the
k-omega-SST model for a wide range of engineering cases.

Description
    Standard (2006) high Reynolds-number k-omega turbulence model for
    incompressible and compressible flows.

    References:
    \verbatim
        Wilcox, D. C. (2006).
        Turbulence modeling for CFD, 3rd edition
        La Canada, CA: DCW industries, Inc.

        Wilcox, D. C. (2008).
        Formulation of the kw turbulence model revisited.
        AIAA journal, 46(11), 2823-2838.
    \endverbatim

    The default model coefficients are
    \verbatim
        kOmega2006Coeffs
        {
            Cmu         0.09;
            beta0       0.0708;
            gamma       0.52;
            Clim        0.875;
            alphak      0.6;
            alphaOmega  0.5;
        }
    \endverbatim
2021-06-29 15:24:51 +01:00
d1d5092550 fvMeshDistribute: Cleaned-up handling of processorPatchFields 2021-06-25 22:28:20 +01:00
62cc1b2165 Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2021-06-25 18:12:12 +01:00
934fa98b97 fvMesh::updateMesh: Only store the old-time volumes if they are already present
i.e. if mesh-morphing is active
2021-06-25 18:11:20 +01:00
95e5008e29 bash_completion: Updated completion
The generation script has also been modified slightly to prevent empty
entries being generated for scripts with no options; e.g., the scripts
in $WM_PROJECT_DIR/bin that report a change in application name
2021-06-25 10:35:04 +01:00
45a0059026 splitBaffles, mergeBaffles: New utilities to replace mergeOrSplitBaffles
splitBaffles identifies baffle faces; i.e., faces on the mesh boundary
which share the exact same set of points as another boundary face. It
then splits the points to convert these faces into completely separate
boundary patches. This functionality was previously provided by calling
mergeOrSplitBaffles with the "-split" option.

mergeBaffles also identifes the duplicate baffle faces, but then merges
them, converting them into a single set of internal faces. This
functionality was previously provided by calling mergeOrSplitBaffles
without the "-split" option.
2021-06-25 10:30:39 +01:00
a0f25afd06 Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2021-06-24 15:13:51 +01:00
f02d5e32a8 fvMesh: Added prototype updateMesh(const mapDistributePolyMesh& mdpm) for mesh redistribution
Correct mesh redistribution requires that both the polyMesh AND fvMesh are
updated correctly, i.e. all cached topology and geometry are mapped.

Currently field redistribution is handled by fvMeshDistribute but should be
moved into fvMesh::updateMesh(const mapDistributePolyMesh& mdpm).  Also in the
future all other classes with a updateMesh(const mapPolyMesh& mpm) function will
need a updateMesh(const mapDistributePolyMesh& mdpm), e.g. fvModels, Lagrangian
etc. and the interface propagated through MeshObject so that the mesh can ensure
everything is updated correctly.
2021-06-24 15:07:59 +01:00
800f37b892 fvMeshDistribute: Update processorPatchFields correctly rather than set to Zero 2021-06-24 14:58:48 +01:00
0bf8a28f80 fvPatchFields: Removed mapping checks that fail for valid redistribution 2021-06-24 14:49:29 +01:00
dae463dbd8 TimePaths: Rationalised path methods 2021-06-24 14:20:00 +01:00
77213b62d1 Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2021-06-24 10:24:06 +01:00
9c73d4d206 decomposeParDict: The 'delta' entry for geometric decomposition is no option and defaults to 0.001
When using 'simple' or 'hierarchical' decomposition it is useful to slightly rotate a
coordinate-aligned block-mesh to improve the processor boundaries by avoiding
irregular cell distribution at those boundaries.  The degree of slight rotation
is controlled by the 'delta' coefficient and a value of 0.001 is generally
suitable so to avoid unnecessary clutter in 'decomposeParDict' 'delta' now
defaults to this value.
2021-06-24 10:18:20 +01:00
3c4261be37 viewFactorsGen: Write VTK directly without a system call 2021-06-24 10:08:40 +01:00
02b97a714a polygonTriangulate: Added robust polygon triangulation algorithm
The new algorithm provides robust quality triangulations of non-convex
polygons. It also produces a best attempt for polygons that are badly
warped or self intersecting by minimising the area in which the local
normal is in the opposite direction to the overal polygon normal. It is
memory efficient when applied to multiple polygons as it maintains and
reuses its workspace.

This algorithm replaces implementations in the face and
faceTriangulation classes, which have been removed.

Faces can no longer be decomposed into mixtures of tris and
quadrilaterals. Polygonal faces with more than 4 sides are now
decomposed into triangles in foamToVTK and in paraFoam.
2021-06-24 10:08:38 +01:00
01494463d0 FoamFile: 'version' entry is now optional, defaulting to 2.0
The FOAM file format has not changed from version 2.0 in many years and so there
is no longer a need for the 'version' entry in the FoamFile header to be
required and to reduce unnecessary clutter it is now optional, defaulting to the
current file format 2.0.
2021-06-23 20:50:10 +01:00
b28947604c Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2021-06-23 10:18:56 +01:00
ebe0b6f0cb surfaceFilmModels::kinematicSingleLayer: Added maximum Courant number to info
e.g. in the tutorials/combustion/buoyantReactingFoam/Lagrangian/cylinder log:
.
.
.
Surface film: thermoSingleLayer
    added mass         = 0.043
    current mass       = 0.04300000007
    min/max(mag(U))    = 4.103129368e-18, 0.3516130906
    max Courant number = 0.1622700892
    min/max(delta)     = 0, 0.0009353648867
    coverage           = 0.01952279011
    ejected mass      = 0
      - patch: region0_to_wallFilmRegion_wallFilmFaces: 0
    transferred mass      = 0
      - patch: region0_to_wallFilmRegion_wallFilmFaces: 0
    min/mean/max(T)    = 299.9999757, 300, 300.0000115
    mass phase change  = 0
    vapourisation rate = 0
.
.
.
2021-06-23 10:14:32 +01:00
eaf88b252f templates: remove 'fixed' patch from nonRotatingPatches 2021-06-23 09:40:49 +01:00
4af28562c5 tutorials/multiphase/multiphaseEulerFoam/laminar/mixerVesselAMI2D: Changed to enthalpy
Solving for enthalpy provides better convergence and stability than internal
energy.  Also correctPhi is now off pending the addition of compressibility
effects to the pcorr equation.
2021-06-22 22:04:05 +01:00
e566172eda MapFvSurfaceField: Generalised the mapping of surfaceField
to differentiate between flux field which require face-flipping and
non-extensive surface fields which do not.  Currently flux fields are
distinguished by being surfaceScalarField with dimensions of either volumetric
or mass flux.

This change corrects the handling of the surfaceVectorField Uf which was
previously mapped incorrectly on faces requiring the flipping of the flux
orientation.
2021-06-22 19:31:53 +01:00
bf0889e15f Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2021-06-22 17:41:09 +01:00
b9751e8661 porousBafflePressureFvPatchField: Updated using dimMassFlux 2021-06-22 17:35:09 +01:00
7801f04dff dimensionSets: Added dimFlux (volumetric flux) and dimMassFlux (mass flux) 2021-06-22 17:32:31 +01:00
3168d93a38 dimensionSets: Added dimFlux (volumetric flux) and dimMassFlux (mass flux) 2021-06-22 16:56:40 +01:00
fac831df42 foamCleanCase: new simplified script to clean a case directory,
resetting it to its initial state.

Also updated documentation of foamCleanTutorials.
2021-06-22 11:52:54 +01:00
ace45a5f35 Merge branch 'master' of github.com:OpenFOAM/OpenFOAM-dev 2021-06-22 10:39:19 +01:00
a172463bd0 tutorials: added multiregion support to CleanFunctions and
removed redundant foamCleanPolyMesh script
2021-06-22 10:39:14 +01:00
3baba56734 dynamicMesh: Renamed boundaryMesh to repatchMesh and removed unused code 2021-06-22 09:48:36 +01:00
9283955b99 tutorials/compressible/rhoPimpleFoam/RAS/annularThermalMixer: Removed unnecessary files 2021-06-21 22:39:45 +01:00
7a176e360c codedFunction1Template.H: Added fieldTypes.H 2021-06-21 22:37:47 +01:00
b2b7240733 Merge branch 'master' of github.com:OpenFOAM/OpenFOAM-dev 2021-06-21 16:45:10 +01:00
5f64d07ca8 tutorials: remove redirects to /dev/null 2021-06-21 16:44:38 +01:00
a913639957 Field.C: Removed unnecessary #includes 2021-06-21 16:21:04 +01:00
0ef0247628 snappyHexMesh: Renamed shellSurfaces to the more logical refinementRegions 2021-06-21 14:22:43 +01:00
ca35389788 snappyHexMesh: 'refinementRegions', 'refinementSurfaces' and 'features' are now optional
entries in 'castellatedMeshControls' in snappyHexMeshDict to remove unnecessary clutter.
2021-06-21 13:30:53 +01:00
887f67ea84 snappyHexMesh: Changed confusing 'refinementSurfaces' option 'cellZoneInside' to 'mode'
for example

    cellZoneInside  inside;

becomes

    mode            inside;

in snappyHexMeshDict

Support for the previous name 'cellZoneInside' is maintained for backward
compatibility.
2021-06-21 13:26:00 +01:00
c8307122c6 surfaceFieldValue: Corrected input of the orientWeightField
Resolves bug-report https://bugs.openfoam.org/view.php?id=3689
2021-06-19 12:12:06 +01:00
af5ec2230c Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2021-06-18 16:37:54 +01:00
7e97a9b234 internalFvPatchField, internalFvsPatchField: Added mapping for redistribution 2021-06-18 16:37:16 +01:00
f4a65fbada sampling: Renamed and moved classes from fileFormats
The writer class has been renamed setWriter in order to clarify its
usage. The coordSet and setWriter classes have been moved into the
sampling library, as this fits their usage.
2021-06-18 13:57:11 +01:00
77f3c014bc searchableSurfaces: Removed dependence on the set writers 2021-06-18 13:57:09 +01:00
0ba5f5b8a9 fileFormats: Added generic write functions for VTK poly data
The new write functions are currently being utilised by setSet and the
vtkSurfaceWriter, but it should eventually be possible for more examples
of VTK poly data writing to be converted to use these functions.
2021-06-18 13:54:56 +01:00