CHANGELOG.md 3.81 KB
Newer Older
Lukas Riedel's avatar
Lukas Riedel committed
1 2
# DORiE Changelog

Lukas Riedel's avatar
Lukas Riedel committed
3

Lukas Riedel's avatar
Lukas Riedel committed
4 5
## Unreleased

Lukas Riedel's avatar
Lukas Riedel committed
6 7
### Added
* Documentation of Docker images and their usage in the CI/CD pipeline.
Lukas Riedel's avatar
Lukas Riedel committed
8 9
* DORiE now depends on [`yaml-cpp`](https://github.com/jbeder/yaml-cpp/), a
    library for reading YAML files. The version required is >=5.2.0.
Santiago Ospina's avatar
Santiago Ospina committed
10 11 12
* Added a abstract base class [`SimulationBase`](dune/dorie/interface/base_simulation.hh) 
    that models the concept of simulation steps so that they 
    can be later coupled with other simulations.
Lukas Riedel's avatar
Lukas Riedel committed
13 14 15 16 17

### Changed
* Rebuilds of the DUNE environment Docker image are now triggered by setting the
    CI variable `REBUILD_BASE_IMAGE` to a non-empty value. Previously, the
    builds in stage `setup` where triggered by any manual pipeline run.
Lukas Riedel's avatar
Lukas Riedel committed
18 19 20 21 22
* `Simulation` is renamed `RichardsSimulation` and moved to 
	[richards_simulation.hh](dune/dorie/interface/richards_simulation.hh).
* `RichardsSimulation` now has its own `RichardsSimulationTraits` derived from
    `BaseTraits`, which defines all its member types. `BaseTraits` now have
    reduced content and are intended to be shared between models/simulations.
Lukas Riedel's avatar
Lukas Riedel committed
23
* The test system folder was renamed from `testing` to [`test`](test).
Lukas Riedel's avatar
Lukas Riedel committed
24

Lukas Riedel's avatar
Lukas Riedel committed
25 26 27 28
### Fixed
* Removed VTK output from `dorie_mass_conservation` executable, which would
    cause the corresponding test to fail if the designated output directory did
    not exist.
Lukas Riedel's avatar
Lukas Riedel committed
29
* Removed CI artifacts of `test` stage from `deploy` jobs.
Lukas Riedel's avatar
Lukas Riedel committed
30 31 32
* Correctly estimate the number of row entries in the matrix backend based on
    the DG discretization and proper static blocking. This can lead to a
    performance improvement for large problems.
Lukas Riedel's avatar
Lukas Riedel committed
33 34 35
* VTK output is now written _before_ the grid is adapted. Previously, the output
    displayed the adapted grid and not the one the solution was computed on.
* Grid adaptation is skipped after computing the final solution.
Lukas Riedel's avatar
Lukas Riedel committed
36 37
* Path to Pipeline artifacts for `test` stage. The artifacts are now correctly
    captured and can be viewed and downloaded from the GitLab web interface.
Lukas Riedel's avatar
Lukas Riedel committed
38 39
* Fix a bug in the boundary condition evaluation where an `end()` iterator
    was dereferenced without error.
Lukas Riedel's avatar
Lukas Riedel committed
40

Lukas Riedel's avatar
Lukas Riedel committed
41

Lukas Riedel's avatar
Lukas Riedel committed
42
## 1.1.0 (2018-07-27)
Lukas Riedel's avatar
Lukas Riedel committed
43

Lukas Riedel's avatar
Lukas Riedel committed
44
### Added
Lukas Riedel's avatar
Lukas Riedel committed
45 46
* DORiE now employs a `SubsamplingVTKWriter` for higher output precision.
    Subsampling levels are controlled via the new key `output.subsamplingLevel`.
Santiago Ospina's avatar
Santiago Ospina committed
47 48 49
* Automatic deployment of `devel` and stable DORiE Docker Images to Docker Hub.
* Automatic update of the DUNE environment Docker Image for `master` builds.
* CI pipeline now also compiles a Debug build with the LLVM Clang compiler.
Lukas Riedel's avatar
Lukas Riedel committed
50
* Add `.gitattributes` for `CHANGELOG.md` to reduce merge conflicts with
Santiago Ospina's avatar
Santiago Ospina committed
51
    `merge=union`.
Lukas Riedel's avatar
Lukas Riedel committed
52
* Public API definition in documentation.
Lukas Riedel's avatar
Lukas Riedel committed
53

Lukas Riedel's avatar
Lukas Riedel committed
54
### Changed
Santiago Ospina's avatar
Santiago Ospina committed
55
* Update code base to *DUNE v2.6*.
Lukas Riedel's avatar
Lukas Riedel committed
56
* Raise software requirements to versions available on Ubuntu 18.04 LTS
Santiago Ospina's avatar
Santiago Ospina committed
57 58
    (Bionic Beaver).
* Switch VTK output from conforming to non-conforming.
Lukas Riedel's avatar
Lukas Riedel committed
59
* Use `multicore` build tag only for `test:parallel` build because the current
Santiago Ospina's avatar
Santiago Ospina committed
60
    GitLab Runner cannot handle the load.
Lukas Riedel's avatar
Lukas Riedel committed
61 62
* Use the `OVLP_AMG_4_DG` linear solver for all computations, including
    sequential ones. This significantly improves performance for large problems.
Lukas Riedel's avatar
Lukas Riedel committed
63
* Change compilation order which reduces RAM usage when compiling in parallel.
Santiago Ospina's avatar
Santiago Ospina committed
64
* Decentralization of the header system so that in most of the header files are 
Santiago Ospina's avatar
Santiago Ospina committed
65
	independent of each other.
Lukas Riedel's avatar
Lukas Riedel committed
66 67 68 69 70

### Deprecated
* `output.subsamplingLevel` is optional and defaults to 0 if not given
    explicitly in the config file. The key will become mandatory in future
    versions.
Lukas Riedel's avatar
Lukas Riedel committed
71

Lukas Riedel's avatar
Lukas Riedel committed
72 73
### Removed
* Complete doxygen documentation from Sphinx docs.
Lukas Riedel's avatar
Lukas Riedel committed
74

Lukas Riedel's avatar
Lukas Riedel committed
75
### Fixed
Lukas Riedel's avatar
Lukas Riedel committed
76 77
* The source code is now compatible to the Clang LLVM compiler.
    DORiE can now be compiled with the onboard compiler on macOS.
Lukas Riedel's avatar
Lukas Riedel committed
78 79
* Fix finite element map used for simplex grids. The old one did not implement
    a discontinuous function space.
Lukas Riedel's avatar
Lukas Riedel committed
80
* Allow warnings on ParMETIS not being available for parallel computations.
Lukas Riedel's avatar
Lukas Riedel committed
81 82


Lukas Riedel's avatar
Lukas Riedel committed
83 84
## 1.0.0 (2018-03-28)

Santiago Ospina's avatar
Santiago Ospina committed
85
First stable version.