Loading...
Searching...
No Matches
Class List
Here are the classes, structs, unions and interfaces with brief descriptions:

Dune |
ILU |
CRS | Simple compressed row storage matrix class
MatrixImp |
DenseMatrixBase | A Vector of blocks with different blocksizes
Iterator | Iterator class for sequential access
ConstIterator | ConstIterator class for sequential access
MatrixMarketImpl |
mm_numeric_type | Helper metaprogram to get the matrix market string representation of the numeric type
mm_numeric_type< int > |
mm_numeric_type< double > |
mm_numeric_type< float > |
mm_numeric_type< std::complex< double > > |
mm_numeric_type< std::complex< float > > |
mm_header_printer | Meta program to write the correct Matrix Market header
mm_header_printer< BCRSMatrix< T, A > > |
mm_header_printer< BlockVector< B, A > > |
mm_header_printer< FieldVector< T, j > > |
mm_header_printer< FieldMatrix< T, i, j > > |
mm_block_structure_header | Metaprogram for writing the ISTL block structure header
mm_block_structure_header< BlockVector< T, A > > |
mm_block_structure_header< BlockVector< FieldVector< T, i >, A > > |
mm_block_structure_header< BCRSMatrix< T, A > > |
mm_block_structure_header< BCRSMatrix< FieldMatrix< T, i, j >, A > > |
mm_block_structure_header< FieldMatrix< T, i, j > > |
mm_block_structure_header< FieldVector< T, i > > |
MMHeader |
IndexData |
NumericWrapper | Wrapper class of numeric values
PatternDummy | Utility class for marking the pattern type of the MatrixMarket matrices
NumericWrapper< PatternDummy > |
MatrixValuesSetter | Functor to the data values of the matrix
MatrixValuesSetter< PatternDummy, brows, bcols > |
is_complex |
is_complex< std::complex< T > > |
mm_multipliers |
mm_multipliers< BCRSMatrix< B, A > > |
mm_multipliers< BCRSMatrix< FieldMatrix< B, i, j >, A > > |
Amg |
ConstructionTraits | Traits class for generically constructing non default constructable types
AggregationCriterion | Base class of all aggregation criterions
SymmetricMatrixDependency | Dependency policy for symmetric matrices
Dependency | Dependency policy for symmetric matrices
SymmetricDependency | Dependency policy for symmetric matrices
Diagonal | Norm that uses only the [N][N] entry of the block to determine couplings
FirstDiagonal | Norm that uses only the [0][0] entry of the block to determine couplings
RowSum | Functor using the row sum (infinity) norm to determine strong couplings
FrobeniusNorm |
AlwaysOneNorm |
SymmetricCriterion | Criterion taking advantage of symmetric matrices
UnSymmetricCriterion | Criterion suitable for unsymmetric matrices
Aggregator | Class for building the aggregates
AggregatesMap | Class providing information about the mapping of the vertices onto aggregates
DummyEdgeVisitor | A Dummy visitor that does nothing for each visited edge
Aggregate | A class for temporarily storing the vertices of an aggregate in
KAMG | Algebraic multigrid method using a Krylov-cycle
KAmgTwoGrid | Two grid operator for AMG with Krylov cycle
AMG | Parallel algebraic multigrid based on agglomeration
DirectSolverSelector |
Solver |
Solver< M, superlu > |
ApplyHelper |
ApplyHelper< 0 > |
CombinedFunctor |
ConstructionTraits< BlockVector< T, A > > |
ParallelOperatorArgs |
OwnerOverlapCopyCommunicationArgs |
SequentialCommunicationArgs |
ConstructionTraits< OverlappingSchwarzOperator< M, X, Y, C > > |
ConstructionTraits< NonoverlappingSchwarzOperator< M, X, Y, C > > |
MatrixAdapterArgs |
ConstructionTraits< MatrixAdapter< M, X, Y > > |
ConstructionTraits< SequentialInformation > |
ConstructionTraits< OwnerOverlapCopyCommunication< T1, T2 > > |
EdgeProperties | Class representing the properties of an edge in the matrix graph
VertexProperties | Class representing a node in the matrix graph
PropertyGraphVertexPropertyMap |
FastAMG | A fast (sequential) algebraic multigrid based on agglomeration that saves memory bandwidth
GaussSeidelPresmoothDefect |
GaussSeidelPostsmoothDefect |
OverlapVertex |
SparsityBuilder | Functor for building the sparsity pattern of the matrix using examineConnectivity
BaseGalerkinProduct |
GalerkinProduct |
GalerkinProduct< SequentialInformation > |
BaseConnectivityConstructor |
ConnectedBuilder | Visitor for identifying connected aggregates during a breadthFirstSearch
ConnectivityConstructor |
ConnectivityConstructor< G, SequentialInformation > |
DirichletBoundarySetter |
DirichletBoundarySetter< SequentialInformation > |
GlobalAggregatesMap |
Proxy |
AggregatesGatherScatter |
AggregatesPublisher |
AggregatesPublisher< T, O, OwnerOverlapCopyCommunication< T1, T2 > > | Utility class for publishing the aggregate number of the DOFs in the overlap to other processors and convert them to local indices
AggregatesPublisher< T, O, SequentialInformation > |
MatrixGraph | The (undirected) graph of a matrix
EdgeIteratorT | Iterator over all edges starting from a vertex
VertexIteratorT | The vertex iterator type of the graph
SubGraph | A subgraph of a graph
EdgeIndexMap | An index map for mapping the edges to indices
EdgeIterator | The edge iterator of the graph
VertexIterator | The vertex iterator of the graph
VertexPropertiesGraph | Attaches properties to the vertices of a graph
VertexIteratorT |
PropertiesGraph | Attaches properties to the edges and vertices of a graph
EdgeIteratorT |
VertexIteratorT |
GraphVertexPropertiesSelector | Wrapper to access the internal edge properties of a graph via operator[]()
GraphEdgePropertiesSelector | Wrapper to access the internal vertex properties of a graph via operator[]()
PropertiesGraphCreator |
PropertiesGraphCreator< M, SequentialInformation > |
Hierarchy | A hierarchy of containers (e.g. matrices or vectors)
LevelIterator | Iterator over the levels in the hierarchy
IndicesCoarsener |
ParallelIndicesCoarsener |
IndicesCoarsener< OwnerOverlapCopyCommunication< G, L >, E > | Coarsen Indices in the parallel case
IndicesCoarsener< SequentialInformation, E > | Coarsen Indices in the sequential case
MatrixHierarchy | The hierarchies build by the coarsening process
CoarsenCriterion | The criterion describing the stop criteria for the coarsening process
DependencyParameters | Parameters needed to check whether a node depends on another
AggregationParameters | Parameters needed for the aggregation process
CoarseningParameters | Parameters for the complete coarsening process
Parameters | All parameters for AMG
SequentialInformation |
VertexVisitedTag | Tag idnetifying the visited property of a vertex
RandomAccessBundledPropertyMap | A property map that extracts one property out of a bundle using operator[]()
AggregateRenumberer |
DefaultSmootherArgs | The default class for the smoother arguments
SmootherTraits | Traits class for getting the attribute class of a smoother
SmootherTraits< Richardson< X, Y > > |
SmootherTraits< BlockPreconditioner< X, Y, C, T > > |
SmootherTraits< NonoverlappingBlockPreconditioner< C, T > > |
DefaultConstructionArgs | Construction Arguments for the default smoothers
ConstructionArgs |
DefaultParallelConstructionArgs |
DefaultConstructionArgs< Richardson< X, Y > > |
ConstructionTraits< SeqSSOR< M, X, Y, l > > | Policy for the construction of the SeqSSOR smoother
ConstructionTraits< SeqSOR< M, X, Y, l > > | Policy for the construction of the SeqSOR smoother
ConstructionTraits< SeqJac< M, X, Y, l > > | Policy for the construction of the SeqJac smoother
ConstructionTraits< Richardson< X, Y > > | Policy for the construction of the Richardson smoother
ConstructionArgs< SeqILU< M, X, Y > > |
ConstructionTraits< SeqILU< M, X, Y > > | Policy for the construction of the SeqILU smoother
ConstructionTraits< ParSSOR< M, X, Y, C > > | Policy for the construction of the ParSSOR smoother
ConstructionTraits< BlockPreconditioner< X, Y, C, T > > |
ConstructionTraits< NonoverlappingBlockPreconditioner< C, T > > |
SmootherApplier | Helper class for applying the smoothers
SmootherApplier< SeqSOR< M, X, Y, l > > |
SmootherApplier< BlockPreconditioner< X, Y, C, SeqSOR< M, X, Y, l > > > |
SmootherApplier< NonoverlappingBlockPreconditioner< C, SeqSOR< M, X, Y, l > > > |
SmootherApplier< SeqOverlappingSchwarz< M, X, MultiplicativeSchwarzMode, MS, TA > > |
SeqOverlappingSchwarzSmootherArgs |
SmootherTraits< SeqOverlappingSchwarz< M, X, TM, TS, TA > > |
ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > > |
ConstructionTraits< SeqOverlappingSchwarz< M, X, TM, TS, TA > > |
Transfer |
Transfer< V, V1, SequentialInformation > |
Transfer< V, V1, OwnerOverlapCopyCommunication< T1, T2 > > |
LevelTransferPolicy | Abstract base class for transfer between levels and creation of the coarse level system
AggregationLevelTransferPolicy | A LeveTransferPolicy that used aggregation to construct the coarse level system
OneStepAMGCoarseSolverPolicy | A policy class for solving the coarse level system using one step of AMG
TwoLevelMethod |
UMFPackImpl |
isValidBlock |

isValidBlock< OpTraits, std::enable_if_t< std::is_same_v< Impl::UMFPackDomainType< typename OpTraits::matrix_type >, typename OpTraits::domain_type > &&std::is_same_v< Impl::UMFPackRangeType< typename OpTraits::matrix_type >, typename OpTraits::range_type > &&std::is_same_v< typename FieldTraits< typename OpTraits::domain_type::field_type >::real_type, double > &&std::is_same_v< typename FieldTraits< typename OpTraits::range_type::field_type >::real_type, double > > >

exists |
DefaultAllocatorTraits |
DefaultAllocatorTraits< T, std::void_t< typename T::allocator_type > > |
AllocatorTraits |
OverlappingSchwarzInitializer | Initializer for SuperLU Matrices representing the subdomains
MatrixDimension |
CompressionStatistics | Statistics about compression achieved in implicit mode
ImplicitMatrixBuilder | A wrapper for uniform access to the BCRSMatrix during and after the build stage in implicit build mode
row_object | Proxy row object for entry access
BCRSMatrix | A sparse block matrix with compressed row storage
RealRowIterator | Iterator access to matrix rows
CreateIterator | Iterator class for sequential creation of blocks
FieldTraits< BCRSMatrix< B, A > > |
BDMatrix | A block-diagonal matrix
FieldTraits< BDMatrix< B, A > > |
MultiTypeBlockVector | A Vector class to support different block types
MultiTypeBlockMatrix | A Matrix class to support different block types
BTDMatrix | A block-tridiagonal matrix
FieldTraits< BTDMatrix< B, A > > |
BlockVector | A vector of blocks with memory management
FieldTraits< BlockVector< B, A > > |
Cholmod | Dune wrapper for SuiteSparse/CHOLMOD solver
ArPackPlusPlus_Algorithms | Wrapper to use a range of ARPACK++ eigenvalue solvers
PowerIteration_Algorithms | Iterative eigenvalue algorithms based on power iteration
BL | Compile-time parameter for block recursion depth
algmeta_btsolve |
algmeta_btsolve< 0, withdiag, withrelax > |
algmeta_btsolve< 0, withdiag, norelax > |
algmeta_btsolve< 0, nodiag, withrelax > |
algmeta_btsolve< 0, nodiag, norelax > |
algmeta_bdsolve |
algmeta_bdsolve< 0, withrelax > |
algmeta_bdsolve< 0, norelax > |
algmeta_itsteps |
algmeta_itsteps< 0, M > |
algmeta_itsteps< I, MultiTypeBlockMatrix< T1, MultiTypeMatrixArgs... > > |
ILUSubdomainSolver | Base class encapsulating common algorithms of ILU0SubdomainSolver and ILUNSubdomainSolver
ILU0SubdomainSolver | Exact subdomain solver using ILU(p) with appropriate p
ILUNSubdomainSolver |
DefaultSVGMatrixOptions | Default options class to write SVG matrices
ISTLError | Derive error class from the base class in common
BCRSMatrixError | Error specific to BCRSMatrix
ImplicitModeCompressionBufferExhausted | Thrown when the compression buffer used by the implicit BCRSMatrix construction is exhausted
SolverAbort | Thrown when a solver aborts due to some problem
MatrixBlockError | Error when performing an operation on a matrix block
SeqOverlappingSchwarz | Sequential overlapping Schwarz preconditioner
SeqOverlappingSchwarzAssemblerHelper |
LDL | Use the LDL package to directly solve linear systems – empty default class
LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > > | The LDL direct sparse solver for matrices of type BCRSMatrix
IsDirectSolver< LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > > > |
StoresColumnCompressed< LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > > > |
Matrix | A generic dynamic dense matrix
FieldTraits< Matrix< T, A > > |
MatrixIndexSet | Stores the nonzero entries for creating a sparse matrix
MatrixMarketFormatError |
MatMultMatResult | Helper TMP to get the result type of a sparse matrix matrix multiplication ( )
MatMultMatResult< FieldMatrix< T, n, k >, FieldMatrix< T, k, m > > |
MatMultMatResult< BCRSMatrix< FieldMatrix< T, n, k >, A >, BCRSMatrix< FieldMatrix< T, k, m >, A1 > > |
TransposedMatMultMatResult | Helper TMP to get the result type of a sparse matrix matrix multiplication ( )
TransposedMatMultMatResult< FieldMatrix< T, k, n >, FieldMatrix< T, k, m > > |
TransposedMatMultMatResult< BCRSMatrix< FieldMatrix< T, k, n >, A >, BCRSMatrix< FieldMatrix< T, k, m >, A1 > > |
RedistributeInformation |
RedistributeInformation< OwnerOverlapCopyCommunication< T, T1 > > |
CommMatrixRowSize | Utility class to communicate and set the row sizes of a redistributed matrix
CommMatrixSparsityPattern | Utility class to communicate and build the sparsity pattern of a redistributed matrix
CommPolicy< CommMatrixSparsityPattern< M, I > > |
CommMatrixRow | Utility class for comunicating the matrix entries
CommPolicy< CommMatrixRow< M, I > > |
MatrixRowSizeGatherScatter |
MatrixCopyRowSizeGatherScatter |
MatrixSparsityPatternGatherScatter |
MatrixRowGatherScatter |
FieldMatrix |
CheckIfDiagonalPresent | Check whether the a matrix has diagonal values on blocklevel recursion levels
CheckIfDiagonalPresent< Matrix, 0, l > |
CheckIfDiagonalPresent< MultiTypeBlockMatrix< T1, Args... >, blocklevel, l > |
MatrixDimension< Matrix< B, TA > > |
MatrixDimension< BCRSMatrix< B, TA > > |
MatrixDimension< BCRSMatrix< FieldMatrix< B, n, m >, TA > > |
MatrixDimension< FieldMatrix< K, n, m > > |
MatrixDimension< Dune::DynamicMatrix< T > > |
MatrixDimension< Matrix< FieldMatrix< K, n, m >, TA > > |
MatrixDimension< DiagonalMatrix< K, n > > |
MatrixDimension< ScaledIdentityMatrix< K, n > > |
IsMatrix | Test whether a type is an ISTL Matrix
IsMatrix< DenseMatrix< T > > |
IsMatrix< BCRSMatrix< T, A > > |
PointerCompare |
MultiTypeBlockMatrix_Solver | Solver for MultiTypeBlockVector & MultiTypeBlockMatrix types
FieldTraits< MultiTypeBlockMatrix< Rows... > > |
MultiTypeBlockMatrix_Solver_Col | Part of solvers for MultiTypeBlockVector & MultiTypeBlockMatrix types
MultiTypeBlockMatrix_Solver_Col< I, crow, ccol, 0 > |
MultiTypeBlockMatrix_Solver< I, crow, 0 > |
FieldTraits< MultiTypeBlockVector< Args... > > |
NonoverlappingSchwarzOperator | A nonoverlapping operator with communication object
NonoverlappingBlockPreconditioner | Nonoverlapping parallel preconditioner
LinearOperator | A linear operator
AssembledLinearOperator | A linear operator exporting itself in matrix form
MatrixAdapter | Adapter to turn a matrix into a linear operator
AdditiveSchwarzMode | Tag that the tells the Schwarz method to be additive
MultiplicativeSchwarzMode | Tag that tells the Schwarz method to be multiplicative
SymmetricMultiplicativeSchwarzMode | Tag that tells the Schwarz method to be multiplicative and symmetric
DynamicMatrixSubdomainSolver | Exact subdomain solver using Dune::DynamicMatrix<T>::solve
DynamicMatrixSubdomainSolver< BCRSMatrix< K, Al >, X, Y > |
OverlappingAssignerHelper |
OverlappingAssignerHelper< DynamicMatrixSubdomainSolver< BCRSMatrix< K, Al >, X, Y >, false > |
OverlappingAssignerHelper< S< BCRSMatrix< T, A > >, true > |
OverlappingAssignerILUBase |
OverlappingAssignerHelper< ILU0SubdomainSolver< M, X, Y >, false > |
OverlappingAssignerHelper< ILUNSubdomainSolver< M, X, Y >, false > |
AdditiveAdder |
AdditiveAdder< S, BlockVector< T, A > > |
MultiplicativeAdder |
MultiplicativeAdder< S, BlockVector< T, A > > |
AdderSelector | Template meta program for choosing how to add the correction
AdderSelector< AdditiveSchwarzMode, X, S > |
AdderSelector< MultiplicativeSchwarzMode, X, S > |
AdderSelector< SymmetricMultiplicativeSchwarzMode, X, S > |
IteratorDirectionSelector | Helper template meta program for application of overlapping Schwarz
IteratorDirectionSelector< T1, T2, false > |
SeqOverlappingSchwarzApplier | Helper template meta program for application of overlapping Schwarz
SeqOverlappingSchwarzApplier< SeqOverlappingSchwarz< M, X, SymmetricMultiplicativeSchwarzMode, TD, TA > > |
SeqOverlappingSchwarzAssemblerHelper< DynamicMatrixSubdomainSolver< BCRSMatrix< K, Al >, X, Y >, false > |
SeqOverlappingSchwarzAssemblerHelper< S< BCRSMatrix< T, A > >, true > |
SeqOverlappingSchwarzAssemblerILUBase |
SeqOverlappingSchwarzAssemblerHelper< ILU0SubdomainSolver< M, X, Y >, false > |
SeqOverlappingSchwarzAssemblerHelper< ILUNSubdomainSolver< M, X, Y >, false > |
SeqOverlappingSchwarzDomainSize |
SeqOverlappingSchwarzDomainSize< BCRSMatrix< T, A > > |
OwnerOverlapCopyAttributeSet | Attribute set for overlapping Schwarz
IndexInfoFromGrid | Information about the index distribution
OwnerOverlapCopyCommunication | A class setting up standard communication for a two-valued attribute set with owner/overlap/copy semantics
CopyGatherScatter | Gather/scatter callback for communication
AddGatherScatter |
AMGCreator |
isValidMatrix |
isValidMatrix< BCRSMatrix< FieldMatrix< T, n, m >, A > > |
OverlappingSchwarzOperator | An overlapping Schwarz operator
PropertyMapTypeSelector< Amg::VertexVisitedTag, Amg::PropertiesGraph< G, Amg::VertexProperties, EP, VM, EM > > |
CommPolicy< Amg::GlobalAggregatesMap< T, TI > > |
Preconditioner | Base class for matrix free definition of preconditioners
InverseOperator2Preconditioner | Turns an InverseOperator into a Preconditioner
SeqSSOR | Sequential SSOR preconditioner
SeqSOR | Sequential SOR preconditioner
SeqJac | The sequential jacobian preconditioner
SeqDILU | Sequential DILU preconditioner
SeqILU | Sequential ILU preconditioner
Richardson | Richardson preconditioner
SeqILDL | Sequential ILDL preconditioner
RedistributeInterface |
ScalarProduct | Base class for scalar product and norm computation
ParallelScalarProduct | Scalar product for overlapping Schwarz methods
SeqScalarProduct | Default implementation for the scalar case
NonoverlappingSchwarzScalarProduct | Nonoverlapping Scalar Product with communication object
OverlappingSchwarzScalarProduct | Scalar product for overlapping Schwarz methods
ScaledIdentityMatrix | A multiple of the identity matrix of static size
DenseMatrixAssigner< DenseMatrix, ScaledIdentityMatrix< field, N > > |
FieldTraits< ScaledIdentityMatrix< K, n > > |
ParSSOR | A parallel SSOR preconditioner
BlockPreconditioner | Block parallel preconditioner
InverseOperatorResult | Statistics about the application of an inverse operator
InverseOperator | Abstract base class for all solvers
IterativeSolver | Base class for all implementations of iterative solvers
Iteration | Class for controlling iterative methods
SolverHelper | Helper class for notifying a DUNE-ISTL linear solver about a change of the iteration matrix object in a unified way, i.e. independent from the solver's type (direct/iterative)
Implementation | Implementation that works together with iterative ISTL solvers, e.g. Dune::CGSolver or Dune::BiCGSTABSolver
Implementation< true, Dummy > | Implementation that works together with direct ISTL solvers, e.g. Dune::SuperLU or Dune::UMFPack
SolverCategory | Categories for the solvers
InvalidSolverCategory |
OperatorTraits |
UnknownSolverCategory |
NoAssembledOperator | This exception is thrown if the requested solver or preconditioner needs an assembled matrix
UnsupportedType |
InvalidSolverFactoryConfiguration |
LoopSolver | Preconditioned loop solver
GradientSolver | Gradient method
CGSolver | Conjugate gradient method
BiCGSTABSolver | Bi-conjugate Gradient Stabilized (BiCG-STAB)
MINRESSolver | Minimal Residual Method (MINRES)
RestartedGMResSolver | Implements the Generalized Minimal Residual (GMRes) method
RestartedFlexibleGMResSolver | Implements the Flexible Generalized Minimal Residual (FGMRes) method (right preconditioned)
GeneralizedPCGSolver | Generalized preconditioned conjugate gradient solver
RestartedFCGSolver | Accelerated flexible conjugate gradient method
CompleteFCGSolver | Complete flexible conjugate gradient method
IsDirectSolver |
StoresColumnCompressed |
SPQR | Use the SPQR package to directly solve linear systems – empty default class
SPQR< BCRSMatrix< FieldMatrix< T, n, m >, A > > | The SPQR direct sparse solver for matrices of type BCRSMatrix
IsDirectSolver< SPQR< BCRSMatrix< T, A > > > |
StoresColumnCompressed< SPQR< BCRSMatrix< T, A > > > |
SuperLUSolveChooser |
SuperLUDenseMatChooser |
SuperLUQueryChooser |
QuerySpaceChooser |
SuperLU | SuperLu Solver
IsDirectSolver< SuperLU< BCRSMatrix< T, A > > > |
StoresColumnCompressed< SuperLU< BCRSMatrix< T, A > > > |
SuperMatrixCreateSparseChooser |
SuperMatrixPrinter |
BaseGetSuperLUType |
GetSuperLUType |
GetSuperLUType< double > |
GetSuperLUType< float > |
GetSuperLUType< std::complex< double > > |
GetSuperLUType< std::complex< float > > |
SuperLUMatrix | Utility class for converting an ISTL Matrix into a SuperLU Matrix
SuperMatrixInitializer |
SuperLUMatrix< BCRSMatrix< B, TA > > | Converter for BCRSMatrix to SuperLU Matrix
SuperMatrixInitializer< BCRSMatrix< B, A > > |
UMFPackMethodChooser |
UMFPackMethodChooser< double > |
UMFPackMethodChooser< std::complex< double > > |
UMFPack | The UMFPack direct sparse solver
IsDirectSolver< UMFPack< M > > |
StoresColumnCompressed< UMFPack< BCRSMatrix< T, A > > > |
VariableBlockVector | A Vector of blocks with different blocksizes
CreateIterator | Iterator class for sequential creation of blocks
FieldTraits< VariableBlockVector< B, A > > |
std | STL namespace
tuple_element< i, Dune::MultiTypeBlockMatrix< Args... > > | Make std::tuple_element work for MultiTypeBlockMatrix
tuple_size< Dune::MultiTypeBlockMatrix< Args... > > | Make std::tuple_size work for MultiTypeBlockMatrix
tuple_element< i, Dune::MultiTypeBlockVector< Args... > > | Make std::tuple_element work for MultiTypeBlockVector
tuple_size< Dune::MultiTypeBlockVector< Args... > > | Make std::tuple_size work for MultiTypeBlockVector