Commit Graph

4915 Commits

Author SHA1 Message Date
9197d7047f bin/foamSequenceVTKFiles: update, file numbering start with 0. 2020-12-02 16:15:23 +00:00
f85dbc557f polyBoundaryMesh: Update indices in neighbour patches on reorder 2020-12-02 11:01:55 +00:00
685664b3ca fvMeshDistribute: Corrected ordering of processor cyclics 2020-12-02 11:01:55 +00:00
983f77e19c snappyHexMesh: Fixed syncronisation of position averages
Sums of positions cannot be syncronised directly, as they are neither a
true position or a displacement, so that cannot be transformed across
coupled interfaces. The difference to the point/edge/face should be
summed instead, and syncronised as a displacement. The point/edge/face
location can then be added on again after syncronisation.

This resolves bug report https://bugs.openfoam.org/view.php?id=3602
2020-12-02 11:01:55 +00:00
f874d4f7a8 surfaceFilmModels::filmThermoModel: Corrected backward compatibility support 2020-12-02 09:28:36 +00:00
2ec6ae8a8c etc/templates/singleFluidCHT/templates/constant/solid/fvOptions: updated 2020-12-01 21:23:08 +00:00
19b3a5c385 Sub-models, fvOptions: Removed 'active' switch
It is better to not select and instantiate a model, fvOption etc. than to create
it and set it inactive as the creation process requires reading of settings,
parameters, fields etc. with all the associated specification and storage
without being used.  Also the incomplete implementation added a lot of
complexity in the low-level operation of models introducing a significant
maintenance overhead and development overhead for new models.
2020-12-01 18:50:20 +00:00
3838df8eac surfaceFilmModels: Rationalised and standardised the surfaceFilmProperties dictionary
The convoluted separate ".*Coeffs" dictionary form of model coefficient
specification is now deprecated and replaced with the simpler sub-dictionary
form but support is provided for the deprecated form for backward comparability.

e.g.

thermophysicalProperties
{
    type        liquid;

    useReferenceValues  no;
    liquid      H2O;
}

rather than

    filmThermoModel liquid;

    liquidCoeffs
    {
        useReferenceValues no;
        liquid      H2O;
    }

and

forces
{
    thermocapillary;

    distributionContactAngle
    {
        Ccf             0.085;

        distribution
        {
            type            normal;
            normalDistribution
            {
                minValue        50;
                maxValue        100;
                expectation     75;
                variance        100;
            }
        }

        zeroForcePatches ();
    }
}

rather than

    forces
    (
        thermocapillary
        distributionContactAngle
    );

    distributionContactAngleCoeffs
    {
        Ccf             0.085;

        distribution
        {
            type            normal;
            normalDistribution
            {
                minValue        50;
                maxValue        100;
                expectation     75;
                variance        100;
            }
        }

        zeroForcePatches ();
    }

All the tutorial cases containing a surface film have been updated for guidance,
e.g. tutorials/lagrangian/buoyantReactingParticleFoam/hotBoxes/constant/surfaceFilmProperties

surfaceFilmModel thermoSingleLayer;

regionName      wallFilmRegion;

active          true;

thermophysicalProperties
{
    type        liquid;

    useReferenceValues  no;
    liquid      H2O;
}

viscosity
{
    model        liquid;
}

deltaWet    1e-4;
hydrophilic no;

momentumTransport
{
    model       laminar;
    Cf          0.005;
}

forces
{
    thermocapillary;

    distributionContactAngle
    {
        Ccf             0.085;

        distribution
        {
            type            normal;
            normalDistribution
            {
                minValue        50;
                maxValue        100;
                expectation     75;
                variance        100;
            }
        }

        zeroForcePatches ();
    }
}

injection
{
    curvatureSeparation
    {
        definedPatchRadii
        (
            ("(cube[0-9][0-9]_side[0-9]_to_cube[0-9][0-9]_side[0-9])" 0)
        );
    }

    drippingInjection
    {
        cloudName    reactingCloud1;
        deltaStable  0;

        particlesPerParcel 100.0;

        parcelDistribution
        {
            type         RosinRammler;
            RosinRammlerDistribution
            {
                minValue        5e-04;
                maxValue        0.0012;
                d               7.5e-05;
                n               0.5;
            }
        }
    }
}

phaseChange
{
    model           standardPhaseChange;
    Tb              373;
    deltaMin        1e-8;
    L               1.0;
}

upperSurfaceModels
{
    heatTransfer
    {
        model       mappedConvectiveHeatTransfer;
    }
}

lowerSurfaceModels
{
    heatTransfer
    {
        model       constant;
        c0              50;
    }
}
2020-11-30 16:31:44 +00:00
21bb6c549d Function1, Function2: Rationalising, simplifying and standardising writing 2020-11-28 19:50:39 +00:00
156734571f Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2020-11-27 11:54:03 +00:00
5369ae2fad etc/templates: Added Phi to fvSolution for potentialFoam 2020-11-27 11:53:40 +00:00
f779ddae15 interfaceCompositionModels/Raoult: Included in build 2020-11-26 08:48:36 +00:00
5e16ae0d11 Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2020-11-25 15:12:42 +00:00
0d42b151f0 ZoneMesh: Changed zone selection from keyType to wordRe
It is more logical to use wordRe rather than keyType for name-based selection
including regular expression support as keyType now support other forms of
dictionary keyword including function and variable names which are not
relevant for selecting zones by name.
2020-11-25 15:10:22 +00:00
9a4ed9ce2f sampledSet/boundaryRandom: Simplified and moved points inside mesh
The patch triangulation done as part of this set construction is now
done using polyMeshTetDecomposition. This has simplified the
implementation and permitted the addition of a small tolerance to move
the points within the mesh bounds, resulting in the removal of a number
of warning messages.
2020-11-25 13:17:02 +00:00
1416938f39 streamLine: Added parallel distribution of age data 2020-11-25 11:50:54 +00:00
45bfe725c9 sampledSet/boundaryRandom: Corrected patch indexing 2020-11-25 11:19:40 +00:00
eb29342dbe radiationModels: Added errors when used in unsupported transforming geometries 2020-11-25 11:19:35 +00:00
6dc65790c0 sampledSurface::sampledCuttingPlane: Added isoSurfPtr_.clear() 2020-11-24 17:00:35 +00:00
a008316870 sampledSurface::distanceSurface: Added zone support using zoneKey
combining functionality from sampledCuttingPlane and sampledPlane.
Updated sampledCuttingPlane to use zoneKey.
2020-11-24 16:25:47 +00:00
c716ff78be viewFactorsGen: Added test for transforming patches and issue an error 2020-11-24 15:06:17 +00:00
528a04244f Function1::TableFileReader: Updated write 2020-11-23 15:55:11 +00:00
92c9b112f0 twoPhaseModels::interfaceProperties: Correct alpha2 after alpha1 contact angle BCs are updated
Resolves bug-report https://bugs.openfoam.org/view.php?id=3594
2020-11-23 14:53:34 +00:00
d7d1221cd4 surfaceFilmModels::curvatureSeparation: Added deltaStable control
to provide the same numerical stability control as the other injection models:
BrunDrippingInjection, drippingInjection

        //- Stable film thickness - drips only formed if thickness
        //  exceeds this threshold value
        scalar deltaStable_;

Resolves bug-report https://bugs.openfoam.org/view.php?id=2456
2020-11-23 12:05:29 +00:00
9694b1aa77 Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2020-11-23 11:26:35 +00:00
bdbb2ae0a8 externalWallHeatFluxTemperatureFvPatchScalarField: Corrected and generalised handling of radiative heat transfer
The new simpler implementation handles both heat loss and heat gain by radiative
heat transfer with the boundary.

Resolves bug-report https://bugs.openfoam.org/view.php?id=3581
2020-11-23 11:24:34 +00:00
7a1de27e78 wallHeatTransferCoeffModels::kappaEff Corrected reading Lchar. 2020-11-18 00:03:49 +00:00
9f614634a4 dictionary: Ensure the #inputSyntax keyword is processed even if disableFunctionEntries is true 2020-11-17 19:49:44 +00:00
3a2b846a39 calcEntry: Changed '{}' to '()' as the suggested variable name scoping method 2020-11-17 15:43:59 +00:00
6b75c32d43 calcEntry: added header documentation relating to division operations 2020-11-17 15:18:35 +00:00
93a0dd2f99 foamDictionary: Updated examples to 'slash' syntax which is the new default 2020-11-17 14:14:42 +00:00
8a62a84b68 sixDoFRigidBodyMotion::axialAngularSpring: Function1 based replacement for tabulatedAxialAngularSpring
axialAngularSpring uses a Function1 for the angular spring moment and linear
damping.  Tabulated data is supported using the 'table' Function1.
2020-11-17 10:37:29 +00:00
c0978ac0e1 functionObjects::wallHeatTransferCoeff: Redesign of the wall heat transfer coefficient (HTC) function object.
Following functionality added:
- support of dimensional inputs
- run time selection mechanism of HTC model (kappaEff, ReynoldsAnalogy)
- kappaEff has now two options for calculating HTC (with/without characteristic length)
- Reynolds Analogy estimation for HTC
- integrated HTC replaced with an average log output

Description
    Calculates and writes the estimated heat transfer coefficient at wall
    patches as the volScalarField field.

    All wall patches are included by default; to restrict the calculation to
    certain patches, use the optional 'patches' entry.

    The models are selected run time by model entry. For detailed description
    look at the header file for specific model under
    wallHeatTransferCoeffModels.

    Example of function object specification:
    \verbatim
    kappaEff1
    {
        type        wallHeatTransferCoeff;
        libs        ("libfieldFunctionObjects.so");
        model       kappaEff;
        ...
        region      fluid;
        patches     (".*Wall");
        rho         1.225;
        Cp          1005;
        Prl         0.707;
        Prt         0.9;
    }
    \endverbatim

    \verbatim
    kappaEff2
    {
        type        wallHeatTransferCoeff;
        libs        ("libfieldFunctionObjects.so");
        model       kappaEff;
        ...
        region      fluid;
        patches     (".*Wall");
        rho         1.225;
        Cp          1005;
        Prl         0.707;
        Prt         0.9;
        Lchar       0.001;
    }
    \endverbatim

    \verbatim
    ReynoldsAnalogy1
    {
        type       wallHeatTransferCoeff;
        libs       ("libfieldFunctionObjects.so");
        model      ReynoldsAnalogy;
        ...
        region     fluid;
        patches    (".*Wall");
        rho        1.225;
        Cp         1005;
        Uref       1.0;
    }
    \endverbatim

Note
    Writing field 'wallHeatTransferCoeff' is done by default, but it can be
    overridden by defining an empty \c objects list. For details see
    writeLocalObjects.
2020-11-17 00:46:37 +00:00
4e183e33d4 Function1::Table: simplified and rationalised
TableBase, TableFile and Table now combined into a single simpler Table class
which handle both the reading of embedded and file data using the generalised
TableReader.  The new EmbeddedTableReader handles the embedded data reading
providing the functionality of the original Table class within the same
structure that can read the data from separate files.

The input format defaults to 'embedded' unless the 'file' entry is present and
the Table class is added to the run-time selection table under the name 'table'
and 'tableFile' which provides complete backward comparability.  However it is
advisable to migrate cases to use the new 'table' entry and all tutorial cases
have been updated.
2020-11-16 23:48:47 +00:00
37ebdfe36e Function1::TableReader: Added EmbeddedTableReader so that TableFile can read embedded table data 2020-11-16 21:01:41 +00:00
ba823900eb sixDoFMotion, sixDoFAccelerationSource: Avoid construction order dependency for global constants 2020-11-15 22:33:59 +00:00
ac3473d7b8 Function2Evaluate: Corrected function declarations
Resolves bug-report https://bugs.openfoam.org/view.php?id=3591
2020-11-13 22:53:32 +00:00
bfedfcde55 dynamicMesh::sixDoFMotion: Generalised replacement for tabulated6DoFMotion
using Function1 and supporting all the standard Function1s including tabulated
and coded.

tutorials/multiphase/interFoam/laminar/sloshingTank3D6DoF updated to use
sixDoFMotion.
2020-11-13 21:12:15 +00:00
0a3ad1b41c fvOption::sixDoFAccelerationSource: Documented the structure of the accelerations vector 2020-11-13 18:42:38 +00:00
215b3bb84c fvOptions::sixDoFAccelerationSource: General replacement for tabulatedAccelerationSource
using Function1 and supporting all the standard Function1s including tabulated
and coded.
2020-11-13 18:37:05 +00:00
df4e94d173 fvOptions::effectivenessHeatExchangerSource: Updated to use Function2 2020-11-13 16:38:26 +00:00
b2bf6f3733 fvOptions::function2HeatTransfer: Generalised replacement for tabulatedHeatTransfer using Function2 2020-11-13 16:37:43 +00:00
2c6e4320af radiationModels::absorptionEmissionModels: Moved interpolationLookUpTable into the absorptionEmissionModels namespace
The interpolationLookUpTable is highly specialised for absorptionEmissionModels
which did not need to be templated and is now located in the appropriate
directory and namespace.
2020-11-13 16:27:21 +00:00
28dcfb5adc interpolateXY: Removed, superseded by Function1s::Table 2020-11-13 16:22:42 +00:00
e3d6c695c7 displacementInterpolationMotionSolver: Superseded by better interpolating motion solvers 2020-11-13 16:21:36 +00:00
08c79def7d engineValve: Updated to use Function1s::Table 2020-11-13 16:20:34 +00:00
fbadc20773 nutUTabulatedWallFunctionFvPatchScalarField: Removed redundant code
The current rough wall functions cover most requirements and there is no clear
need to maintain nutUTabulatedWallFunctionFvPatchScalarField and associated
clutter.
2020-11-13 16:17:45 +00:00
922c172352 thermophysicalTransportModels::FickianEddyDiffusivity: Updated diffusivity coefficients to Function2
The specie and Soret diffusivity coefficients are now functions of pressure and
temperature utilising the new run-time selectable Function2.
2020-11-12 18:10:30 +00:00
2cd197a536 Function2: New run-time selectable function of two variables
with many options provided from simple constant values to complex functions,
interpolated tabulated data etc. etc.
2020-11-12 18:07:42 +00:00
885fde7081 thermophysicalTransportModel: Updated handling of run-time re-reading
Add run-time re-reading of thermophysicalTransport dictionary after construction
to avoid problems if the dictionary is not present.
2020-11-12 10:20:19 +00:00