Commit Graph

3606 Commits

Author SHA1 Message Date
d38ddea17e vtkPVFoam: use the fileHandler readDir
Patch contributed by Mattijs Janssens
2018-11-30 15:11:00 +00:00
d83d943ffe decomposePar: Added -noFields option
Patch contributed by Mattijs Janssens
2018-11-30 15:09:43 +00:00
1aa36fbea5 vtkPVFoam: added support for FOAM_LIBS for loading new file handlers at start-up
Patch contributed by Mattijs Janssens
2018-11-30 15:08:42 +00:00
58170f4405 argList: allow parallel running without a decomposeParDict and support -libs argument
to allow dynamic linking of libraries at start-up.

Patch contributed by Mattijs Janssens
2018-11-30 15:06:45 +00:00
8372163972 foamGet: Filter WM_PROJECT_SITE if not set 2018-11-30 15:04:59 +00:00
c370ec0583 tutorials/hotBoxes: Removed empty file 2018-11-30 09:29:51 +00:00
b785c988c6 ConeInjection: Added support for time-varying position and direction
The position and direction of cone injection sites can now be specified
using Function1 to make them change in time, relative to the start of
injection.

An example specification of the relevant entries is shown below.

    injectionModels
    {
        injection1
        {
            type            coneInjection;
            position        table
            (
                (0 (-0.1 -0.1 0))
                (0.25 (0.1 -0.1 0))
                (0.5 (0.1 0.1 0))
                (0.75 (-0.1 0.1 0))
                (1 (-0.1 -0.1 0))
            );
            direction       table
            (
                (0 (-1 -1 0))
                (0.25 (1 -1 0))
                (0.5 (1 1 0))
                (0.75 (-1 1 0))
                (1 (-1 -1 0))
            );
            outOfBounds     repeat;

            // etc ...
        }
    }

Sub-dictionaries can also be used if the keywords of parameters of the
two functions collide:

    injectionModels
    {
        injection1
        {
            type            coneInjection;
            position        tableFile;
            positionCoeffs
            {
                file            "constant/injection1.positions";
                outOfBounds     clamp;
            }
            direction       tableFile;
            directionCoeffs
            {
                file            "constant/injection1.directions";
                outOfBounds     repeat;
            }

            // etc ...
        }
    }

A check is also done to determine whether a constant function is in use
on a stationary mesh, in order to prevent repeated searching for the
same position, and therefore retain approximately the efficiency of the
previous implementation in simple cases.
2018-11-30 08:50:34 +00:00
f31a675478 thermophysicalModels: Further rationalisation of the of the combinations of energy and thermo property forms
eConst is now used with sensibleInternalEnergy rather the hConst for consistency
and efficiency.
2018-11-29 14:50:19 +00:00
d470b8ecef tutorials/wallBoiling: Updated relaxation factors and shortened initialisation periods
Patch contributed by Juho Peltola, VTT.
2018-11-29 11:58:57 +00:00
69b40df84b ThermalPhaseChangePhaseSystem: Consistency when solving for internal energy
The energy transfer associated with phase change has been corrected in
the case that the variable being solved for is internal energy.

Patch contributed by Juho Peltola, VTT.
2018-11-29 11:57:34 +00:00
b20e55ab5b waves: Minor fixes to wave model velocity functions 2018-11-29 08:48:56 +00:00
49d60b8520 Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2018-11-28 22:08:59 +00:00
bcbfe542cf Rationalised WM_PROJECT_SITE and WM_PROJECT_INST_DIR in foamEtcFile and etcFiles
for consistency with WM_PROJECT.  Now "etc" files are assumed to be in etc
sub-directories of WM_PROJECT_SITE and WM_PROJECT_INST_DIR allowing other files
to be stored in those directories.  The search order is now:

Search for files from user/group/shipped directories.
The search scheme allows for version-specific and
version-independent files using the following hierarchy:
- \b user settings:
  - ~/.OpenFOAM/\<VERSION\>/
  - ~/.OpenFOAM/
- \b group (site) settings (when $WM_PROJECT_SITE is set):
  - $WM_PROJECT_SITE/\<VERSION\>/etc/
  - $WM_PROJECT_SITE/etc/
- \b group (site) settings (when $WM_PROJECT_SITE is not set):
  - $WM_PROJECT_INST_DIR/site/\<VERSION\>/etc/
  - $WM_PROJECT_INST_DIR/site/etc/
- \b other (shipped) settings:
  - $WM_PROJECT_DIR/etc/

\return The list of full paths of all the matching files or
an empty list if the name cannot be found.
Optionally abort if the file cannot be found.
Optionally stop search after the first file has been found.

This change was proposed and agreed by the sponsors of the OpenFOAM project on
the OpenFOAM Hub, see https://openfoam.org/maintenance/
2018-11-28 22:00:34 +00:00
d012e3eb1e levelSetTemplates: Fixed bug in boundary handling 2018-11-28 14:42:49 +00:00
3c60437a3e Renamed directory fixedInternalValueFvPatchField -> fixedInternalValue for consistency 2018-11-28 10:24:50 +00:00
95815460c0 Comment spelling corrections 2018-11-28 10:24:26 +00:00
062c956dfd foamGet: added directory target for scalar field s 2018-11-26 11:20:53 +00:00
e353a07ecf functionObjects/field/age: Added schemesField option
This allows scheme and solver settings used for the calculation of age
to be copied from another variable
20181125
2018-11-25 12:55:09 +00:00
b9f8eb8dd1 foamGet: selecting target directory based on file name 2018-11-23 19:16:27 +00:00
ecd30940d1 caseDicts: added example All* workflow scripts 2018-11-23 18:50:36 +00:00
01763b037d Allmesh scripts: removed unused variables and legacy syntax 2018-11-23 18:41:55 +00:00
b928e37677 functionObjects: Added age function object
This object calculates a field of the age of fluid in the domain; i.e.,
the time taken for a fluid particle to travel to a location from an
inlet. It outputs a field, named age, with dimensions of time, and
requires a solver and a div(phi,age) scheme to be specified. A number of
corrections for the solution procedure can be set, as well as the name
of the flux and density fields.

Example specification:

    age1
    {
        type    age;
        libs    ("libfieldFunctionObjects.so");
        nCorr   10;
        phi     phi;
        rho     rho;
    }

Example usage:

    postProcess -func age -fields "(phi)" -latestTime

This work was supported by Robert Secor and Lori Holmes, at 3M
2018-11-23 08:37:48 +00:00
e928eafa52 Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2018-11-20 11:33:02 +00:00
bcf4e68901 Further rationalisation of the handling of "Final" solver settings
The selection of the "Final" solver settings is now handled automatically within
the "<equation>.solve()" call and there is no longer any need no provide a bool
argument for specific cases.  This simplifies the solution algorithm loop
structures and ensures consistency in behaviour across all solvers.

All tutorials have been updated to correspond to the now consistent rules.
2018-11-20 11:28:02 +00:00
f810b87dba solutionControl: Default simpleRho true when steady, and improved log messages 2018-11-19 13:53:11 +00:00
ee443e201f Rationalised the handling of "Final" solver and relaxation factor settings
Now for transient simulations "Final" solver settings are required for ALL
equations providing consistency between the solution of velocity, energy,
composition and radiation properties.

However "Final" relaxation factors are no longer required for fields or
equations and if not present the standard value for the variable will be
applied.  Given that relaxation factors other than 1 are rarely required for
transient runs and hence the same for all iterations including the final one
this approach provide simpler input while still providing the flexibility to
specify a different value for the final iteration if required.  For steady cases
it is usual to execute just 1 outer iteration per time-step for which the
standard relaxation factors are appropriate, and if more than one iteration is
executed it is common to use the same factors for both.  In the unlikely event
of requiring different relaxation factors for the final iteration this is still
possible to specify via the now optional "Final" specification.
2018-11-17 19:42:23 +00:00
ae28cb34d2 fanFvPatchField -> fanPressureJumpFvPatchScalarField: for consistency with fanPressureFvPatchScalarField
Description
    This boundary condition provides a pressure jump condition, using
    the \c cyclic condition as a base.

    The jump is specified as a \c Function1 type, to enable the use of, e.g.
    constant, polynomial, table values. This boundary condition can operate
    in two modes - standard and backward compatibility.
    In standard mode, jump is specified as a function of total volumetric
    flow rate through the patch. In backward compatibility mode, the boundary
    conditions serves as a direct replacement for the fanFvPatchField, where
    jump is defined as a function of local velocity.

Usage
    \table
        Property     | Description             | Required    | Default value
        patchType    | underlying patch type should be \c cyclic| yes |
        fanCurve     | fan curve, e.g. \c csvFile | yes      |
        jumpTable    | jump data (backward compatibility mode) | no       |
        reverse      | reverse jump direction  | no | false
        phi          | flux field name         | no          | phi
        rho          | density field name      | no          | rho
    \endtable

    Example of the boundary condition specification:
    \verbatim
    <patchName>
    {
        type            fan;
        patchType       cyclic;
        fanCurve       csvFile;
        csvFileCoeffs
        {
            hasHeaderLine   1;
            refColumn       0;
            componentColumns 1(1);
            separator       ",";
            file           "$FOAM_CASE/constant/pressureVsQ";
        }
        value           uniform 0;
    }
    \endverbatim

    The above example shows the use of a comma separated (CSV) file to specify
    the jump condition.

Contributed by Daniel Jasinski
Resolves bug-report https://bugs.openfoam.org/view.php?id=3102#c10159
20181117
2018-11-14 15:35:35 +00:00
ffd0f34c24 coupledPolyPatch, coupledPolyPatch: Added defaultTransform argument 2018-11-14 14:48:02 +00:00
3980cc887c interfacialCompositionModels/Henry: Updated documentation
Corrected spelling and made it clear that the supplied constants are
dimensionless solubilities.
2018-11-13 16:15:28 +00:00
11eaf751d3 distanceSurface, sampledCuttingPlane, foamyHexMeshBackgroundMesh: Updated for new isoSurface implementation 2018-11-13 14:50:08 +00:00
c4dc7f0f8e isoSurface: Improved iso-surface algorithm
Includes topological point generation and optional removal of all points (and
triangles) that do not originate from mesh edges.  This generates
polygons rather than triangles providing smoother surfaces and significantly
small files (~ factor of 3-4 smaller).

Contributed by Mattijs Janssens
2018-11-13 14:47:19 +00:00
0b99b5af1a sampling: Removed deprecated isoSurfaceCell 2018-11-13 12:14:13 +00:00
7b3cc689a6 chtMultiRegionFoam: Only do closed volume handling when running steady
This resolves bug report https://bugs.openfoam.org/view.php?id=3105
2018-11-13 09:24:30 +00:00
c3018b3f07 limitedSchemes OSPRE, vanAlbada: ensure r is positive
Patch contributed by Alberto Passalacqua
Resolves bug-report https://bugs.openfoam.org/view.php?id=3100
2018-11-12 22:48:13 +00:00
b80f0d3cdd chemFoam: Added support for constant temperature
By setting

    constantProperty temperature;

in constant/initialConditions the composition evolves at constant temperature.
2018-11-12 17:44:38 +00:00
ed629586c2 etc/templates: Added comments to aid conversion from steady to transient configuration 2018-11-12 17:15:09 +00:00
8c4fa9508e tutorials/incompressible/pimpleFoam/RAS/pitzDaily/system/fvSchemes: removed "bounded"
"bounded" filtering of the convection schemes is only appropriate for stead-state.
2018-11-12 16:50:40 +00:00
669c7d8405 Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2018-11-12 16:50:15 +00:00
224814185c etc/templates: Updated the handling of pcorr 2018-11-12 16:49:34 +00:00
3e45506246 SubDimensionedField: Removed
This was not being used and had not been kept up to date. It also didn't
actually do dimension checking, so the name was misleading, and the
functionality added on top of SubField was minimal.
2018-11-12 15:03:36 +00:00
06d8f79814 coneInjection: Combined cone and coneNozzle injections
coneInjection has been extended to include the functionality of
coneNozzleInjection, and the latter has been removed.

Some parameters have changed names. The "positionAxis" entry from
coneInjection has been removed in preferance of coneNozzleInjection's
single "position" and "direction" entries. This means that only one
injection site is possible per model (dictionary substitutions mean that
only minimal additions are required to add further injection sites with
the same parameters). The name of the velocity magnitude has been
standardised as "Umag" and "innerDiameter" and "outerDiamater" have been
renamed "dInner" and "dOuter" for consistency with the inner and outer
spray angles.

Velocity magnitude and diameters are no longer read when they are not
required.

The randomisation has been altered so that the injections generate a
uniform distribution on an cross section normal to the direction of
injection. Previously there was an unexplained bias towards the
centreline.

An example specification with a full list of parameters is shown below.

    injectionModels
    {
        model1
        {
            type            coneInjection;

            // Times
            SOI             0;
            duration        1;

            // Quantities
            massTotal       0; // <-- not used with these settings
            parcelBasisType fixed;
            parcelsPerSecond 1000000;
            flowRateProfile constant 1;
            nParticle       1;

            // Sizes
            sizeDistribution
            {
                type        fixedValue;
                fixedValueDistribution
                {
                    value   0.0025;
                }
            }

            // Geometry
            positions       (-0.15 -0.1 0);
            directions      (1 0 0);
            thetaInner      0;
            thetaOuter      45;
            // - Inject at a point
            injectionMethod point;
            // - Or, inject over a disc:
            /*
            injectionMethod disc;
            dInner          0;
            dOuter          0.05;
            */

            // Velocity
            // - Inject with constant velocity
            flowType        constantVelocity;
            Umag            1;
            // - Or, inject with flow rate and discharge coefficient
            //   This also requires massTotal, dInner and dOuter
            /*
            flowType        flowRateAndDischarge;
            Cd              0.9;
            */
            // - Or, inject at a pressure
            /*
            flowType        pressureDrivenVelocity;
            Pinj            10e5;
            */
        }

        model2
        {
            // The same as model1, but at a different position
            $model1;
            position        (-0.15 0.1 0);
        }
    }
2018-11-12 15:02:03 +00:00
ecaa6fb966 totalFlowRateAdvectiveDiffusiveFvPatchScalarField: Generalised the turbulence models lookup to support LES and RAS
Patch provided by Daniel Jasinski
Resolves feature request https://bugs.openfoam.org/view.php?id=3075
20181110
2018-11-09 14:47:26 +00:00
5c86bafb82 etc/caseDicts/solvers/chemistry/TDAC: New configuration files for TDAC
to simplify reacting case setup.

Tutorials
    tutorials/combustion/chemFoam/ic8h18_TDAC
    tutorials/combustion/reactingFoam/RAS/SandiaD_LTS
    tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC
    tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC
updated to benefit from the new configuration files.

Patch contributed by Francesco Contino
2018-11-08 23:06:52 +00:00
9ff8bf3ae4 etc/caseDicts: Remove inappropriate FoamFile entries from configuration files 2018-11-08 23:06:08 +00:00
c2e57015ee dictionary::includeEntry: Reinstate the parent dictionary FoamFile entry 2018-11-08 23:05:05 +00:00
5a988c068e paraFoam: Added check for ".orig" variants 2018-11-08 08:38:58 +00:00
7b59f1f169 Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2018-11-08 07:20:19 +00:00
8ee41932d6 externalWallHeatFluxTemperature: Avoid floating point exception
Patch contributed by Juho Peltola, VTT.
Resolves bug-report https://bugs.openfoam.org/view.php?id=3101
2018-11-07 12:11:30 +00:00
1c35e8a2f5 reactingEulerFoam: Added update interval for population balance source terms.
This can be used to speedup simulations that converge to a steady state
by only updating the source terms once every few iterations. The number
of iterations between each update is set in fvSolution as follows:

    solvers
    {
        bubbles
        {
            sourceUpdateInterval 10;
        }

        // etc ...
    }

By default the interval is 1, and so the sources update every time.

Based on a patch contributed by Juho Peltola, VTT.
2018-11-05 09:28:03 +00:00
9ecbf3b46f Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2018-11-03 10:01:18 +00:00