Commit Graph

10918 Commits

Author SHA1 Message Date
115a291b8a postProcess: Added call to functionObject::end() at end of time-loop
Resolves bug-report http://bugs.openfoam.org/view.php?id=2148
2016-07-19 11:57:37 +01:00
dad1fd51c5 Scalar.H: Minor reorganization 2016-07-18 16:02:29 +01:00
5f85329c85 SVD: VSinvUt is not always needed and is now calculated and returned by the 'VSinvUt()' function
rather than being calculated on construction and stored as member data.

The convergence warning has be replaced with the 'convergence()' member
function which returns 'true' if the SVD iteration converged, otherwise 'false'.
2016-07-18 13:15:25 +01:00
fa73844438 scalarMatrices: update [i][j] -> (i, j) 2016-07-18 13:12:26 +01:00
b3c9e9d277 ISAT::chemPointISAT: Use scalarMatrices::SVD 2016-07-18 07:49:53 +01:00
8f16204390 basicMultiComponentMixture: Improved the handling of Ydefault 2016-07-17 22:59:25 +01:00
1d57269680 TDACChemistryModel: New chemistry model providing Tabulation of Dynamic Adaptive Chemistry
Provides efficient integration of complex laminar reaction chemistry,
combining the advantages of automatic dynamic specie and reaction
reduction with ISAT (in situ adaptive tabulation).  The advantages grow
as the complexity of the chemistry increases.

References:
    Contino, F., Jeanmart, H., Lucchini, T., & D’Errico, G. (2011).
    Coupling of in situ adaptive tabulation and dynamic adaptive chemistry:
    An effective method for solving combustion in engine simulations.
    Proceedings of the Combustion Institute, 33(2), 3057-3064.

    Contino, F., Lucchini, T., D'Errico, G., Duynslaegher, C.,
    Dias, V., & Jeanmart, H. (2012).
    Simulations of advanced combustion modes using detailed chemistry
    combined with tabulation and mechanism reduction techniques.
    SAE International Journal of Engines,
    5(2012-01-0145), 185-196.

    Contino, F., Foucher, F., Dagaut, P., Lucchini, T., D’Errico, G., &
    Mounaïm-Rousselle, C. (2013).
    Experimental and numerical analysis of nitric oxide effect on the
    ignition of iso-octane in a single cylinder HCCI engine.
    Combustion and Flame, 160(8), 1476-1483.

    Contino, F., Masurier, J. B., Foucher, F., Lucchini, T., D’Errico, G., &
    Dagaut, P. (2014).
    CFD simulations using the TDAC method to model iso-octane combustion
    for a large range of ozone seeding and temperature conditions
    in a single cylinder HCCI engine.
    Fuel, 137, 179-184.

Two tutorial cases are currently provided:
    + tutorials/combustion/chemFoam/ic8h18_TDAC
    + tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC

the first of which clearly demonstrates the advantage of dynamic
adaptive chemistry providing ~10x speedup,

the second demonstrates ISAT on the modest complex GRI mechanisms for
methane combustion, providing a speedup of ~4x.

More tutorials demonstrating TDAC on more complex mechanisms and cases
will be provided soon in addition to documentation for the operation and
settings of TDAC.  Also further updates to the TDAC code to improve
consistency and integration with the rest of OpenFOAM and further
optimize operation can be expected.

Original code providing all algorithms for chemistry reduction and
tabulation contributed by Francesco Contino, Tommaso Lucchini, Gianluca
D’Errico, Hervé Jeanmart, Nicolas Bourgeois and Stéphane Backaert.

Implementation updated, optimized and integrated into OpenFOAM-dev by
Henry G. Weller, CFD Direct Ltd with the help of Francesco Contino.
2016-07-17 15:13:54 +01:00
2d54b1d42b fvPatchField: Minor reformatting 2016-07-17 14:45:24 +01:00
7cbe9153b2 LUscalarMatrix: Added processor-local matrix inverse function 2016-07-17 14:44:50 +01:00
30cf340d8b uint: Changed 'uint' to 'unsigned int'
Patch contributed by Bruno Santos
Resolves bug-report http://bugs.openfoam.org/view.php?id=2152
2016-07-15 11:44:56 +01:00
ab84d6941f Updated template formatting to C++11 2016-07-12 20:03:29 +01:00
c535f6a3c4 ODESolvers::seulex: Corrected 'expo' and added 'table_' resize 2016-07-12 20:02:16 +01:00
1c38fbcef0 Updated headers 2016-07-12 09:07:04 +01:00
b00e67ca37 foamChemistryReader: Added support for elements and specie composition
Based on a patch contributed by Francesco Contino, Tommaso Lucchini,
Gianluca D’Errico, Hervé Jeanmart, Nicolas Bourgeois and Stéphane
Backaert.
2016-07-12 09:05:00 +01:00
a5d7374737 ODESolvers: Add support for efficient ODE solver resizing
Note: this reuses the existing storage rather than costly reallocation
which requires the initial allocation to be sufficient for the largest
size the ODE system might have.  Attempt to set a size larger than the
initial size is a fatal error.
2016-07-11 17:27:04 +01:00
6a8bac9235 functionObjects: Update documentation 2016-07-09 22:08:11 +01:00
08bd802b42 checkGeometry, moveDynamicMesh: Convert processor IDs to 'List<label>'
Resolves bug-report http://bugs.openfoam.org/view.php?id=2140
2016-07-09 20:47:06 +01:00
9f682a0c5a functionObjects::systemCall: Updated documentation 2016-07-09 14:23:27 +01:00
6e95af9d58 functionObjects: Removed superfluous controlDict files 2016-07-09 14:23:01 +01:00
b87703bd46 fvcCellReduce: Add support for optional initial value
Patch contributed by Mattijs Janssens
Resolves bug-report http://bugs.openfoam.org/view.php?id=2143
2016-07-08 11:54:30 +01:00
7e53be1560 Reacting solvers: Added check for the existence of the inert specie 2016-07-06 17:45:34 +01:00
de75e2f918 fvOptions::limitVelocity: New fvOption to limit the maximum velocity magnitude
e.g. to avoid excessive unphysical velocities generated during slamming events in
incompressible VoF simulations

Usage
    Example usage:
    limitU
    {
        type            limitVelocity;
        active          yes;

        limitVelocityCoeffs
        {
            selectionMode   all;
            max             100;
        }
    }
2016-07-06 10:17:21 +01:00
b23b137ff8 fvOptions::tabulatedAccelerationSource: Minor update to doc 2016-07-06 10:16:57 +01:00
29e5fd7bda Updated header 2016-07-06 10:16:37 +01:00
48e160dce8 fvOptions::limitTemperature: Simplify controls and make documentation consistent with the code 2016-07-06 10:15:47 +01:00
9e1486fee5 checkMesh, moveDynamicMesh: option -checkAMI writes the reconstructed AMI weights
Patch contributed by Mattijs Janssens
2016-07-05 15:35:16 +01:00
417ac33aca functionObjects: Updated documentation
Patch contributed by Bruno Santos
Resolves bug-report http://bugs.openfoam.org/view.php?id=2138
2016-07-03 23:16:29 +01:00
af6e8f150c timeVaryingMappedFixedValue: update for SP 2016-07-01 17:42:35 +01:00
f768402255 Simplified the handling of the CGAL installation 2016-07-01 14:53:28 +01:00
ed014a099c src/OpenFOAM/primitives/ints: Further tweaks
Resolved additional bug-report http://bugs.openfoam.org/view.php?id=2137
2016-07-01 14:52:54 +01:00
139faa3cf0 vtkUnstructuredReader: corrected prism point ordering
Patch contributed by Mattijs Janssens
Resolves bug-report http://bugs.openfoam.org/view.php?id=1885
2016-07-01 14:45:18 +01:00
a623ab42a3 timeVaryingMappedFixedValue: Reinstated support for AverageField 2016-07-01 10:26:20 +01:00
08e941dccb Updated header 2016-07-01 10:25:38 +01:00
fa11efeba6 src/OpenFOAM/primitives/ints: Corrected MIN and MAX for uints
Resolves bug-report http://bugs.openfoam.org/view.php?id=2137
2016-07-01 10:24:42 +01:00
7bc05996ba SloanRenumber: link with libboost_system.so rather than libboost_thread.so
Resolves bug-report http://bugs.openfoam.org/view.php?id=2135
2016-06-30 12:01:32 +01:00
9fdb5506f4 timeVaryingMappedFixedValueFvPatchField: Simplifed for consistency with the output of sampledPlane
Now a case can be sampled and written in 'foam' format and used for the
timeVaryingMappedFixedValue BC of another case.
2016-06-30 10:35:01 +01:00
507b8988ec functionObjects::surfaceRegion: Write the surface geometry for formats in which the data is in separate files 2016-06-30 10:33:55 +01:00
c224d19c83 sampledCuttingPlane: Rationalized 2016-06-30 10:33:28 +01:00
939376a844 src/sampling/Make/files: Updated 2016-06-30 10:33:07 +01:00
c6200ea25e sampledPlane, plane: standardize the selection of the plane type 2016-06-30 10:32:31 +01:00
fdb4f37148 foamFileSurfaceWriter -> foamSurfaceWriter for consistency with the naming of the other writers 2016-06-30 10:31:09 +01:00
287b6537f2 fvcD2dt2: Updated non-const dereferencing to use '.ref()'
Resolves bug-report http://bugs.openfoam.org/view.php?id=2133
2016-06-29 21:55:57 +01:00
a158c30710 plane, sampledPlane: Rationalize the naming convention for the defining normal and point
normalVector -> normal
basePoint -> point

The old names are supported for backward-compatibility.
2016-06-29 16:58:35 +01:00
3e3a183732 Completed transformation of post-processing utilities into functionObjects 2016-06-28 19:26:23 +01:00
1bef3ab2e6 functionObjects::fieldExpression: Standardized warning message 2016-06-28 13:52:10 +01:00
1ab64a0dd9 rigidBodyMeshMotion: Check for attempted assignment of patches to a merged body 2016-06-27 16:31:51 +01:00
850013e732 functionObjects::XiReactionRate: Writes the turbulent flame-speed and reaction-rate volScalarFields for the Xi-based combustion models
Replaces the obsolete and 'wdot' utility.
2016-06-27 08:58:36 +01:00
28f049e9b9 writeCellCentres utility: Replaced by writeCellCentres functionObject
postProcess -func writeCellCentres
2016-06-27 07:51:19 +01:00
dea6a3c6e8 wmake/Allwmake: Completed support for targetType 'objects'
Patch contributed by Mattijs Janssens
2016-06-24 15:25:11 +01:00
0aa05185db mapFieldsPar: updated to enable mapping from source patches (instead of recreating)
- patchFields now get mapped (instead of created)
  - with -consistent it now maps all patches except for processor ones (they are
    the only ones that are processor-local)
  - all constraint patches get evaluated after mapping to bring them up to date.

Patch contributed by Mattijs Janssens
2016-06-21 14:16:18 +01:00