Skip to content
Snippets Groups Projects
CHANGELOG.md 65.2 KiB
Newer Older
Differences Between DuMuX 2.11 and DuMuX 2.12
=============================================

* IMPORTANT NOTES:
    - DuMuX 2.12 is expected to run based on Dune 2.4.1, 2.5, 2.6 and the Dune
      master. We will try to keep the compatibility with the Dune master
      as long as it is technically feasible and our resources allow it. If
      you want to use Dumux multidomain models, you have to stick with the
      Dune 2.4 core and specific versions of other modules, see
      [test/multidomain/README](test/multidomain/README) for details.
      Also the geomechanics models require Dune 2.4 and PDELab 2.0.

    - DuMux 2.12 requires at least GCC 4.9 or Clang 3.5 in their C++-14 mode.

    - For employing corner-point grids by means of opm-grid (former
      dune-cornerpoint), the OPM releases 2017.04 or 2017.10 have to be used.
    - Four new tutorial exercises have been added in the folder
      [tutorial](tutorial). They can be built by executing
      `make build_tutorials` in the build folder. Each exercise
      comes with detailed instructions:
        1. [Exercise 1](tutorial/ex1/README.md)
        2. [Exercise 2](tutorial/ex2/README.md)
        3. [Exercise 3](tutorial/ex3/README.md)
        4. [Exercise 4](tutorial/ex4/README.md)
    - Fixed bug in heatCapacity() of component air and replace
      the use of a constant value in  gasEnthalpy() by calling
      heatCapacity().

    - The GnuplotInterface now supports in-simulation generation of image
      files (*.png).
    - A paraview python script for exporting 2d pictures from *.vtu files
      has been added.
    - A class for estimating turbulence properties has been added with
      turbulenceproperties.hh.
* IMMEDIATE INTERFACE CHANGES not allowing/requiring a deprecation period:
    - gnuplotinterface.hh: The add...ToPlot() functions have changed signature,
      the curve name/title is not mandatory anymore and can be specified together
      with the curve options.

* DELETED classes/files, property names, constants/enums,
  member functions, which have been deprecated in DuMuX 2.11:
    - Everything listed as deprecated below has been removed.


Christoph Grüninger's avatar
Christoph Grüninger committed
Differences Between DuMuX 2.10 and DuMuX 2.11
=============================================

* IMPORTANT NOTES:
    - DuMuX 2.11 is expected to run based on Dune 2.4.1, 2.5 and the Dune
      master. We will try to keep the compatibility with the Dune master
      as long as it is technically feasible and our resources allow it. If
      you want to use Dumux multidomain models, you have to stick with the
      Dune 2.4 core and specific versions of other modules, see
      `test/multidomain/README` for details.

    - DuMux 2.11 requires at least GCC 4.9 or Clang 3.5 in their C++-14 mode.

    - For employing corner-point grids by means of opm-grid (former
      dune-cornerpoint), the OPM release 2016.04 has to be used.

* IMPROVEMENTS and ENHANCEMENTS:

* IMMEDIATE INTERFACE CHANGES not allowing/requiring a deprecation period:
    - A gridcreator for piece-of-cake-type grids has been added. It is capable
      of creating meshes with gradually in- and decreasing distances between nodes.
      It also allows the creation of a 360° cake where the last elements are
      connected to the first elements.
    - shouldWriteRestartFile() is now, as shouldWriteOutput() already was,
      called before the time level is advanced. So it might be necessary to use
      ...WillBeFinished instead of ...IsFinished for writing restart files at
      the correct time.
    - In the ZeroEq models, the properties BBoxMinIsWall and BBoxMaxIsWall have
      been replaced by the functions bBoxMaxIsWall() and bBoxMaxIsWall() in the
      problem file.
    - In the TwoPNC (and, consequently the TwoPNCMin) models, the old formulations
      pgSl, plSg as well as pnSw and pwSg have been replaced by the pnsw and pwsn,
      to satify the naming convention and be consistent with TwoPTwoC.
    - In the TwoPTwoC model, the indices are no longer dependent on the
      formulation. Further, the values of "nPhaseOnly" and "bothPhases"
      have been harmonized with those in TwoPNC
Christoph Grüninger's avatar
Christoph Grüninger committed

* Deprecated PROPERTY and PARAMETER NAMES, to be removed after 2.11: BEWARE: The
  compiler will not print any warning if a deprecated property or parameter name
  is used. If possible, a run-time warning will appear in the summary lines
  after the corresponding run.

* Deprecated CLASSES/FILES, to be removed after 2.11:

* Deprecated MEMBER FUNCTIONS, to be removed after 2.11:

* DELETED classes/files, property names, constants/enums,
  member functions, which have been deprecated in DuMuX 2.10:
    - Everything listed as deprecated below has been removed.


Differences Between DuMuX 2.9 and DuMuX 2.10
===================================================

* IMPORTANT NOTES:
    - DuMuX 2.10 is expected to run based on Dune 2.4.1, 2.5 and the Dune
      master. We will try to keep the compatibility with the Dune master
      as long as it is technically feasible and our resources allow it. If
      you want to use Dumux multidomain models, you have to stick with the
      Dune 2.4 core and specific versions of other modules, see
      `test/multidomain/README` for details.
    - DuMux 2.10 requires at least GCC 4.9 or Clang 3.5 in their C++-14 mode.
    - For employing corner-point grids by means of opm-grid (former
      dune-cornerpoint), the OPM release 2016.04 has to be used.

* IMPROVEMENTS and ENHANCEMENTS:
    - Two new fully-implicit models have been added: `ThreePWaterOil` and
      `TwoPOneC`. The first one admits two components water and oil that may be
      present in two liquid and one gaseous phase, see `test_box3pwateroil` in
      `test/porousmediumflow/3pwateroil/implicit` for details. The second one is
      dedicated to one generic component that may be present in liquid and
      gaseous state, see `test_boxsteaminjection` in
      `test/porousmediumflow/2p1c/implicit` for an example.

    - Numbering of the VTK files starts with `0` now.

    - Using the geostatistical tool gstat for generating random fields has been
      facilitated. See `test_cc1pwithgstat` in `test/porousmediumflow/1p/implicit`.
      This tool can be installed using the `bin/installexternal.sh` script.
      If cmake does not find gstat, one has to specify the GSTAT_ROOT variable, 
      see the standard optim.opts or debug.opts. 
    - The multidomain models should now run with all compilers without
      segfaults, both with optimization and debug options.

    - Computation for two-dimensional fracture networks in three-dimensional
      space has been fixed and is tested now in
      `test/porousmediumflow/2p/implicit/test_fracture_box2p`.

    - The `bin` folder containing various helper scripts has been restructured.
      For example, the scripts `fuzzycompare.py` and `runtest.py` are now
      contained in the subfolder `testing`.

    - Two new scripts `extractlinedata.py` and `extractpointdataovertime.py`
      have been added to `bin/postprocessing`. They realize what their names
      suggest.

    - The computation of the tortuosity tau with the Millington-Quirk model has
      been optimized. Tests show a speedup of up to 5% for a 2p2c simulation.

    - The fully-implicit box scheme now fully supports prism-shaped elements.

    - Convenience functions for reading values from a file to a container and
      for writing values to a file from a container have been added, see
      `test_container_io` in `test/io/container`.

* IMMEDIATE INTERFACE CHANGES not allowing/requiring a deprecation period:
    - The problem class interface needs to provide the method maxTimeStepSize().
      This is important if you implement problem classes not deriving from the base
      problem classes in Dumux (`ImplicitProblem`, `OneModelProblem`,
      `ImpetProblem`, and `MultidomainProblem`).
    - All name-related methods that previously returned / received `const char*`
      do now use the type-safe alternative `std::string`. An example is
      `FluidSystem::componentName()`. If you need a
      `const char*` for special operation use the string member `c_str()`.

* Deprecated PROPERTY and PARAMETER NAMES, to be removed after 2.10: BEWARE: The
  compiler will not print any warning if a deprecated property or parameter name
  is used. If possible, a run-time warning will appear in the summary lines
  after the corresponding run.
    - The pure run-time parameter `tau` has been renamed to the property and
      run-time parameter `TauTortuosity`. For the models 1p2c, 2p2c, 3p3c it got
      the default value 0.5.

* Deprecated CLASSES/FILES, to be removed after 2.10:
    - The class `DiffusivityConstantTau<TypeTag, Scalar>` was renamed to
      `DiffusivityConstant<TypeTag>` and is located in a according new header. The
      old class, its header and the property `tau` are deprecated.
    - `PointSourceHelper<TypeTag>` has been deprecated. Use
      `BoundingBoxTreePointSourceHelper<TypeTag>` instead.

    - The classes `Dumux::Liquid/GasPhase<Scalar, Component>` have been moved to
      the namespace `Dumux::FluidSystems`.

* Deprecated MEMBER FUNCTIONS, to be removed after 2.10:
    - `checkEffectiveSaturation` of the classes `PlotMaterialLaw<TypeTag>` in
      `dumux/io`.
    - `concentrationGrad` of the class `TwoPNCFluxVariables<TypeTag>`. Use
      `moleFractionGrad` instead, with the obviously different physical meaning.

* DELETED classes/files, property names, constants/enums,
  member functions, which have been deprecated in DuMuX 2.9:
    - Everything listed as deprecated below has been removed.


Differences Between DuMuX 2.8 and DuMuX 2.9
Loading
Loading full blame...