Dune 1.2.2
Download the Dune 1.2.2 module sources
- dune-common [ tarball: dune-common-1.2.2.tar.gz ]
- dune-grid [ tarball: dune-grid-1.2.2.tar.gz ]
- dune-istl [ tarball: dune-istl-1.2.2.tar.gz ]
DUNE 1.2.2 - Release Notes
Warning: Many things have been marked deprecated. However note that class deprecation is buggy in all versions of gcc prior to 4.3.
dune-common
- Set dimension to 3 in
GeometryType::makePyramid
andGeometryType::makePrism
. - Add method
mtv
toFieldMatrix
. - Fix
FieldMatrix<T,1,1>::determinant
. - Make duneproject query dependencies on second try.
- Add support for
headercheck_IGNORE
.
dune-grid
- Add a configure-switch to enable iterators on index sets (by default, they are now disabled).
- Fix typedef for
Entity
in iterators of higher codmension. - Correctly store codimension information in
GenericReferenceElement
. - Relax comparisons in
DGFParser
when removing duplicate vertices introduced by interval blocks. This allows to read finer meshes. - Fixed several problems in
SubSamplingVTKWriter
including triangulation of hypercubes and connectivity information in appended data sections. - Make default implementation of
IndexSet::contains
compile when iterators are absent from index set and implement the method for all grid implementations in dune-grid. - Fixed higher codimension and
Ghost_Partition
iterators forAlbertaGrid
. - Corrected return type of
AlbertaGrid::globalRefine
tovoid
. - Remove some warnings from
OneDGrid
.
dune-istl
- Fix
MPITraits
forbigunsignedint
.
DUNE 1.2.1 - Release Notes
Warning: Many things have been marked deprecated. However note that class deprecation is buggy in all versions of gcc prior to 4.3.
dune-common
- Corrected version dependencies such that pkg-config can parse them.
- Fixed compatibility issue of PoolAllocator and gcc-4.3 (FS #543).
- Added copy constructor for
FieldVector
(to avoid warnings on an unused variable for size 0).
dune-grid
- Fixed method
conforming
onALUGrid
intersection iterator. - Corrected adaptation interfaces for
ALUGrid
,OneDGrid
andUGGrid
. A test for these features was also added. - The method
name
ofALUConformGrid
now returns"ALUConformGrid"
. - Fixed a compatibility issue between
AlbertaGrid
and MPICH. - Ported several fixes and enhancements to the generic geometries for a smoother transition.
- Fixed callback adaptation for periodic
AlbertaGrid
and improved the documentation. - Fixed a failing assertion in
ALU3dGrid
when callingilevelbegin
.
dune-istl
- AMG: Set overlap to zero for coarse levels to avoid degradation of convergence when running parallel.
- Some solvers incorrectly stated that they converged.
- Added random access iterators to ISTL base arrays.
- AMG: Fixed an incorrect type in
IndicesCoarsener
. - Make sure that some FieldMatrices are initialized.
- Fixed communication for containers with a variable size of data items per index
- AMG: Interpret positive off-diagonal values as weak couplings as the error might oscillate (fixes convergence for anistropic problems with trilinear finite elements).
- ILU preconditioners: Allow const matrices as template parameters. (Caused a compile time error before)
DUNE 1.2 - Release Notes
Warning: Many things have been marked deprecated. However note that class deprecation is buggy in all versions of gcc prior to 4.3.
dune-common
buildsystem
- Module name, version and dependencies are automatically extracted from the
dune.module
file. Please remove theAC_INIT(...)
entry fromconfigure.ac
of your modules and useDUNE_AC_INIT
instead. - The update-libs mechanism is removed from dune-common, as its use was really limited and it introduced certain problems. Please update your Makefile.am files if you were using this make trick. All
foo_DEPENDENCIES = $(LOCAL_LIBS)
entries must be removed. - All modules should specify a version. The version is of the form M.m.r, with major version M, minor version m and revision r. In
common/version.hh
macros are provided to test on a certain version version of a module during the preprocessor run. - The is now a document describing the build system. It is distributed as part of dune-common.
application programming interface
- The class
FixedArray
, deprecated in DUNE 1.1, has been removed. Please usearray
instead. - The class
Array
, deprecated in DUNE 1.1, has been removed. - The class
RemoveConst
, deprecated in DUNE 1.1, has been removed. Please useremove_const
instead, which conforms with the STL implementation. - The class
SameType
, deprecated in DUNE 1.1, has been removed. Please usesame_type
instead, which conforms with the STL implementation. - The classes
CompileTimeChecker
andIsTrue
are deprecated. For static assertions use the new macrodune_static_assert
which mimics the upcoming new static_assert language feature. - The class
Stack
has been deprecated. Please usestd::stack
instead. - The class
FiniteStack
has been moved to its own headerfinitestack.hh
. - A new class
BitSetVector
has been added todune-common
. It provides an efficient implementation of a dynamic array of static arrays of booleans. It supersedesBitField
, which has been deprecated.
dune-grid
- Support for isoparametric elements has been removed from
UGGrid
. The feature will reappear eventually in form of a meta grid. - The constructor of
UGGrid
taking two integer arguments (heapSize and envHeapSize) had been deprecated in Dune 1.1, as the environment heap size is now handled automatically byUG
. It is now entirely removed. UGGrid
now numbers its level 0 vertices in the order they were inserted into the grid factory. This allows to import vertex data from files.- The
dimworld
template parameter has been removed fromYaspGrid
. It was there for historical reasons only. For a transition period the second parameter is still there, but with a default value. That way old code still compiles. AlbertaGrid
now supports ALBERTA 2.0.- Since ALBERTA supports only a fixed dimension of world (which can be changed by a preprocessor macro), the
dimworld
template parameter is being removed fromAlbertaGrid
, too. For compatibility, the template parameter still exists and defaults to the only correct value. - IndexSets now use
unsigned int
instead ofint
to return indices. The type is exported asIndexType
and may become grid-implementation-specific in the future. - GridParts have been deprecated. They are replaced by grid dependent GridViews providing basically the same functionality. As a consequence, IndexSets do not provide iterators anymore (though this can be re-enabled for a transition phase).
- The methods
wasRefined()
andmightBeCoarsened()
have been renamed toisNew()
andmightVanish()
, respectively. We think that the new names capture the semantics of the methods better. The old methods are still there, but they are deprecated. - A generic implementation for geometries and reference elements has been added. Sadly though, the generic reference elements do not match the current reference elements and renumbering is required for now.
- The method
operator[]
of the classGeometry
has been marked deprecated. It is replaced by the methodcorner
. Note thatcorner
returns a copy of the corner coordinates instead of a reference to them. Moreover,corner
numbers the corners in the same way as the generic reference element. This numbering differs for pyramids and prisms. - The class
Intersection
also received a methodtype
, returning theGeometryType
of the intersection.
dune-istl
- Finally dune-istl has an implementation of the restarted GMRES.
- AMG works for sparse block matrices with an unsymmetric sparsity pattern.
- New Constructor for RemoteIndices which takes a set of prospective ids of processors we might need to exchange information with. If specified this will prevent exchanging information with all processors in a ring (O(P) complexity in RemoteIdices::rebuild) and therefore speedup the rebuild for large processor numbers.
- Parallel solvers tested on IBMs Blue Gene / P with up to 4096 processors.
- A block diagonal matrix (DiagonalMatrix) was added.
dune-grid-dev-howto
This new module has been added to the list of core modules. It is intended to contain a tutorial on how to implement grid implementations. No text exists yet, however, there is an example grid implementation. It is called IdentityGrid
and wraps a given DUNE grid. It hence does not have any functionality itself but it contains all the boilerplate code you need for a grid implementation.