Commit Graph

2491 Commits

Author SHA1 Message Date
d9b9118ee4 template cases: added cylindrical background mesh in rotating geometry cases
snappyHexMesh produces a far better quality AMI interface using a cylindrical background mesh,
leading to much more robust performance, even on a relatively coarse mesh.  The min/max AMI
weights remain close to 1 as the mesh moves, giving better conservation.

The rotating geometry template cases are configured with a blockMeshDict file for a cylindrical
background mesh aligned along the z-axis.  The details of use are found in the README and
blockMeshDict files.
2017-04-04 12:29:04 +01:00
28df1a2d1d template cases: minor edit to README files 2017-04-04 11:48:29 +01:00
9004964df2 template cases: added pre-commented external patches to blockMeshDict
Uncommenting the patches provides a convenient way to use the patches in the background mesh
to define the external boundary of the final mesh.  Replaces previous setup with a separate
blockMeshDict.extPatches file.
2017-04-04 10:47:04 +01:00
4d5505d3ef surfaceFilmModels::perturbedTemperatureDependentContactAngleForce: New contact angle model
Combining a Function1 temperature dependency with a distributionModel stochastic
perturbation.
2017-04-04 00:09:38 +01:00
e045a7ef48 chemistrySolver::EulerImplicit: Corrected thermodynamics update to mass basis
Resolves bug-report https://bugs.openfoam.org/view.php?id=2513
2017-03-31 22:34:47 +01:00
a4eee79496 surfaceFilmModels::contactAngleForces: Provide empty list default value for zeroForcePatches 2017-03-31 22:33:41 +01:00
05d945c9ce surfaceFilmModels::contactAngleForce: Use of boundary values of surface tension and contact angle 2017-03-31 20:46:52 +01:00
51af7c4d78 functionObjects:functionObjects:: Corrected documentation 2017-03-31 20:46:03 +01:00
79a050573b tutorials/multiphase: Removed unnecessary specification of name and dimensions for transport properties 2017-03-31 17:11:30 +01:00
cf0b6126d0 surfaceTensionModels: New class hierarchy for run-time selectable surface tension models
These models have been particularly designed for use in the VoF solvers, both
incompressible and compressible.  Currently constant and temperature dependent
surface tension models are provided but it easy to write models in which the
surface tension is evaluated from any fields held by the mesh database.
2017-03-31 14:32:38 +01:00
54506f8307 faceOnlySet, uniformSet: Reset mesh.moving before returning
Resolves bug-report https://bugs.openfoam.org/view.php?id=2514
2017-03-29 23:15:32 +01:00
f00542be8c regionModels: Renamed owner->region in regionModel and owner->film in surfaceFilmModel
This update does not change the operation or controls of the regionModels, it is
to aid understanding of the code.
2017-03-28 08:30:46 +01:00
3506a1561e Updated header 2017-03-28 08:30:06 +01:00
e53048addc transportModels::interfaceProperties: simplified interface 2017-03-28 08:29:28 +01:00
a026c36309 reactingParcelFilmFoam tutorials: Updated contact-angle specification 2017-03-28 08:27:48 +01:00
91c452d8e5 surfaceFilmModels::contactAngleForces: Corrected headers 2017-03-27 20:07:47 +01:00
cb1faea3f4 surfaceFilmModels::contactAngleForce: Added temperatureDependentContactAngleForce
Created a base-class from contactAngleForce from which the
distributionContactAngleForce (for backward compatibility) and the new
temperatureDependentContactAngleForce are derived:

Description
    Temperature dependent contact angle force

    The contact angle in degrees is specified as a \c Function1 type, to
    enable the use of, e.g.  contant, polynomial, table values.

See also
    Foam::regionModels::surfaceFilmModels::contactAngleForce
    Foam::Function1Types

SourceFiles
    temperatureDependentContactAngleForce.C
2017-03-27 20:03:28 +01:00
81ee0951b4 reactingTwoPhaseEulerFoam: Small change to avoid warning from wmkdep 2017-03-24 17:27:43 +00:00
84e61bb18d Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2017-03-24 14:59:06 +00:00
78e40da8ac lagrangian::ThermoSurfaceFilm: Updated adhesion->splash transition Weber number
according to

        Bai et al, `Modelling of gasoline spray impingement', Atom. Sprays,
        vol 12, pp 1-27, 2002

Resolves bug-report https://bugs.openfoam.org/view.php?id=2478
2017-03-24 14:56:47 +00:00
244109d2f8 sloshingCylinder tutorial: sloshing in cylinder under zero gravity
Demonstrates meshing a cylinder with hemispehrical ends using snappyHexMesh with
a polar background mesh that uses the point and edge projection feature of blockMesh.
The case prescribes a multiMotion on the cylinder, combining an oscillatingLinearMotion
and transverse rotatingMotion.
2017-03-24 14:44:41 +00:00
1cf43717ab tutorials: moved laminar interDyMFoam examples into "laminar" directory 2017-03-24 12:33:37 +00:00
644e212363 postProcessing: changed isosurface to use isoSurfaceCell algorithm 2017-03-24 11:40:36 +00:00
86bf44de10 CrankNicolsonDdtScheme: Reorganized the code to simplify maintenance 2017-03-23 12:11:24 +00:00
f316980e29 CrankNicolsonDdtScheme: Added option "ramp" function to smoothly transition from Euler
Off-centering is specified via the mandatory coefficient \c ocCoeff in the
    range [0,1] following the scheme name e.g.
    \verbatim
    ddtSchemes
    {
        default         CrankNicolson 0.9;
    }
    \endverbatim
    or with an optional "ramp" function to transition from the Euler scheme to
    Crank-Nicolson over a initial period to avoid start-up problems, e.g.
    \verbatim
    ddtSchemes
    {
        default         CrankNicolson
        ocCoeff
        {
            type scale;
            scale linearRamp;
            duration 0.01;
            value 0.9;
        };
    }
    \endverbatim

Note this functionality is experimental and the specification and implementation
may change if issues arise.
2017-03-22 22:27:47 +00:00
c95bf5e31d functionObjects::fieldAverage: Initialize totalTime_ for new fields following restart
Patch contributed by Timo Niemi, VTT.
Resolves bug-report https://bugs.openfoam.org/view.php?id=2510
2017-03-22 18:30:51 +00:00
bda41c441c Diffusion number: Corrected in chtMultiRegionFoam and pyrolysisModels::reactingOneDim
Resolves bug-report https://bugs.openfoam.org/view.php?id=2512
2017-03-22 17:13:53 +00:00
997b66913d Added robust primitive cubic/quadratic/linear equation solutions.
Applied to eigen-value calculations. Fixed repeated-eigen-value issues
in eigen-vector generation.
2017-03-22 15:11:54 +00:00
b3e4c547e8 applyBoundaryLayer: Ensure nut is up-to-date with the current turbulence fields
Resolves bug-report https://bugs.openfoam.org/view.php?id=2511
2017-03-22 10:08:37 +00:00
160ad85b25 applyBoundaryLayer: Provide non-const access to nut, k and epsilon 2017-03-21 15:07:13 +00:00
ba7260c8b4 Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2017-03-20 17:57:57 +00:00
d7e54d5c92 setTimeStepFunctionObject: Corrected typo
Resolves bug-report https://bugs.openfoam.org/view.php?id=2507
2017-03-20 17:57:06 +00:00
2afa80426b Case templates: updated dynamicMeshDict for syntax change to solid body motion 2017-03-20 12:27:07 +00:00
2da9c7f2b5 Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2017-03-18 17:19:35 +00:00
289e05f81e tutorials/combustion/reactingFoam/RAS/DLR_A_LTS: Reduced the endTime 2017-03-18 17:15:58 +00:00
5a3048fbc5 Function1::Scale: New function to scale a given function by a scalar function, e.g. a ramp
For example in the potentialFreeSurfaceFoam/oscillatingBox tutorial it is
cleaner to apply the "linearRamp" function to the "sine" function rather than
using an amplitude table:

    floatingObject
    {
        type            fixedNormalInletOutletVelocity;

        fixTangentialInflow false;

        normalVelocity
        {
            type            uniformFixedValue;

            uniformValue
            {
                type        scale;

                value
                {
                    type sine;

                    frequency   1;
                    amplitude   0.025;
                    scale       (0 1 0);
                    level       (0 0 0);
                }

                scale
                {
                    type linearRamp;

                    duration 10;
                }
            }
        }

        value           uniform (0 0 0);
    }
2017-03-18 17:11:11 +00:00
04876abedb Function1: Added "Ramp" to the names of the ramp functions to avoid conflict
with more general forms of those functions.
2017-03-18 17:10:48 +00:00
9e6cd5c125 Merge branch 'master' of github.com:OpenFOAM/OpenFOAM-dev 2017-03-17 17:37:31 +00:00
f540d6363b PatchInteractionModel: Skip application of patch interaction model for
coupled patches, to prevent rebound/stick/etc... on these patches. Also
added "none" interaction type to LocalInteraction, which reverts the
patch interaction to the fundamental behaviour. This is primarily useful
for non-coupled constraint types.

Resolves https://bugs.openfoam.org/view.php?id=2458
2017-03-17 17:26:39 +00:00
039986928d pitzDaily tutorials: updated blockMeshDict files to use multi-grading
The pitzDaily case uses a lot of mesh grading close to walls and the shear layer.
Prior to v2.4, blockMesh only permitted grading in one direction within a single block,
so the pitzDaily mesh comprised of 13 blocks to accommodate the complex grading pattern.

blockMesh has multi-grading that allows users to divide a block in a given direction and
apply different grading within each division.  The mesh generated with blockMesh using
13 blocks has been replaced with a mesh of 5 blocks that use multi-grading.  The new
blockMeshDict configuration produces a mesh very similar to the original 13-block mesh.
2017-03-17 12:42:20 +00:00
b440a9af91 Merge branch 'master' of https://github.com/OpenFOAM/OpenFOAM-dev 2017-03-17 11:30:27 +00:00
a166237d08 reactingMultiphaseEulerFoam: Ensure that an unordered phase pair gets
generated whenever a BlendedInterfacialModel is created.

Resolves bug-report https://bugs.openfoam.org/view.php?id=2472
2017-03-17 11:29:15 +00:00
ad825903af combustionModels::EDC: New Eddy Dissipation Concept (EDC) turbulent combustion model
including support for TDAC and ISAT for efficient chemistry calculation.

Description
    Eddy Dissipation Concept (EDC) turbulent combustion model.

    This model considers that the reaction occurs in the regions of the flow
    where the dissipation of turbulence kinetic energy takes place (fine
    structures). The mass fraction of the fine structures and the mean residence
    time are provided by an energy cascade model.

    There are many versions and developments of the EDC model, 4 of which are
    currently supported in this implementation: v1981, v1996, v2005 and
    v2016.  The model variant is selected using the optional \c version entry in
    the \c EDCCoeffs dictionary, \eg

    \verbatim
        EDCCoeffs
        {
            version v2016;
        }
    \endverbatim

    The default version is \c v2015 if the \c version entry is not specified.

    Model versions and references:
    \verbatim
        Version v2005:

            Cgamma = 2.1377
            Ctau = 0.4083
            kappa = gammaL^exp1 / (1 - gammaL^exp2),

            where exp1 = 2, and exp2 = 2.

            Magnussen, B. F. (2005, June).
            The Eddy Dissipation Concept -
            A Bridge Between Science and Technology.
            In ECCOMAS thematic conference on computational combustion
            (pp. 21-24).

        Version v1981:

            Changes coefficients exp1 = 3 and exp2 = 3

            Magnussen, B. (1981, January).
            On the structure of turbulence and a generalized
            eddy dissipation concept for chemical reaction in turbulent flow.
            In 19th Aerospace Sciences Meeting (p. 42).

        Version v1996:

            Changes coefficients exp1 = 2 and exp2 = 3

            Gran, I. R., & Magnussen, B. F. (1996).
            A numerical study of a bluff-body stabilized diffusion flame.
            Part 2. Influence of combustion modeling and finite-rate chemistry.
            Combustion Science and Technology, 119(1-6), 191-217.

        Version v2016:

            Use local constants computed from the turbulent Da and Re numbers.

            Parente, A., Malik, M. R., Contino, F., Cuoci, A., & Dally, B. B.
            (2016).
            Extension of the Eddy Dissipation Concept for
            turbulence/chemistry interactions to MILD combustion.
            Fuel, 163, 98-111.
    \endverbatim

Tutorials cases provided: reactingFoam/RAS/DLR_A_LTS, reactingFoam/RAS/SandiaD_LTS.

This codes was developed and contributed by

    Zhiyi Li
    Alessandro Parente
    Francesco Contino
    from BURN Research Group

and updated and tested for release by

    Henry G. Weller
    CFD Direct Ltd.
2017-03-17 09:44:15 +00:00
e41fdb7761 Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2017-03-17 09:04:09 +00:00
5ce031bd25 functionObjects::systemCall: Removed redundant Make directory 2017-03-17 09:02:59 +00:00
1e043911da rigidBodyMeshMotion: Added optional force damping ramp function
to provide smoother behavior on start-up when an acceleration impulse is
applied, e.g. if the body is suddenly released.  e.g.

dynamicFvMesh       dynamicMotionSolverFvMesh;

motionSolverLibs   ("librigidBodyMeshMotion.so");

solver             rigidBodyMotion;

rigidBodyMotionCoeffs
{
    report          on;

    solver
    {
        type    Newmark;
    }

    ramp
    {
        type     quadratic;
        start    0;
        duration 10;
    }
.
.
.

will quadratically ramp the forces from 0 to their full values over the first
10s of the run starting from 0.  If the 'ramp' entry is omitted no force ramping
is applied.
2017-03-16 21:01:45 +00:00
139f1ce92e Function1::ramp: New set of scalar ramp functions
Description
    Ramp function base class for the set of scalar functions starting from 0 and
    increasing monotonically to 1 from \c start over the \c duration and
    remaining at 1 thereafter.

    Usage:
    \verbatim
        <entryName> <rampFunction>;
        <entryName>Coeffs
        {
            start     10;
            duration  20;
        }
    \endverbatim
    or
    \verbatim
        <entryName>
        {
            type      <rampFunction>;
            start     10;
            duration  20;
        }
    \endverbatim

    Where:
    \table
        Property | Description  | Required | Default value
        start    | Start time   | no       | 0
        duration | Duration     | yes      |
    \endtable

The following common ramp functions are provided: linear, quadratic, halfCosine,
quarterCosine and quaterSine, others can easily be added and registered to the run-time
selection system.
2017-03-16 20:56:57 +00:00
b14e2af2d4 postProcessing/noise: Updated for changes to Function1 2017-03-16 20:56:09 +00:00
01c758b79a Function1: Rationalized construction to support the simpler sub-dictionary format
e.g.
    ramp
    {
        type     quadratic;
        start    200;
        duration 1.6;
    }

but the old format is supported for backward compatibility:

    ramp linear;
    rampCoeffs
    {
        start    200;
        duration 1.6;
    }
2017-03-16 20:53:08 +00:00
ae9224b5d7 Updated header 2017-03-16 20:51:14 +00:00