Commit Graph

3930 Commits

Author SHA1 Message Date
9bcbaea4a3 functionObjects::scalarTransport/phaseScalarTransport: Use int for the corrector loop
rather than label.
2019-07-15 22:29:10 +01:00
67d3a8dc1b paraFoam: Added support to read vol internal fields
This is useful to visualise sources which are created as
volScalarField::Internal, e.g. the turbulence generation term for models like
kEpsilon in which it is named kEpsilon:G.
2019-07-15 22:26:34 +01:00
d1fb1944e5 Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2019-07-15 12:51:00 +01:00
b7c0646ed9 PVFoamReader: Added support for visualising surfaceFields
To avoid additional clutter in the interface volFields, surfaceFields and
pointFields are now selected from a single fields selection box consistent with
the single directory with guaranteed unique names in which they are stored.

Note that when visualising the "phi" flux fields that these are extensive, the
value depends directly on the face area, so unless the mesh is uniform
interpolated continuous colour plots are not physical or informative.

Based on proposal contributed by Mattijs Janssens
2019-07-15 11:16:35 +01:00
aab3a22708 KinematicParcel: Corrected sign of Eo for bubbles
Resolves bug report https://bugs.openfoam.org/view.php?id=3305
2019-07-15 09:00:43 +01:00
6c7d08b262 isoSurface: Selection of filtering level
The filtering level for an iso-surface can now be selected. The keyword
is "filtering", and the options are "full", "partial" or "none". The
default is "full". The other options are only retained for debugging and
to provide a fallback if robustness of the full filtering algorithm is
an issue. As of commit 2ee8b7ac, "full" filtering has no known
disadvantages and is recommended in all usage cases.

This setting replaces the "regularise" entry, which switched between
what are now the "full" and "none" settings. "partial" was not
previously an option.
2019-07-15 08:34:07 +01:00
916d0a0624 isoSurface: Additional fixes for isoSurface 'eroding' surfaces down to nothing
This is a slight rework of commit c81abfef. Instead of adapting tet
base points cell-by-cell, the dangling points are pre-computed and then
the adaptations to the base points are made face-by-face. This correctly
adapts faces which have different dangling points relative to the owner
and neighbour cells.
2019-07-15 08:34:06 +01:00
26187dd89d etc/templates: Updated to use the new dictionary "slash" syntax 2019-07-11 19:54:17 +01:00
33c3521c7a Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2019-07-11 19:45:12 +01:00
e947e4d301 tutorials: Updated to use the new dictionary "slash" syntax 2019-07-11 19:44:29 +01:00
163324d837 foamDictionary: Added support for the new dictionary "slash" syntax
Maintains backward compatibility with the current "dot" syntax.
2019-07-11 19:43:40 +01:00
4e902bf450 fixedValueFvPatchField: Removed value constructor
The corresponding constructor in the base class was removed as part of a
number of related changes to patch field construction in commit
70021b12.

Resolves bug report https://bugs.openfoam.org/view.php?id=3304
2019-07-11 10:46:00 +01:00
b7c0cdefce dictionary: Added support for absolute paths when reading dictionaries referred to within keywords
For example in the combustion/coldEngineFoam/freePiston/0/p field the
internalField entry may be obtained from the include/caseSettings dictionary
using either a relative path:

    internalField   uniform $include/caseSettings!internalField/p;

or an absolute path:

    internalField   uniform ${$FOAM_CASE/0/include/caseSettings!internalField/p};

in which recursive substitution using ${...} is applied to expand the $FOAM_CASE
environment variable.
2019-07-11 09:46:42 +01:00
c4a61bb8ac dictionary: Read dictionaries referred to within keywords relative to the directory of the current dictionary
Special handling for absolute paths will be added.
2019-07-11 00:22:17 +01:00
cd910ed6b8 dictionary::inputSyntaxEntry: Completed support for specifying the default syntax in etc/controlDict 2019-07-11 00:16:30 +01:00
cba96822f4 tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012/system/blockMeshDict: Updated to demonstrate the new "slash" syntax 2019-07-10 19:41:44 +01:00
329852dcba applications/test/dictionary: Added comments to the new test dictionaries 2019-07-10 19:41:17 +01:00
16333b47c5 Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2019-07-10 15:26:32 +01:00
b3d61748a6 dictionary: Added support for directly reading entries from other dictionary files
In order to avoid conflict with the use of ':' in model-specific fields,
e.g. "thermo:rho", in the "slash" syntax the '!' character is now used to refer
to the top-level dictionary.

If there is a part of the keyword before the '!' then this is taken to be the
file name of the dictionary from which the entry will be looked-up using the
part of the keyword after the '!'.

For example, given a dictionary file named testSlashDict2:

internalField 5.6;

active
{
    type            fixedValue;
    value.air       $internalField;
}

it is now possible to read entries from it directly in the dictionary file testSlashDict:

external
{
    value $testSlashDict2!active/value.air;
}

active2
{
    $testSlashDict2!active;
}

which expands to

external
{
    value           5.6;
}

active2
{
    type            fixedValue;
    value.air       5.6;
}
2019-07-10 15:13:56 +01:00
73d253c34b blockMesh: Angle-and-axis specification for arc edges
Arc-edges can now be specified with a sector angle (in degrees) and an
axis of the circle of which the arc forms a part. The new syntax is as
follows:

   edges
   (
       arc <vertex-0> <vertex-1> <angle> (<axis-x> <axis-y> <axis-z>)
   );

This is often more convenient than the alternative specification where a
third third point somewhere in the arc is given; it usually does not
require any additional calculation on the part of the user, and multiple
entries are very likely to be identical.

Which specification is used depends on the form of the entry that comes
after the two vertices. If the entry is a vector then it is assumed to
be a point in the arc; if it is scalar then is is taken to be the angle
and the axis is assumed to follow.

For example, to put a 90 degree arc between the vertices 12 and 13, at
(1 0 0) and (0 1 0) respectively, the following specification can now be
used:

   edges
   (
       arc 12 13 90.0 (0 0 1)
   );

This is equivalent to the existing point-in-arc speficiation below:

   edges
   (
       arc 12 13 (0.707107 0.707107 0)
   );

An edge's points are ordered on the perimeter of the circle according to
a right-hand screw rule on the given axis. Changing the the side of the
edge on which the arc is defined can therefore be achieved by reversing
either the edge or the direction of the axis.

If the given axis is not perpendicular to the line between the vertices,
then the arc gains some axial length and becomes a helix.
2019-07-10 11:05:10 +01:00
a7b8425690 dictionary: Added experimental "slash" syntax
A new optional "slash" scoping syntax is now provided which is more intuitive
than the current "dot" syntax as it corresponds to the common directory/file
access syntax used in UNIX, and avoids limitations of the "dot" (see below)
e.g.

internalField 3.4;

active
{
    type            fixedValue;
    value.air       $internalField;
}

inactive
{
    type            anotherFixedValue;

    value           $../active/value.air;
    anotherValue    $:active/value.air;

    sub
    {
        value           $../../active/value.air;
        anotherValue    $:active/value.air;
    }
}

"U.*"
{
    solver GAMG;
}

e.air
{
    // This does expand
    $U.air;
}

"#inputSyntax slash;" selects the new "slash" syntax.
"../" refers to the parent directory.
":" refers to the top-level directory.

The corresponding dictionary using the current "dot" syntax is

internalField 3.4;

active
{
    type            fixedValue;
    value.air       $internalField;
}

inactive
{
    type            anotherFixedValue;

    value           $..active.value.air;
    anotherValue    $:active.value.air;

    sub
    {
        value           $...active.value.air;
        anotherValue    $:active.value.air;
    }
}

"U.*"
{
    solver GAMG;
}

e.air
{
    // This doesn't expand
    $U.air;
}

Note that the "$U.air" expansion does not work in this case due to the
interference between the use of '.' for scoping and phase-name.
This is a fundamental problem which prompted the development of the new more
intuitive and flexible "slash" syntax.

The new syntax also allows a for planned future development to access entries
in directories in other files, e.g.

active
{
    type            fixedValue;
    value.air       $FOAM_CASE/internalFieldValues/value.air;
}

or

active
{
    type            fixedValue;
    value.air       :../internalFieldValues/value.air;
}
2019-07-09 16:45:07 +01:00
481f643aec bool, int32, int64: Added writeEntry function to avoid ambiguity compiling with 64bit labels 2019-07-09 11:29:43 +01:00
3431c1d21e Updated unit expressions in documentation to new standardised form 2019-07-08 16:05:33 +01:00
9cc193398f tutorials/multiphase/reactingMultiphaseEulerFoam/laminar/bed: Increased water flow rate 2019-07-08 15:57:28 +01:00
95844db860 zoltanRenumber: include required PstreamGlobals.H 2019-07-08 10:49:59 +01:00
802f3c1c22 tutorials/mesh/snappyHexMesh: Corrected links 2019-07-05 15:33:59 +01:00
803fdc07f9 Updated User Guides to version 7 version-7 2019-07-05 14:21:52 +01:00
44753ff120 etc/config.*: Updated default ParaView version to 5.6.0 2019-07-05 13:30:52 +01:00
1cd4b292eb fvOptions::damping: Corrected handling of multiple damping regions
Resolves bug-report https://bugs.openfoam.org/view.php?id=3302
2019-07-04 14:25:21 +01:00
4915a13260 mapFields: Corrected FOAM_CASE_NAME -> FOAM_CASENAME 2019-07-02 17:03:14 +01:00
9980357df1 wmake: use expandPath to expand $PWD to handle symlinks
Resolves patch request https://bugs.openfoam.org/view.php?id=3301
2019-07-02 11:58:04 +01:00
28ef37d60e etc/templates/singleFluidCHT/templates/materials/water/thermophysicalProperties: Corrected water Prandtl number
Resolves bug-report https://bugs.openfoam.org/view.php?id=3298
2019-06-27 16:07:13 +01:00
fb6eff2c87 Moved tutorials/multiphase/compressibleInterFoam/RAS/sloshingTank2D to tutorials/multiphase/compressibleInterFoam/laminar/sloshingTank2D
Resolves bug-report https://bugs.openfoam.org/view.php?id=3296
2019-06-24 14:40:36 +01:00
5c188ddce7 Completed standardisation of the class declaration section comments to correspond to the foamNewSource template 20190622 2019-06-21 22:45:47 +01:00
5dbbac7c86 Solvers: standardised the class declaration section comments to correspond to the foamNewSource template 2019-06-20 13:53:03 +01:00
96b69f6f88 Standardised and rationalised the way in which units are written in function documentation 2019-06-20 10:54:14 +01:00
e599162b09 Utilities: standardised the class declaration section comments to correspond to the foamNewSource template 2019-06-19 17:53:10 +01:00
0101722b0f Standardised the class declaration section comments to correspond to the foamNewSource template 2019-06-19 16:45:21 +01:00
213319ae30 Standardised the class declaration section comments to correspond to the foamNewSource template 2019-06-19 15:01:35 +01:00
4d297126d9 Standardised the class declaration section comments to correspond to the foamNewSource template 2019-06-19 11:54:55 +01:00
251f91cfa5 fvOptions::isotropicDamping: New wave damping fvOption
This implicit isotropic damping function relaxes the velocity field towards a
specified uniform value which can be set to (0 0 0) if no flow is required.
This is particularly appropriate to damp the waves in a closed wave tank with no
mean flow.

Testing on the interFoam wave has shown that for this simple case with uniform
mean flow the new isotropicDamping fvOption provides more rapid and complete
damping than the original verticalDamping.
2019-06-18 22:06:17 +01:00
8e9f692aa4 Standardised the class declaration section comments to correspond to the foamNewSource template 2019-06-13 21:26:33 +01:00
47d19548c1 cut: Templated point type
This allows for different information to be passed around the cut
routines; in particular, classes representing the topology of the cuts.
2019-06-13 08:58:31 +01:00
ac5b46bafe mixtureKEpsilon: Added documentation for the bubble generated turbulence coefficient 2019-06-11 15:36:40 +01:00
6f6d5380d6 nutURoughWallFunction: Updated handling of the low y+ region, consistent with nutkRoughWallFunction
Results for nutkRoughWallFunction and nutURoughWallFunction are now reasonably
consistent and both are now more robust and handle small near-wall cells more
reliably.  However if the wall roughness height is large, ~domain width, the
nutURoughWallFunction produces a lot less realistic results than the
nutkRoughWallFunction which appears to behave surprisingly well.
2019-06-11 13:00:38 +01:00
958d907ca5 etc/templates/singleFluidCHT/README: Corrected typo
Resolves bug report https://bugs.openfoam.org/view.php?id=3290

Tested-by: Henry Weller <http://openfoam.org>
2019-06-10 10:19:37 +01:00
d0bf565783 tutorials/incompressible/boundaryFoam/boundaryWallFunctionsProfile/Allrun: Updated for latest gnuplot 2019-06-08 14:38:23 +01:00
6eb05f8b3d snappyHexMesh::meshRefinement: clear the mesh before mapping to avoid issues with mapping the mesh flux field 2019-06-08 14:37:43 +01:00
926b6a25db nutURoughWallFunction: Updated for input consistency with nutkRoughWallFunction
Now both the nutkRoughWallFunction and nutURoughWallFunction us the same field
based Ks and Cs input to support non-uniform surface roughness.

Note that nutURoughWallFunction is not exactly consistent with the
nutUWallFunction in the limit of roughness height = 0 and also not consistent
with nutkRoughWallFunction, particularly if the near-wall cell is in the laminar
sub-layer for which nutURoughWallFunction is currently incorrect.

Significant further work on the nutURoughWallFunction is needed to make it
consistent with both the nutUWallFunction and nutkRoughWallFunction BCs.
2019-06-08 14:31:17 +01:00
94dbab46d2 nutkRoughWallFunction: Further rationalisation 2019-06-08 14:30:58 +01:00