Commit graph

142 commits

Author SHA1 Message Date
Henry Weller
e496de6fb2 reactingTwoPhaseEulerFoam: Added thermal wall-functions with support for wall-boiling
Code and tutorial case provided by Juho Peltola
2015-11-27 18:51:23 +00:00
Henry Weller
aa6a7195b8 moveDynamicMesh: Iterate over mesh.update() according to the PIMPLE settings
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1926
2015-11-25 16:54:14 +00:00
Henry Weller
56913f6307 fvOptions: New buoyancyForce and buoyancyEnergy
Provides run-time selection of buoyancy sources for compressible solvers

Replaces the built-in buoyancy sources in XiFoam, reactingFoam and
rhoReactingFoam.

e.g. in constant/fvOptions specify

momentumSource
{
    type            buoyancyForce;

    buoyancyForceCoeffs
    {
        fieldNames      (U);
    }
}

and optionally specify the buoyancy energy source in the enthalpy
equation:

energySource
{
    type            buoyancyEnergy;

    buoyancyEnergyCoeffs
    {
        fieldNames      (h);
    }
}

or internal energy equation

energySource
{
    type            buoyancyEnergy;

    buoyancyEnergyCoeffs
    {
        fieldNames      (e);
    }
}
2015-11-23 09:29:10 +00:00
Henry Weller
36cd8d0c0e chemFoam: Remove unused turbulence model 2015-11-21 18:30:35 +00:00
Henry Weller
cc942ed18e chemkinReader: Add support for reading transport properties from dictionary
Note the dictionary is in OpenFOAM format not CHEMKIN.

Patch provided by Daniel Jasinski
Resolves feature request http://www.openfoam.org/mantisbt/view.php?id=1888
2015-11-20 18:55:36 +00:00
Henry Weller
22fd0edd59 porosityModels: Specification of name and dimensions of porosity coefficients is now optional
e.g.

    DarcyForchheimerCoeffs
    {
        d   (5e7 -1000 -1000);
        f   (0 0 0);

        coordinateSystem
        {
            type    cartesian;
            origin  (0 0 0);
            coordinateRotation
            {
                type    axesRotation;
                e1      (1 0 0);
                e2      (0 0 1);
            }
        }
    }
2015-11-17 12:05:57 +00:00
Henry Weller
1af8893340 tutorials/combustion/fireFoam/les/smallPoolFire.*: Minor correction 2015-11-15 18:10:28 +00:00
Henry Weller
e8b453cc1d tutorials/combustion/fireFoam/les/oppositeBurningPanels: Improved schemes and BCs 2015-11-14 19:31:06 +00:00
Henry Weller
e8eb1707b5 FreeBSD sed: ensure that a "-e" option immediately follows "-i" 2015-11-14 17:03:03 +00:00
Henry Weller
d0e45416e0 tutorials: Removed unnecessary "boundary" files 2015-11-13 20:05:37 +00:00
Chris Greenshields
4a97061e59 Redundant boundary.org files removed from tutorial cases 2015-11-13 16:59:58 +00:00
Chris Greenshields
c72992dc35 blockMeshDict files: removed redundant location entries in FoamFile headers 2015-11-13 16:09:57 +00:00
Henry Weller
7e2c9cfb85 tutorials/mesh/foamyHexMesh: Update location of blockMeshDict 2015-11-13 15:48:39 +00:00
Henry Weller
aa4297918d tutorials/combustion/fireFoam/les/smallPoolFire?D: Improved outlet BC
Now applies totalPressure and pressureInletOutletVelocity with hRef set
to the height of the outlet plane.
2015-11-13 14:17:07 +00:00
Henry Weller
6ba93fc708 tutorials/combustion/fireFoam/les/smallPoolFire?D: Improved outlet BC
Now applies totalPressure and pressureInletOutletVelocity with hRef set
to the height of the outlet plane.
2015-11-13 14:15:19 +00:00
Henry Weller
4e04397acb tutorials/incompressible/simpleFoam/pitzDaily: Change default model to kEpsilon
and reduce relaxation factors to improve stability over a range of
models and systems.
2015-11-01 12:24:25 +00:00
Henry Weller
74725bc212 Corrected headers 2015-10-27 16:26:40 +00:00
Henry Weller
95c4f934db sixDoFSolver: Run-time selectable solver (integrator) for sixDoFRigidBodyMotion
The built-in explicit symplectic integrator has been replaced by a
general framework supporting run-time selectable integrators.  Currently
the explicit symplectic, implicit Crank-Nicolson and implicit Newmark
methods are provided, all of which are 2nd-order in time:

Symplectic 2nd-order explicit time-integrator for 6DoF solid-body motion:

    Reference:
        Dullweber, A., Leimkuhler, B., & McLachlan, R. (1997).
        Symplectic splitting methods for rigid body molecular dynamics.
        The Journal of chemical physics, 107(15), 5840-5851.

    Can only be used for explicit integration of the motion of the body,
    i.e. may only be called once per time-step, no outer-correctors may be
    applied.  For implicit integration with outer-correctors choose either
    CrankNicolson or Newmark schemes.

    Example specification in dynamicMeshDict:
    solver
    {
        type    symplectic;
    }

Newmark 2nd-order time-integrator for 6DoF solid-body motion:

    Reference:
        Newmark, N. M. (1959).
        A method of computation for structural dynamics.
        Journal of the Engineering Mechanics Division, 85(3), 67-94.

    Example specification in dynamicMeshDict:
    solver
    {
        type    Newmark;
        gamma   0.5;    // Velocity integration coefficient
        beta    0.25;   // Position integration coefficient
    }

Crank-Nicolson 2nd-order time-integrator for 6DoF solid-body motion:

    The off-centering coefficients for acceleration (velocity integration) and
    velocity (position/orientation integration) may be specified but default
    values of 0.5 for each are used if they are not specified.  With the default
    off-centering this scheme is equivalent to the Newmark scheme with default
    coefficients.

    Example specification in dynamicMeshDict:
    solver
    {
        type    CrankNicolson;
        aoc     0.5;    // Acceleration off-centering coefficient
        voc     0.5;    // Velocity off-centering coefficient
    }

Both the Newmark and Crank-Nicolson are proving more robust and reliable
than the symplectic method for solving complex coupled problems and the
tutorial cases have been updated to utilize this.

In this new framework it would be straight forward to add other methods
should the need arise.

Henry G. Weller
CFD Direct
2015-10-19 14:03:46 +01:00
Henry Weller
033e73e3f9 prghTotalPressureFvPatchScalarField: Total pressure BC for p_rgh
Resolves some stability issues with the outlet of multiphase problems.
2015-10-14 13:15:17 +01:00
Henry Weller
d80e541308 tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection: Add missing relaxation entry 2015-10-13 22:31:03 +01:00
Henry Weller
4096719046 wingMotion tutorials: added missing ';' 2015-10-01 14:07:29 +01:00
Henry Weller
50c2951d5f reactingMultiphaseEulerFoam: Optimize the handling of optional forces 2015-09-18 18:55:21 +01:00
Henry Weller
18b7ea9104 reactingMultiphaseEulerFoam: Removed incomplete tutorial cases 2015-09-11 17:53:21 +01:00
Henry Weller
cc5f67a0ff reactingMultiphaseEulerFoam: New Euler-Euler multiphase solver
Supporting any number of phases with heat and mass transfer, phase-change and reactions
2015-09-11 15:33:12 +01:00
Henry Weller
da86701639 tutorials/multiphase/twoPhaseEulerFoam/laminar/fluidisedBed: Add missing file 2015-08-29 00:02:44 +01:00
Henry Weller
34ce2e6d61 twoPhaseEulerFoam: Added support for alphat and thermal wall-functions 2015-08-26 18:06:43 +01:00
Henry Weller
85c62fc1b7 reactingTwoPhaseEulerFoam: Added support for thermal diffusivity and thermal wall-functions 2015-08-22 18:09:44 +01:00
Henry Weller
aa82ae400b tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/steamInjection: New tutorial to demonstrate steam condensation 2015-08-20 15:29:44 +01:00
Henry Weller
40310a5ac8 tutorials/incompressible/SRFSimpleFoam/mixer: Improved case setup and schemes 2015-07-24 17:01:27 +01:00
Henry Weller
2b1ee6b497 tutorials: Removed unnecessary spaces between parentheses and values in vectors 2015-07-21 20:55:44 +01:00
Henry Weller
40ae36b5f6 dimensioned<Type>: Added constructor from name, dimensions and dictionary
to simplify construction of dimensionedScalar properties and avoid the
duplication of the name string in the constructor call.
2015-07-21 12:57:07 +01:00
Henry Weller
ecee2d275e Input of dimensionedScalars: update read-construction of dimensionedScalar in applications
so that the specification of the name and dimensions are optional in property dictionaries.

Update tutorials so that the name of the dimensionedScalar property is
no longer duplicated but optional dimensions are still provided and are
checked on read.
2015-07-20 22:52:53 +01:00
Henry Weller
bb12051b95 Updated headers 2015-07-15 21:58:29 +01:00
Henry Weller
dc0523643f fluxRequired: Added setFluxRequired function to fvSchemes class
Added calls to setFluxRequired for p, p_rgh etc. in all solvers which
avoids the need to add fluxRequired entries in fvSchemes dictionaries.
2015-07-15 21:57:16 +01:00
Henry Weller
65d9aacd22 fluxRequired: Added setFluxRequired function to fvSchemes class
Added calls to setFluxRequired for p in all incompressible solvers which
avoids the need to add fluxRequired entries in fvSchemes dictionary.

Will add calls to setFluxRequired to the rest of the solvers.
2015-07-15 15:04:51 +01:00
Henry Weller
3a6f0ac896 tutorials/compressible/rhoSimpleFoam/squareBend: update application 2015-07-05 18:23:05 +01:00
Henry Weller
3c209a32e9 rotorDiskSource: Debugged the duplicated interpolation functions
Needs rewriting to avoid unnecessary code duplication, preferably using
standard OpenFOAM interpolation functionality.
2015-07-03 12:41:25 +01:00
Henry Weller
83961e1de1 tutorials/incompressible/simpleFoam/rotorDisk: Tutorial for the rotorDiskSource functionObject
Provided by Richard Jones
2015-07-01 12:37:21 +01:00
Henry Weller
6897692212 Renamed pressureGradientExplicitSource to meanVelocityForce
as it is the applied the force necessary to maintain the specified mean velocity
2015-06-30 19:13:16 +01:00
Henry Weller
6f53722dab tutorials/multiphase/.*woPhaseEulerFoam/: Change outlet p_rgh BC to prghPressure 2015-06-29 19:36:57 +01:00
Henry Weller
1f158f8f52 tutorials/multiphase/reactingTwoPhaseEulerFoam/RAS/bubbleColumnEvaporatingReacting: Correct initial pressure to 10bar 2015-06-29 16:09:33 +01:00
Henry Weller
8729455377 LTS: Formalize the naming of the rDeltaT and rSubDeltaT fields
Now the specification of the LTS time scheme is simply:

ddtSchemes
{
    default         localEuler;
}
2015-06-28 21:41:40 +01:00
Henry Weller
6043a0f3a8 reactingParcelFoam, coalChemistryFoam: Added LTS support
Replaces LTSReactingParcelFoam and LTSCoalChemistryFoam

    Select LTS via the ddtScheme:

        ddtSchemes
        {
            default         localEuler rDeltaT;
        }
2015-06-28 11:01:04 +01:00
Henry Weller
a11cf24741 reactingFoam: Added run-time selectable LTS support replacing LTSReactingFoam
Select LTS via the ddtScheme:

    ddtSchemes
    {
        default         localEuler rDeltaT;
    }
2015-06-27 22:35:49 +01:00
Henry Weller
0acc57e105 rhoPimpleFoam: Added run-time selectable LTS support replacing rhoLTSPimpleFoam
Select LTS via the ddtScheme:

        ddtSchemes
        {
            default         localEuler rDeltaT;
        }
2015-06-27 22:08:43 +01:00
Henry Weller
619f1c55d8 rhoSimpleFoam: Added "consistent" option to replace rhoSimplecFoam
See tutorials/compressible/rhoSimpleFoam/squareBend

SIMPLE
{
    nNonOrthogonalCorrectors 0;
    rhoMin          0.1;
    rhoMax          1.0;
    transonic       yes;
    consistent      yes;

    residualControl
    {
        p               1e-3;
        U               1e-4;
        e               1e-3;

        // possibly check turbulence fields
        "(k|epsilon|omega)" 1e-3;
    }
}

relaxationFactors
{
    fields
    {
        p               1;
        rho             1;
    }
    equations
    {
        p               1;
        U               0.9;
        e               0.9;
        k               0.9;
        epsilon         0.9;
    }
}
2015-06-27 17:42:59 +01:00
Henry Weller
ea454a2fc4 rhoPimpleFoam: Added "consistent" option to replace rhoPimplecFoam
e.g. in tutorials/compressible/rhoPimpleFoam/ras/angledDuctLTS

PIMPLE
{
    momentumPredictor   yes;
    transonic           no;
    nOuterCorrectors    50;
    nCorrectors         1;
    nNonOrthogonalCorrectors 0;
    consistent          yes;

    rhoMin          0.5;
    rhoMax          2.0;

    residualControl
    {
        "(U|k|epsilon)"
        {
            relTol          0;
            tolerance       0.0001;
        }
    }

    turbOnFinalIterOnly off;
}

relaxationFactors
{
    fields
    {
        "p.*"           0.9;
        "rho.*"         1;
    }
    equations
    {
        "U.*"           0.9;
        "h.*"           0.7;
        "(k|epsilon|omega).*" 0.8;
    }
}
2015-06-27 16:26:51 +01:00
Henry Weller
7d1b9000db tutorials/compressible/rhoCentralFoam/biconic25-55Run35: Change to LTS 2015-06-27 15:33:48 +01:00
Henry Weller
cf9ed8cdbb LTSReactingParcelFoam: Minor improvement 2015-06-27 12:30:10 +01:00
Henry Weller
2ac4a4e84c interFoam family: Added run-time selectable LTS support
LTS is selected by the ddt scheme e.g. in the
tutorials/multiphase/interFoam/ras/DTCHull case:

ddtSchemes
{
    default         localEuler rDeltaT;
}

LTSInterFoam is no longer needed now that interFoam includes LTS
support.
2015-06-26 18:32:20 +01:00