Dune Core Modules (2.5.0)
Namespaces | |
namespace | Capabilities |
Contains all capabilities classes. | |
namespace | Concept |
Namespace for concepts. | |
namespace | FloatCmp |
namespace | GeoGrid |
namespace containing the implementations of GeometryGrid | |
namespace | Indices |
Namespace with predefined compile time indices for the range [0,19]. | |
namespace | Partitions |
Predefined PartitionSets for commonly used combinations of parallel grid PartitionTypes. | |
namespace | QuadratureType |
Defines an enum for currently available quadrature rules. | |
namespace | RefinementImp |
This namespace contains the implementation of Refinement. | |
Classes | |
class | AdaptDataHandleInterface |
Interface class for the Grid's adapt method where the parameter is a AdaptDataHandleInterface. More... | |
struct | AdderSelector |
template meta program for choosing how to add the correction. More... | |
struct | AdditiveSchwarzMode |
Tag that the tells the schwarz method to be additive. More... | |
struct | AddPtrTypeEvaluator |
TypeEvaluator to turn a type T into a pointer to T More... | |
struct | AddRefTypeEvaluator |
TypeEvaluator to turn a type T into a reference to T More... | |
class | AffineGeometry |
Implementation of the Geometry interface for affine geometries. More... | |
class | AlbertaGrid |
[ provides Dune::Grid ] More... | |
class | AlbertaGridEntity |
class | AlbertaGridEntity< 0, dim, Grid > |
class | AlbertaGridEntityPointer |
EntityPointer implementation for AlbertaGrid. More... | |
class | AlbertaGridGeometry |
geometry implementation for AlbertaGrid More... | |
class | AlbertaGridHierarchicIterator |
class | AlbertaGridIdSet |
hierarchic index set of AlbertaGrid More... | |
class | AlbertaGridTreeIterator |
class | AlbertaMarkerVector |
marker assigning subentities to one element containing them More... | |
struct | AlignmentOf |
Calculates the alignment requirement of a type. More... | |
class | AllSet |
A set containing everything. More... | |
struct | AlwaysFalse |
template which always yields a false value More... | |
struct | AlwaysTrue |
template which always yields a true value More... | |
class | AmiraMeshWriter |
Provides file writing facilities in the AmiraMesh format. More... | |
class | AnalyticalCoordFunction |
Derive an implementation of an analytical coordinate function from this class. More... | |
class | AnalyticalCoordFunctionInterface |
Interface class for using an analytical function to define the geometry of a Dune::GeometryGrid. An implementation should be derived from Dune::AnalyticalCoordFunction and the evaluate method mapping \( R^d\to R^r \) has to be supplied. More... | |
class | ArrayList |
A dynamically growing random access list. More... | |
class | ArrayListIterator |
A random access iterator for the Dune::ArrayList class. More... | |
class | AssembledLinearOperator |
A linear operator exporting itself in matrix form. More... | |
class | AssociativePropertyMap |
An adapter to turn an unique associative container into a property map. More... | |
struct | At |
Reverse element access. More... | |
struct | AtType |
Type for reverse element access. More... | |
class | AxisAlignedCubeGeometry |
A geometry implementation for axis-aligned hypercubes. More... | |
union | b64chunk |
union representing the three byte text as well as the four 6 bit chunks More... | |
struct | b64data |
struct | b64txt |
struct with three bytes of text More... | |
class | BackupRestoreFacility |
facility for writing and reading grids More... | |
struct | BackupRestoreFacility< const Grid > |
BackupRestoreFacility taking const Grid as type and deriving from the version with the const. More... | |
struct | BackupRestoreFacility< Dune::YaspGrid< dim, Coordinates > > |
facility for writing and reading grids More... | |
struct | BackupRestoreFacility< YaspGrid< dim, TensorProductCoordinates< ctype, dim > > > |
facility for writing and reading grids More... | |
class | Base64Stream |
class to base64 encode a stream of data More... | |
class | base_array |
This container extends base_array_unmanaged by memory management with the usual copy semantics providing the full range of copy constructor, destructor and assignment operators. More... | |
class | base_array_unmanaged |
A simple array container for objects of type B. More... | |
class | base_array_window |
Extend base_array_unmanaged by functions to manipulate. More... | |
class | BCRSMatrix |
A sparse block matrix with compressed row storage. More... | |
class | BCRSMatrixError |
Error specific to BCRSMatrix. More... | |
class | BDMatrix |
A block-diagonal matrix. More... | |
class | BiCGSTABSolver |
Bi-conjugate Gradient Stabilized (BiCG-STAB) More... | |
class | BidirectionalIteratorFacade |
Facade class for stl conformant bidirectional iterators. More... | |
class | bigunsignedint |
Portable very large unsigned integers. More... | |
class | BitSetVector |
A dynamic array of blocks of booleans. More... | |
class | BitSetVectorConstReference |
A proxy class that acts as a const reference to a single bitset in a BitSetVector. More... | |
class | BitSetVectorReference |
A proxy class that acts as a mutable reference to a single bitset in a BitSetVector. More... | |
struct | BL |
compile-time parameter for block recursion depth More... | |
class | block_vector_unmanaged |
An unmanaged vector of blocks. More... | |
class | BlockPreconditioner |
Block parallel preconditioner. More... | |
class | BlockVector |
A vector of blocks with memory management. More... | |
class | BlockVectorWindow |
struct | BoundarySegment |
Base class for classes implementing geometries of boundary segments. More... | |
class | BoundarySegmentWrapper |
class | BTDMatrix |
A block-tridiagonal matrix. More... | |
class | BufferedCommunicator |
A communicator that uses buffers to gather and scatter the data to be send or received. More... | |
class | CachedMultiLinearGeometry |
Implement a MultiLinearGeometry with additional caching. More... | |
class | CGSolver |
conjugate gradient method More... | |
struct | CheckIfDiagonalPresent |
Check whether the a matrix has diagonal values on blocklevel recursion levels. More... | |
struct | Cloneable |
An interface class for cloneable objects. More... | |
struct | Codim |
Static tag representing a codimension. More... | |
struct | ColCompMatrix |
Utility class for converting an ISTL Matrix into a column-compressed matrix. More... | |
class | ColCompMatrix< BCRSMatrix< FieldMatrix< B, n, m >, TA > > |
Converter for BCRSMatrix to column-compressed Matrix. specialization for BCRSMatrix. More... | |
struct | ColCompMatrixInitializer |
Inititializer for the ColCompMatrix as needed by OverlappingSchwarz. More... | |
class | CollectiveCommunication |
Collective communication interface and sequential default implementation. More... | |
class | CollectiveCommunication< MPI_Comm > |
Specialization of CollectiveCommunication for MPI. More... | |
class | CollectiveIterator |
A collective iterator for moving over the remote indices for all processes collectively. More... | |
class | Combine |
A set combining two other sets. More... | |
class | CombinedAdaptProlongRestrict |
class for combining 2 index sets together for adaptation process More... | |
class | CommDataHandleIF |
CommDataHandleIF describes the features of a data handle for communication in parallel runs using the Grid::communicate methods. Here the Barton-Nackman trick is used to interprete data handle objects as its interface. Therefore usable data handle classes need to be derived from this class. More... | |
struct | CommMatrixRow |
Utility class for comunicating the matrix entries. More... | |
struct | CommMatrixRowSize |
Utility class to communicate and set the row sizes of a redistributed matrix. More... | |
struct | CommMatrixSparsityPattern |
Utility class to communicate and build the sparsity pattern of a redistributed matrix. More... | |
struct | common_bits |
activate if current and mask have common bits switched on. More... | |
struct | CommPolicy |
Default policy used for communicating an indexed type. More... | |
class | compressed_base_array_unmanaged |
A simple array container with non-consecutive index set. More... | |
class | compressed_block_vector_unmanaged |
class | CompressedBlockVectorWindow |
struct | CompressionStatistics |
Statistics about compression achieved in implicit mode. More... | |
struct | const_reference |
Get the 'const' version of a reference to a mutable object. More... | |
struct | const_reference< BitSetVectorReference< block_size, Alloc > > |
class | ConstArrayListIterator |
A constant random access iterator for the Dune::ArrayList class. More... | |
class | ConstAssociativePropertyMap |
An adaptor to turn an unique associative container into a property map. More... | |
class | ContainerWrapperIterator |
Iterator class for sparse vector-like containers. More... | |
class | DebugAllocator |
Allocators implementation which performs different kind of memory checks. More... | |
class | DebugStream |
Generic class to implement debug output streams. More... | |
class | DebugStreamError |
standard exception for the debugstream More... | |
class | DebugStreamState |
Intermediate class to implement tie-operation of DebugStream. More... | |
class | DenseIterator |
Generic iterator class for dense vector and matrix implementations. More... | |
class | DenseMatrix |
A dense n x m matrix. More... | |
struct | DenseMatrixAssigner |
you have to specialize this structure for any type that should be assignable to a DenseMatrix More... | |
class | DenseVector |
Interface for a class of dense vectors over a given field. More... | |
struct | DGFBoundaryParameter |
Contains types for additional features. More... | |
class | DGFException |
exception class for IO errors in the DGF parser More... | |
struct | DGFGridFactory< YaspGrid< dim > > |
Grid factory for YaspGrid with equidistant coordinates. More... | |
struct | DGFGridFactory< YaspGrid< dim, EquidistantOffsetCoordinates< double, dim > > > |
Grid factory for YaspGrid with equidistant coordinates. More... | |
struct | DGFGridInfo |
Some simple static information for a given GridType. More... | |
class | DGFWriter |
write a GridView to a DGF file More... | |
class | DiagonalMatrix |
A diagonal matrix of static size. More... | |
struct | Dim |
Static tag representing a dimension. More... | |
class | DiscreteCoordFunction |
Derive an implementation of a discrete coordinate function from this class. More... | |
class | DiscreteCoordFunctionInterface |
Interface class for using a discrete function to define the geometry of a Dune::GeometryGrid. An implementation should be derived from Dune::DiscreteCoordinateFunction and the evaluate method taking an entity of the host grid together with the number of a vertex returns the coordinate in \( R^r \) of that corner. The user must ensure continuity of this mapping. In addition an adapt method is provided which is called whenever adapt() is called on the Dune::GeometryGrid. More... | |
struct | DuneBoundaryProjection |
Interface class for vertex projection at the boundary. More... | |
class | DuneGridFormatParser |
The DuneGridFormatParser class: reads a DGF file and stores build information in vector structures used by the MacroGrid class. More... | |
class | DynamicMatrix |
Construct a matrix with a dynamic size. More... | |
class | DynamicMatrixSubdomainSolver |
Exact subdomain solver using Dune::DynamicMatrix<T>::solve. More... | |
class | DynamicVector |
Construct a vector with a dynamic size. More... | |
struct | Empty |
Just an empty class. More... | |
class | EmptySet |
An empty set. More... | |
struct | EnableIfInterOperable |
Enable typedef if two types are interoperable. More... | |
class | Entity |
Wrapper class for entities. More... | |
class | Entity< 0, dim, GridImp, EntityImp > |
Template specialization of Dune::Entity for Elements (codim==0) More... | |
class | EntityDefaultImplementation |
Default Implementations for EntityImp. More... | |
class | EntityDefaultImplementation< 0, dim, GridImp, EntityImp > |
Default Implementations for EntityImp (Elements [cd=0]) More... | |
struct | EntityInfo |
Structure to hold statistical information about one type of entity. More... | |
class | EntityIterator |
interface class for an iterator over grid entities More... | |
class | EntityPointer |
Wrapper class for pointers to entities. More... | |
class | EntitySeed |
Store a reference to an entity with a minimal memory footprint. More... | |
class | EnumItem |
A set consisting only of one item. More... | |
class | EnumRange |
A set representing a range including the borders. More... | |
class | EquidistantCoordinates |
Container for equidistant coordinates in a YaspGrid. More... | |
class | EquidistantOffsetCoordinates |
Container for equidistant coordinates in a YaspGrid with non-trivial origin. More... | |
class | Exception |
Base class for Dune-Exceptions. More... | |
struct | ExceptionHook |
Base class to add a hook to the Dune::Exception. More... | |
struct | Factorial |
Calculates the factorial of m at compile time. More... | |
struct | Factorial< 0 > |
end of recursion of factorial via specialization More... | |
class | FakeMPIHelper |
A fake mpi helper. More... | |
class | FieldMatrix |
A dense n x m matrix. More... | |
class | FieldVector |
vector space out of a tensor product of fields. More... | |
class | FirstPredicateIndex |
Finding the index of a certain type in a std::tuple. More... | |
struct | FirstTypeIndex |
Find the first occurrence of a type in a std::tuple. More... | |
struct | FlattenTuple |
Flatten a std::tuple of std::tuple's. More... | |
class | FloatCmpOps |
Class encapsulating a default epsilon. More... | |
class | FMatrixError |
Error thrown if operations of a FieldMatrix fail. More... | |
class | FMatrixPrecision |
Precisions for calculations with FieldMatrix and FieldVector. More... | |
struct | ForEachType |
Helper template to clone the type definition of a std::tuple with the storage types replaced by a user-defined rule. More... | |
class | ForEachValue |
Helper template which implements iteration over all storage elements in a std::tuple. More... | |
class | ForEachValuePair |
Extension of ForEachValue to two std::tuple's. More... | |
class | ForLoop |
A static loop using TMP. More... | |
class | ForwardIteratorFacade |
Base class for stl conformant forward iterators. More... | |
class | Function |
Base class template for function classes. More... | |
struct | GaussLobattoQuadratureInitHelper |
class | GaussLobattoQuadratureRule1D |
Jacobi-Gauss quadrature for alpha=2, beta=0. More... | |
struct | GaussQuadratureInitHelper |
class | GaussQuadratureRule1D |
Gauss quadrature rule in 1D. More... | |
struct | Gcd |
Calculator of the greatest common divisor. More... | |
class | GeneralizedPCGSolver |
Generalized preconditioned conjugate gradient solver. More... | |
class | GeneralVertexOrder |
Class providing information on the ordering of vertices. More... | |
class | GenericIterator |
Generic class for stl-conforming iterators for container classes with operator[]. More... | |
class | Geometry |
Wrapper class for geometries. More... | |
class | GeometryDefaultImplementation |
Default implementation for class Geometry. More... | |
class | GeometryGrid |
grid wrapper replacing the geometries More... | |
class | GeometryType |
Unique label for each type of entities that can occur in DUNE grids. More... | |
class | GlobalGeometryTypeIndex |
Compute indices for geometry types, taking the dimension into account. More... | |
class | GlobalIndexSet |
Calculate globally unique index over all processes in a Dune grid. More... | |
class | GlobalLookupIndexSet |
Decorates an index set with the possibility to find a global index that is mapped to a specific local. More... | |
class | GlobalUniversalMapper |
Universal mapper based on global ids. More... | |
class | GMPField |
Number class for high precision floating point number using the GMP library mpf_class implementation. More... | |
class | GmshReader |
Read Gmsh mesh file. More... | |
struct | GmshReaderOptions |
Options for read operation. More... | |
class | GmshReaderParser |
dimension independent parts for GmshReaderParser More... | |
class | GmshWriter |
Write Gmsh mesh file. More... | |
class | GnuplotWriter |
Writer for 1D grids in gnuplot format. More... | |
class | GradientSolver |
gradient method More... | |
struct | greater_or_equal |
Greater or equal template test. More... | |
class | Grid |
Grid abstract base class. More... | |
class | GridDefaultImplementation |
class | GridError |
Base class for exceptions in Dune grid modules. More... | |
class | GridFactory |
Provide a generic factory class for unstructured grids. More... | |
class | GridFactory< AlbertaGrid< dim, dimworld > > |
specialization of the generic GridFactory for AlbertaGrid More... | |
class | GridFactory< UGGrid< dimworld > > |
Specialization of the generic GridFactory for UGGrid. More... | |
class | GridFactoryInterface |
Provide a generic factory class for unstructured grids. More... | |
struct | GridPtr |
Class for constructing grids from DGF files. More... | |
struct | GridTraits |
A traits struct that collects all associated types of one grid model. More... | |
class | GridView |
Grid view abstract base class. More... | |
struct | GridViewInfo |
structure to hold information about a certain GridView. More... | |
struct | GridViewInfoGTCompare |
Comparison object to sort GeometryType by majorly dimension. More... | |
struct | hash |
Functor for hashing objects of type T. More... | |
class | HelpRequest |
exception thrown if the user wants to see help string More... | |
class | HierarchicSearch |
Search an IndexSet for an Entity containing a given point. More... | |
class | HostGridAccess |
provides access to host grid objects from GeometryGrid More... | |
class | IdentityGrid |
Provides a meta grid that is identical to its host. More... | |
class | IdentityGridEntity |
The implementation of entities in a IdentityGrid. More... | |
class | IdentityGridEntity< 0, dim, GridImp > |
Specialization for codim-0-entities. More... | |
class | IdentityGridEntitySeed |
The EntitySeed class provides the minimal information needed to restore an Entity using the grid. More... | |
class | IdentityGridHierarchicIterator |
Iterator over the descendants of an entity.Mesh entities of codimension 0 ("elements") allow to visit all entities of codimension 0 obtained through nested, hierarchic refinement of the entity. Iteration over this set of entities is provided by the HierarchicIterator, starting from a given entity. More... | |
class | IdentityGridLeafIntersection |
An intersection with a leaf neighbor elementMesh entities of codimension 0 ("elements") allow to visit all neighbors, where a neighbor is an entity of codimension 0 which has a common entity of codimension 1 These neighbors are accessed via a IntersectionIterator. This allows the implement non-matching meshes. The number of neighbors may be different from the number of an element! More... | |
class | IdentityGridLeafIntersectionIterator |
Iterator over all element neighborsMesh entities of codimension 0 ("elements") allow to visit all neighbors, where a neighbor is an entity of codimension 0 which has a common entity of codimension 1 These neighbors are accessed via a IntersectionIterator. This allows the implement non-matching meshes. The number of neighbors may be different from the number of an element! More... | |
class | IdentityGridLeafIterator |
Iterator over all entities of a given codimension and level of a grid. More... | |
class | IdentityGridLevelIndexSet |
class | IdentityGridLevelIntersection |
class | IdentityGridLevelIntersectionIterator |
class | IdentityGridLevelIterator |
Iterator over all entities of a given codimension and level of a grid. More... | |
struct | IdentityMap |
A property map that applies the identity function to integers. More... | |
class | IdentityMatrix |
Read-only identity matrix. More... | |
class | IdSet |
Id Set Interface. More... | |
class | ILU0SubdomainSolver |
Exact subdomain solver using ILU(p) with appropriate p. More... | |
class | ILUSubdomainSolver |
base class encapsulating common algorithms of ILU0SubdomainSolver and ILUNSubdomainSolver. More... | |
struct | ImplementationDefined |
Dummy struct used for documentation purposes. More... | |
class | ImplicitMatrixBuilder |
A wrapper for uniform access to the BCRSMatrix during and after the build stage in implicit build mode. More... | |
class | ImplicitModeOverflowExhausted |
The overflow error used during implicit BCRSMatrix construction was exhausted. More... | |
class | Indent |
Utility class for handling nested indentation in output. More... | |
class | IndexInfoFromGrid |
Information about the index distribution. More... | |
class | IndexPair |
A pair consisting of a global and local index. More... | |
class | IndexSet |
Index Set Interface base class. More... | |
class | IndexSetDefaultImplementation |
Provide default implementation of method if IndexSet. More... | |
class | IndexStack |
class | IndicesSyncer |
Class for recomputing missing indices of a distributed index set. More... | |
class | Interface |
Communication interface between remote and local indices. More... | |
class | InterfaceBuilder |
Base class of all classes representing a communication interface. More... | |
class | InterfaceInformation |
Information describing an interface. More... | |
class | Intersection |
Intersection of a mesh entity of codimension 0 ("element") with a "neighboring" element or with the domain boundary. More... | |
class | IntersectionDefaultNormalVectors |
Default Implementations of integrationOuterNormal and unitOuterNormal for IntersectionImp. More... | |
class | IntersectionIterator |
Mesh entities of codimension 0 ("elements") allow to visit all intersections with "neighboring" elements and with the domain boundary. More... | |
class | InvalidIndexSetState |
Exception indicating that the index set is not in the expected state. More... | |
class | InvalidStateException |
Default exception if a function was called while the object is not in a valid state for that function. More... | |
class | InverseOperator |
Abstract base class for all solvers. More... | |
class | InverseOperator2Preconditioner |
Turns an InverseOperator into a Preconditioner. More... | |
struct | InverseOperatorResult |
Statistics about the application of an inverse operator. More... | |
class | IOError |
Default exception class for I/O errors. More... | |
class | ios_base_all_saver |
Utility class for storing and resetting stream attributes. More... | |
struct | is_indexable |
struct | is_range |
struct | IsEmptyTypeList |
Check if given type is an empty TypeList. More... | |
struct | IsFieldVectorSizeCorrect |
TMP to check the size of a DenseVectors statically, if possible. More... | |
struct | IsIntegralConstant |
Check if T is an std::integral_constant<I, i> More... | |
struct | IsInteroperable |
Checks whether two types are interoperable. More... | |
struct | IsMatrix |
Test whether a type is an ISTL Matrix. More... | |
class | ISTLError |
derive error class from the base class in common More... | |
struct | IsTuple |
Check if T is a std::tuple<...> More... | |
struct | IsTupleOrDerived |
Check if T derived from a std::tuple<...> More... | |
struct | IsType |
Generator for predicates accepting one particular type. More... | |
struct | IsTypeList |
Check if given type is a TypeList. More... | |
struct | IsTypeList< TypeList< T... > > |
Check if given type is a TypeList. More... | |
struct | IteratorDirectionSelector |
Helper template meta program for application of overlapping schwarz. More... | |
class | IteratorPropertyMap |
Adapter to turn a random access iterator into a property map. More... | |
class | IteratorRange |
Simple range between a begin and an end iterator. More... | |
struct | Jacobi1QuadratureInitHelper |
class | Jacobi1QuadratureRule1D |
Jacobi-Gauss quadrature for alpha=1, beta=0. More... | |
struct | Jacobi2QuadratureInitHelper |
class | Jacobi2QuadratureRule1D |
Jacobi-Gauss quadrature for alpha=2, beta=0. More... | |
struct | JoinTuples |
Join two std::tuple's. More... | |
struct | Lcm |
Calculate the least common multiple of two numbers. More... | |
class | LDL |
Use the LDL package to directly solve linear systems – empty default class. More... | |
class | LDL< BCRSMatrix< FieldMatrix< T, n, m >, A > > |
The LDL direct sparse solver for matrices of type BCRSMatrix. More... | |
class | LeafAmiraMeshWriter |
Provides file writing facilities in the AmiraMesh format for leaf grids. More... | |
class | LeafGnuplotWriter |
GnuplotWriter on the leaf grid. More... | |
class | LeafMultipleCodimMultipleGeomTypeMapper |
Multiple codim and multiple geometry type mapper for leaf entities. More... | |
class | LeafSingleCodimSingleGeomTypeMapper |
Single codim and single geometry type mapper for leaf entities. More... | |
class | LevelAmiraMeshWriter |
Provides file writing facilities in the AmiraMesh format for level grids. More... | |
class | LevelGnuplotWriter |
GnuplotWriter on a given level grid. More... | |
class | LevelMultipleCodimMultipleGeomTypeMapper |
Multiple codim and multiple geometry type mapper for entities of one level. More... | |
class | LevelSingleCodimSingleGeomTypeMapper |
Single codim and single geometry type mapper for entities of one level. More... | |
class | LinearOperator |
A linear operator. More... | |
class | LinearOperatorSum |
A linear operator representing the sum of two linear operators. More... | |
class | LocalGeometryTypeIndex |
Compute per-dimension indices for geometry types. More... | |
class | LocalIndex |
An index present on the local process. More... | |
class | LocalUniversalMapper |
Universal mapper based on local ids. More... | |
class | LoopSolver |
Preconditioned loop solver. More... | |
class | lru |
LRU Cache Container. More... | |
struct | LvaluePropertyMapTag |
Tag for the category of lvalue property maps. More... | |
struct | MakeableInterfaceObject |
class | MallocAllocator |
Allocators implementation which simply calls malloc/free. More... | |
class | Mapper |
Mapper interface. More... | |
struct | MathematicalConstants |
Provides commonly used mathematical constants. More... | |
class | MathError |
Default exception class for mathematical errors. More... | |
struct | MatMultMatResult |
Helper TMP to get the result type of a sparse matrix matrix multiplication ( \(C=A*B\)) More... | |
class | Matrix |
A generic dynamic dense matrix. More... | |
class | MatrixAdapter |
Adapter to turn a matrix into a linear operator. More... | |
class | MatrixIndexSet |
Stores the nonzero entries in a sparse matrix. More... | |
class | MatrixRowSet |
Provides access to an iterator over all matrix rows. More... | |
class | MatrixRowSubset |
Provides access to an iterator over an arbitrary subset of matrix rows. More... | |
struct | MCMGElementLayout |
Layout template for elements. More... | |
struct | MCMGVertexLayout |
Layout template for vertices. More... | |
class | MessageBufferIF |
Communication message buffer interface. This class describes the interface for reading and writing data to the communication message buffer. As message buffers might be deeply implemented in various packages the message buffers implementations cannot be derived from this interface class. Therefore we just apply the engine concept to wrap the message buffer call and make sure that the interface is fulfilled. More... | |
class | MINRESSolver |
Minimal Residual Method (MINRES) More... | |
class | MPIGuard |
detects a thrown exception and communicates to all other processes More... | |
class | MPIGuardError |
This exception is thrown if the MPIGuard detects an error on a remote process. More... | |
class | MPIHelper |
A real mpi helper. More... | |
struct | MPITraits |
A traits class describing the mapping of types onto MPI_Datatypes. More... | |
class | MPITraits< IndexPair< TG, ParallelLocalIndex< TA > > > |
class | MPITraits< ParallelLocalIndex< T > > |
class | MultiLinearGeometry |
generic geometry implementation based on corner coordinates More... | |
struct | MultiLinearGeometryTraits |
default traits class for MultiLinearGeometry More... | |
class | MultipleCodimMultipleGeomTypeMapper |
Implementation class for a multiple codim and multiple geometry type mapper. More... | |
struct | MultiplicativeSchwarzMode |
Tag that tells the Schwarz method to be multiplicative. More... | |
class | MultiTypeBlockMatrix |
A Matrix class to support different block types. More... | |
class | MultiTypeBlockMatrix_Solver |
solver for MultiTypeBlockVector & MultiTypeBlockMatrix types More... | |
class | MultiTypeBlockMatrix_Solver_Col |
part of solvers for MultiTypeBlockVector & MultiTypeBlockMatrix types More... | |
class | MultiTypeBlockVector |
A Vector class to support different block types. More... | |
struct | mutable_reference |
get the 'mutable' version of a reference to a const object More... | |
class | NegateSet |
The negation of a set. An item is contained in the set if and only if it is not contained in the negated set. More... | |
class | NonoverlappingBlockPreconditioner |
Nonoverlapping parallel preconditioner. More... | |
class | NonoverlappingSchwarzOperator |
A nonoverlapping operator with communication object. More... | |
class | NonoverlappingSchwarzScalarProduct |
Nonoverlapping Scalar Product with communication object. More... | |
class | NotImplemented |
Default exception for dummy implementations. More... | |
struct | null_deleter |
implements the Deleter concept of shared_ptr without deleting anything More... | |
struct | NullPointerInitialiser |
A helper template that initializes a std::tuple consisting of pointers to nullptr. More... | |
class | OneDGrid |
One-dimensional adaptive grid. More... | |
class | OutOfMemoryError |
Default exception if memory allocation fails. More... | |
class | OverlappingSchwarzInitializer |
Initializer for SuperLU Matrices representing the subdomains. More... | |
class | OverlappingSchwarzOperator |
An overlapping schwarz operator. More... | |
class | OverlappingSchwarzScalarProduct |
Scalar product for overlapping schwarz methods. More... | |
struct | OwnerOverlapCopyAttributeSet |
Attribute set for overlapping schwarz. More... | |
class | OwnerOverlapCopyCommunication |
A class setting up standard communication for a two-valued attribute set with owner/overlap/copy semantics. More... | |
class | P0VTKFunction |
Take a vector and interpret it as cell data for the VTKWriter. More... | |
class | P1VTKFunction |
Take a vector and interpret it as point data for the VTKWriter. More... | |
class | ParallelError |
Default exception if an error in the parallel communication of the programm occurred. More... | |
class | ParallelIndexSet |
Manager class for the mapping between local indices and globally unique indices. More... | |
class | ParallelLocalIndex |
An index present on the local process with an additional attribute flag. More... | |
class | ParameterTree |
Hierarchical structure of string parameters. More... | |
class | ParameterTreeParser |
Parsers to set up a ParameterTree from various input sources. More... | |
class | ParameterTreeParserError |
report parser error while reading ParameterTree More... | |
class | ParSSOR |
A parallel SSOR preconditioner. More... | |
struct | PartitionSet |
A set of PartitionType values. More... | |
class | PersistentContainer |
A class for storing data during an adaptation cycle. More... | |
class | PersistentContainer< const Grid, T > |
refer PersistentContainer<const Grid> to the implementation of the mutable grid More... | |
class | PersistentContainer< YaspGrid< dim, CoordCont >, T > |
Specialization of the PersistentContainer for YaspGrid. More... | |
class | PersistentContainerInterface |
Persistent storage of data on all entities of a grid. More... | |
class | PersistentContainerMap |
map-based implementation of the PersistentContainer More... | |
class | PersistentContainerVector |
vector-based implementation of the PersistentContainer More... | |
struct | PointerPairDeletor |
Deletes all objects pointed to in a std::tuple of pointers. More... | |
class | Pool |
A memory pool of objects. More... | |
class | PoolAllocator |
An allocator managing a pool of objects for reuse. More... | |
struct | Power |
Compute power for a run-time mantissa and a compile-time integer exponent. More... | |
class | PowerIteration_Algorithms |
A class template for performing some iterative eigenvalue algorithms based on power iteration. More... | |
class | Preconditioner |
Base class for matrix free definition of preconditioners. More... | |
struct | PriorityTag |
Helper class for tagging priorities. More... | |
struct | PriorityTag< 0 > |
Helper class for tagging priorities. More... | |
class | PrismQuadraturePoints |
class | PrismQuadraturePoints< 3 > |
struct | PrismQuadraturePointsSingleton |
Singleton holding the Prism Quadrature points. More... | |
struct | PrismQuadraturePointsSingleton< 3 > |
Singleton holding the Prism Quadrature points. More... | |
class | PrismQuadratureRule |
Quadrature rules for prisms. More... | |
class | PrismQuadratureRule< ct, 3 > |
Quadrature rules for prisms. More... | |
struct | PromotionTraits |
Compute type of the result of an arithmetic operation involving two different number types. More... | |
struct | PropertyMapTypeSelector |
Selector for the property map type. More... | |
struct | PushBackTuple |
Helper template to append a type to a std::tuple. More... | |
struct | PushFrontTuple |
Helper template to prepend a type to a std::tuple. More... | |
class | QuadratureOrderOutOfRange |
Exception thrown if a desired QuadratureRule is not available, because the requested order is to high. More... | |
class | QuadraturePoint |
Single evaluation point in a quadrature rule. More... | |
class | QuadratureRule |
Abstract base class for quadrature rules. More... | |
class | QuadratureRuleFactory |
Factory class for creation of quadrature rules, depending on GeometryType, order and QuadratureType. More... | |
class | QuadratureRules |
A container for all quadrature rules of dimension dim More... | |
class | RandomAccessIteratorFacade |
Base class for stl conformant forward iterators. More... | |
class | RangeError |
Default exception class for range errors. More... | |
class | RawStream |
write out data in binary More... | |
struct | ReadablePropertyMapTag |
Tag for the category of readable property maps. More... | |
struct | ReadWritePropertyMapTag |
Tag for the category of readable and writable property maps. More... | |
struct | ReduceTuple |
Apply reduce with meta binary function to template. More... | |
struct | ReduceTuple< F, Tuple, Seed, 0 > |
Apply reduce with meta binary function to template. More... | |
class | ReferenceElement |
This class provides access to geometric and topological properties of a reference element. More... | |
struct | ReferenceElements |
Class providing access to the singletons of the reference elements. More... | |
class | RemoteIndex |
Information about an index residing on another processor. More... | |
class | RemoteIndexListModifier |
Modifier for adding and/or deleting remote indices from the remote index list. More... | |
class | RemoteIndices |
The indices present on remote processes. More... | |
class | ReservedVector |
A Vector class with statically reserved memory. More... | |
class | RestartedGMResSolver |
implements the Generalized Minimal Residual (GMRes) method More... | |
class | Richardson |
Richardson preconditioner. More... | |
class | ScalarProduct |
Base class for scalar product and norm computation. More... | |
struct | ScalarProductChooser |
Choose the approriate scalar product for a solver category. More... | |
class | ScaledIdentityMatrix |
A multiple of the identity matrix of static size. More... | |
class | ScalingLinearOperator |
A linear operator scaling vectors by a scalar value. The scalar value can be changed as it is given in a form decomposed into an immutable and a mutable part. More... | |
class | Selection |
A cached selection of indices. More... | |
class | SelectionIterator |
A const iterator over an uncached selection. More... | |
class | SeqGS |
Sequential Gauss Seidel preconditioner. More... | |
class | SeqILU0 |
Sequential ILU0 preconditioner. More... | |
class | SeqILUn |
Sequential ILU(n) preconditioner. More... | |
class | SeqJac |
The sequential jacobian preconditioner. More... | |
class | SeqOverlappingSchwarz |
Sequential overlapping Schwarz preconditioner. More... | |
struct | SeqOverlappingSchwarzApplier |
Helper template meta program for application of overlapping schwarz. More... | |
struct | SeqOverlappingSchwarzDomainSize |
class | SeqScalarProduct |
Default implementation for the scalar case. More... | |
class | SeqSOR |
Sequential SOR preconditioner. More... | |
class | SeqSSOR |
Sequential SSOR preconditioner. More... | |
class | SingleCodimSingleGeomTypeMapper |
Implementation class for a single codim and single geometry type mapper. More... | |
class | Singleton |
An adapter to turn a class into a singleton. More... | |
class | SizeCache |
organizes the caching of sizes for one grid and one GeometryType More... | |
struct | SizeOf |
Compute size of variadic type list. More... | |
struct | SizeOne |
Flag for marking indexed data structures where data at each index is of the same size. More... | |
class | SLList |
A single linked list. More... | |
class | SLListConstIterator |
A constant iterator for the SLList. More... | |
class | SLListIterator |
A mutable iterator for the SLList. More... | |
class | SLListModifyIterator |
A mutable iterator for the SLList. More... | |
class | SolverAbort |
Thrown when a solver aborts due to some problem. More... | |
struct | SolverCategory |
Categories for the solvers. More... | |
class | 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). More... | |
class | SPQR |
Use the SPQR package to directly solve linear systems – empty default class. More... | |
class | SPQR< BCRSMatrix< FieldMatrix< T, n, m >, A > > |
The SPQR direct sparse solver for matrices of type BCRSMatrix. More... | |
struct | StandardMathematicalConstants |
Standard implementation of MathematicalConstants. More... | |
class | StarCDReader |
File reader for the Star-CD format. More... | |
struct | StaticPower |
Calculates m^p at compile time. More... | |
struct | StaticPower< m, 0 > |
end of recursion via specialization More... | |
class | StaticRefinement |
Wrap each Refinement implementation to get a consistent interface. More... | |
class | StructuredGridFactory |
Construct structured cube and simplex grids in unstructured grid managers. More... | |
class | StructuredGridFactory< YaspGrid< dim, EquidistantCoordinates< ctype, dim > > > |
Specialization of the StructuredGridFactory for YaspGrid. More... | |
class | StructuredGridFactory< YaspGrid< dim, EquidistantOffsetCoordinates< ctype, dim > > > |
Specialization of the StructuredGridFactory for YaspGrid<EquidistantOffsetCoordinates> More... | |
class | SubsamplingVTKSequenceWriter |
Writer for the ouput of grid functions in the vtk format. More... | |
class | SubsamplingVTKWriter |
Writer for the output of subsampled grid functions in the vtk format. More... | |
class | SuperLU< BCRSMatrix< FieldMatrix< T, n, m >, A > > |
SuperLu Solver. More... | |
struct | SuperLUMatrix |
Utility class for converting an ISTL Matrix into a SuperLU Matrix. More... | |
class | SuperLUMatrix< BCRSMatrix< FieldMatrix< B, n, m >, TA > > |
Converter for BCRSMatrix to SuperLU Matrix. More... | |
struct | SymmetricMultiplicativeSchwarzMode |
Tag that tells the Schwarz method to be multiplicative and symmetric. More... | |
class | SystemError |
Default exception class for OS errors. More... | |
class | TensorGridFactory |
A factory class for conveniently creating tensorproduct grids. More... | |
class | TensorProductCoordinates |
Coordinate container for a tensor product YaspGrid. More... | |
class | Timer |
A simple stop watch. More... | |
class | TimerError |
Exception thrown by the Timer class More... | |
struct | TopologyFactory |
Provide a factory over the generic topologies. More... | |
struct | TopologySingletonFactory |
A wrapper for a TopologyFactory providing singleton storage. Same usage as TopologyFactory but with empty release method an internal storage. More... | |
class | Torus |
class | TransformTupleFunctor |
struct | TransposedMatMultMatResult |
Helper TMP to get the result type of a sparse matrix matrix multiplication ( \(C=A*B\)) More... | |
class | TupleVector |
A class augmenting std::tuple by element access via operator[]. More... | |
struct | TypeList |
A simple type list. More... | |
struct | TypeListElement< i, TypeList< T... > > |
Get element of TypeList. More... | |
struct | TypeListSize< TypeList< T... > > |
Get size of TypeList. More... | |
class | UGGrid |
Front-end for the grid manager of the finite element toolbox UG. More... | |
class | UMFPack |
Use the UMFPack package to directly solve linear systems – empty default class. More... | |
class | UMFPack< BCRSMatrix< FieldMatrix< T, n, m >, A > > |
The UMFPack direct sparse solver for matrices of type BCRSMatrix. More... | |
class | UncachedSelection |
An uncached selection of indices. More... | |
class | UniversalMapper |
Implements a mapper for an arbitrary subset of entities. More... | |
class | VariableBlockVector |
A Vector of blocks with different blocksizes. More... | |
struct | VariableSize |
Flag for marking indexed data structures where the data at each index may be a variable multiple of another type. More... | |
class | VariableSizeCommunicator |
A buffered communicator where the amount of data sent does not have to be known a priori. More... | |
class | VertexOrderByIdFactory |
Factory for GeneralVertexOrder objects using an IdSet. More... | |
class | VirtualFunction |
Virtual base class template for function classes. More... | |
class | VirtualRefinement |
VirtualRefinement base class. More... | |
class | VTKFunction |
A base class for grid functions with any return type and dimension. More... | |
class | VTKSequenceWriter |
Writer for the ouput of grid functions in the vtk format. More... | |
class | VTKSequenceWriterBase |
Base class to write pvd-files which contains a list of all collected vtk-files. More... | |
class | VTKWriter |
Writer for the ouput of grid functions in the vtk format. More... | |
struct | WritablePropertyMapTag |
Tag for the category of writable property maps. More... | |
class | YaspEntityPointer |
A pointer to a YaspGrid::Entity. More... | |
class | YaspEntitySeed |
Describes the minimal information necessary to create a fully functional YaspEntity. More... | |
class | YaspFixedSizePartitioner |
Implement partitioner that gets a fixed partitioning from an array If the given partitioning doesn't match the number of processors, the grid should be distributed to, an exception is thrown. More... | |
class | YaspGeometry |
The general version that handles all codimensions but 0 and dim. More... | |
class | YaspGeometry< 0, cdim, GridImp > |
specialization for dim=0, this is a vertex More... | |
class | YaspGeometry< mydim, mydim, GridImp > |
specialize for dim=dimworld, i.e. a volume element More... | |
class | YaspGlobalIdSet |
persistent, globally unique Ids More... | |
class | YaspGrid |
[ provides Dune::Grid ] More... | |
class | YaspHierarchicIterator |
YaspHierarchicIterator enables iteration over son entities of codim 0. More... | |
class | YaspIndexSet |
Implementation of Level- and LeafIndexSets for YaspGrid. More... | |
class | YaspIntersection |
YaspIntersection provides data about intersection with neighboring codim 0 entities. More... | |
class | YaspIntersectionIterator |
YaspIntersectionIterator enables iteration over intersections with neighboring codim 0 entities. More... | |
class | YaspLevelIterator |
Iterates over entities of one grid level. More... | |
class | YaspPersistentContainerIndex |
implement a consecutive index for all entities of given codim of a YaspGrid More... | |
class | YGrid |
implements a collection of YGridComponents which form a codimension Entities of given codimension c need to be represented by d choose c YgridComponents. All entities in one such component share the same set of spanning unit vectors. A YGrid is used to iterate over the entire set of components the codimension consists of. It doesn't hold any data, but instead holds an iterator range into an array of components (which is owned by YGridLevel). More... | |
class | YGridComponent |
class | YGridList |
implements a collection of multiple std::deque<Intersection> Intersections with neighboring processors are stored as std::deque<Intersection>. Eachsuch intersection only holds one YGridComponent. To do all communication associated with one codimension, multiple such deques have to be concatenated. YGridList manges this concatenation. As for YGrids, YGridList doesn't hold any data, but an iterator range into a data array owned by YGridLevel. More... | |
class | YLoadBalance |
a base class for the yaspgrid partitioning strategy The name might be irritating. It will probably change to YaspPartitionerBase in a 3.0 release. More... | |
class | YLoadBalanceDefault |
Implement the default load balance strategy of yaspgrid. More... | |
class | YLoadBalancePowerD |
Implement yaspgrid load balance strategy for P=x^{dim} processors. More... | |
Typedefs | |
typedef unsigned int | DebugLevel |
Type for debug levels. More... | |
template<std::size_t i> | |
using | index_constant = std::integral_constant< std::size_t, i > |
An index constant with value i. More... | |
typedef DebugStream< VERY_VERBOSE_DEBUG_LEVEL, MINIMAL_DEBUG_LEVEL > | DVVerbType |
Type of very verbose debug stream. More... | |
typedef DebugStream< VERBOSE_DEBUG_LEVEL, MINIMAL_DEBUG_LEVEL > | DVerbType |
Type of more verbose debug stream. More... | |
typedef DebugStream< INFO_DEBUG_LEVEL, MINIMAL_DEBUG_LEVEL > | DInfoType |
Type of debug stream with info level. More... | |
typedef DebugStream< WARN_DEBUG_LEVEL, MINIMAL_DEBUG_LEVEL > | DWarnType |
Type of debug stream with warn level. More... | |
typedef DebugStream< GRAVE_DEBUG_LEVEL, MINIMAL_DEBUG_LEVEL > | DGraveType |
Type of debug stream for fatal errors. | |
typedef DebugStream< 1 > | DErrType |
The type of the stream used for error messages. | |
template<std::size_t i, class T > | |
using | TypeListEntry_t = typename TypeListElement< i, T >::type |
Shortcut for TypeListElement<i, T>::type;. | |
template<class... Types> | |
using | void_t = typename detail::voider< Types... >::type |
Is void for all valid input types (see N3911). The workhorse for C++11 SFINAE-techniques. | |
template<class Type > | |
using | field_t = typename FieldTraits< Type >::field_type |
Convenient access to FieldTraits<Type>::field_type. | |
template<class Type > | |
using | real_t = typename FieldTraits< Type >::real_type |
Convenient access to FieldTraits<Type>::real_type. | |
template<class This , class... T> | |
using | disableCopyMove = typename std::enable_if<(not(std::is_same< This, typename std::tuple_element< 0, std::tuple< typename std::decay< T >::type... > >::type >::value) and not(std::is_base_of< This, typename std::tuple_element< 0, std::tuple< typename std::decay< T >::type... > >::type >::value)), int >::type |
Helper to disable constructor as copy and move constructor. More... | |
template<int mydim, int coorddim, class GridImp > | |
using | OneDGridGeometry = AxisAlignedCubeGeometry< double, mydim, coorddim > |
The type used to for OneDGrid geometries. More... | |
Functions | |
template<typename T , std::size_t n> | |
std::array< T, n > | fill_array (const T &t) |
Create an array and fill it with copies of the provided value. More... | |
template<class T > | |
std::string | className () |
Provide the demangled class name of a type T as a string. | |
template<class T > | |
std::string | className (T &) |
Provide the demangled class name of a given object as a string. | |
template<class C , class... T> | |
constexpr auto | models () |
Check if concept is modeled by given types. More... | |
template<typename T1 , typename T2 > | |
const T1 | cond (bool b, const T1 &v1, const T2 &v2) |
conditional evaluate More... | |
template<typename MAT > | |
std::ostream & | operator<< (std::ostream &s, const DenseMatrix< MAT > &a) |
Sends the matrix to an output stream. | |
template<class A , class B > | |
auto | dot (const A &a, const B &b) -> typename std::enable_if<!IsVector< A >::value &&!std::is_same< typename FieldTraits< A >::field_type, typename FieldTraits< A >::real_type > ::value, decltype(conj(a) *b)>::type |
computes the dot product for fundamental data types according to Petsc's VectDot function: dot(a,b) := std::conj(a)*b More... | |
template<class A , class B > | |
auto | dotT (const A &a, const B &b) -> decltype(a *b) |
Computes an indefinite vector dot product for fundamental data types according to Petsc's VectTDot function: dotT(a,b) := a*b. More... | |
template<typename T > | |
void | hash_combine (std::size_t &seed, const T &arg) |
Calculates the hash value of arg and combines it in-place with seed. More... | |
template<typename It > | |
std::size_t | hash_range (It first, It last) |
Hashes all elements in the range [first,last) and returns the combined hash. More... | |
template<typename It > | |
void | hash_range (std::size_t &seed, It first, It last) |
Hashes all elements in the range [first,last) and combines the hashes in-place with seed. More... | |
std::ostream & | operator<< (std::ostream &s, const Indent &indent) |
write indentation to a stream | |
template<class T1 , class V1 , class R1 , class D , class T2 , class V2 , class R2 > | |
EnableIfInterOperable< T1, T2, bool >::type | operator== (const ForwardIteratorFacade< T1, V1, R1, D > &lhs, const ForwardIteratorFacade< T2, V2, R2, D > &rhs) |
Checks for equality. More... | |
template<class T1 , class V1 , class R1 , class D , class T2 , class V2 , class R2 > | |
EnableIfInterOperable< T1, T2, bool >::type | operator!= (const ForwardIteratorFacade< T1, V1, R1, D > &lhs, const ForwardIteratorFacade< T2, V2, R2, D > &rhs) |
Checks for inequality. More... | |
template<class T1 , class V1 , class R1 , class D , class T2 , class V2 , class R2 > | |
std::enable_if< std::is_convertible< T2, T1 >::value, bool >::type | operator== (const BidirectionalIteratorFacade< T1, V1, R1, D > &lhs, const BidirectionalIteratorFacade< T2, V2, R2, D > &rhs) |
Checks for equality. More... | |
template<class T1 , class V1 , class R1 , class D , class T2 , class V2 , class R2 > | |
std::enable_if< std::is_convertible< T1, T2 >::value &&!std::is_convertible< T2, T1 >::value, bool >::type | operator== (const BidirectionalIteratorFacade< T1, V1, R1, D > &lhs, const BidirectionalIteratorFacade< T2, V2, R2, D > &rhs) |
Checks for equality. More... | |
template<class T1 , class V1 , class R1 , class D , class T2 , class V2 , class R2 > | |
EnableIfInterOperable< T1, T2, bool >::type | operator!= (const BidirectionalIteratorFacade< T1, V1, R1, D > &lhs, const BidirectionalIteratorFacade< T2, V2, R2, D > &rhs) |
Checks for inequality. More... | |
template<class T1 , class V1 , class R1 , class D , class T2 , class V2 , class R2 > | |
EnableIfInterOperable< T1, T2, bool >::type | operator== (const RandomAccessIteratorFacade< T1, V1, R1, D > &lhs, const RandomAccessIteratorFacade< T2, V2, R2, D > &rhs) |
Checks for equality. More... | |
template<class T1 , class V1 , class R1 , class D , class T2 , class V2 , class R2 > | |
EnableIfInterOperable< T1, T2, bool >::type | operator!= (const RandomAccessIteratorFacade< T1, V1, R1, D > &lhs, const RandomAccessIteratorFacade< T2, V2, R2, D > &rhs) |
Checks for inequality. More... | |
template<class T1 , class V1 , class R1 , class D , class T2 , class V2 , class R2 > | |
EnableIfInterOperable< T1, T2, bool >::type | operator< (const RandomAccessIteratorFacade< T1, V1, R1, D > &lhs, const RandomAccessIteratorFacade< T2, V2, R2, D > &rhs) |
Comparison operator. More... | |
template<class T1 , class V1 , class R1 , class D , class T2 , class V2 , class R2 > | |
EnableIfInterOperable< T1, T2, bool >::type | operator<= (const RandomAccessIteratorFacade< T1, V1, R1, D > &lhs, const RandomAccessIteratorFacade< T2, V2, R2, D > &rhs) |
Comparison operator. More... | |
template<class T1 , class V1 , class R1 , class D , class T2 , class V2 , class R2 > | |
EnableIfInterOperable< T1, T2, bool >::type | operator> (const RandomAccessIteratorFacade< T1, V1, R1, D > &lhs, const RandomAccessIteratorFacade< T2, V2, R2, D > &rhs) |
Comparison operator. More... | |
template<class T1 , class V1 , class R1 , class D , class T2 , class V2 , class R2 > | |
EnableIfInterOperable< T1, T2, bool >::type | operator>= (const RandomAccessIteratorFacade< T1, V1, R1, D > &lhs, const RandomAccessIteratorFacade< T2, V2, R2, D > &rhs) |
Comparison operator. More... | |
template<class T1 , class V1 , class R1 , class D , class T2 , class V2 , class R2 > | |
EnableIfInterOperable< T1, T2, D >::type | operator- (const RandomAccessIteratorFacade< T1, V1, R1, D > &lhs, const RandomAccessIteratorFacade< T2, V2, R2, D > &rhs) |
Calculates the difference between two pointers. More... | |
template<class K > | |
K | conjugateComplex (const K &x) |
compute conjugate complex of x | |
template<class T > | |
int | sign (const T &val) |
Return the sign of the value. | |
template<class... F> | |
auto | overload (F &&... f) |
Create an overload set. More... | |
template<class... F> | |
auto | orderedOverload (F &&... f) |
Create an ordered overload set. More... | |
template<class TG , class TL > | |
std::ostream & | operator<< (std::ostream &os, const IndexPair< TG, TL > &pair) |
Print an index pair. More... | |
template<class TG , class TL , int N> | |
std::ostream & | operator<< (std::ostream &os, const ParallelIndexSet< TG, TL, N > &indexSet) |
Print an index set. More... | |
template<typename T , typename A , typename A1 > | |
void | storeGlobalIndicesOfRemoteIndices (std::map< int, SLList< std::pair< typename T::GlobalIndex, typename T::LocalIndex::Attribute >, A > > &globalMap, const RemoteIndices< T, A1 > &remoteIndices) |
Stores the corresponding global indices of the remote index information. More... | |
template<typename T , typename A , typename A1 > | |
void | repairLocalIndexPointers (std::map< int, SLList< std::pair< typename T::GlobalIndex, typename T::LocalIndex::Attribute >, A > > &globalMap, RemoteIndices< T, A1 > &remoteIndices, const T &indexSet) |
Repair the pointers to the local indices in the remote indices. More... | |
template<class T > | |
std::ostream & | operator<< (std::ostream &os, const ParallelLocalIndex< T > &index) |
Print the local index to a stream. More... | |
std::string | concatPaths (const std::string &base, const std::string &p) |
concatenate two paths More... | |
std::string | processPath (const std::string &p) |
sanitize a path for further processing More... | |
bool | pathIndicatesDirectory (const std::string &p) |
check whether the given path indicates that it is a directory More... | |
std::string | prettyPath (const std::string &p, bool isDirectory) |
pretty print path More... | |
std::string | prettyPath (const std::string &p) |
pretty print path More... | |
std::string | relativePath (const std::string &newbase, const std::string &p) |
compute a relative path between two paths More... | |
template<typename T > | |
pointer_or_proxy_holder | handle_proxy_member_access (T &&t) |
Transparent support for providing member access to both lvalues and rvalues (temporary proxies). More... | |
template<typename T , typename std::enable_if< is_range< T >::value, int >::type = 0> | |
T::value_type | max_value (const T &v) |
compute the maximum value over a range More... | |
template<typename T , typename std::enable_if< is_range< T >::value, int >::type = 0> | |
T::value_type | min_value (const T &v) |
compute the minimum value over a range More... | |
template<typename T , typename std::enable_if< is_range< T >::value, int >::type = 0> | |
bool | any_true (const T &v) |
similar to std::bitset<N>::any() return true, if any entries is true More... | |
template<typename T , typename std::enable_if< is_range< T >::value, int >::type = 0> | |
bool | all_true (const T &v) |
similar to std::bitset<N>::all() return true, if any entries is true More... | |
template<typename T > | |
shared_ptr< T > | stackobject_to_shared_ptr (T &t) |
Create a shared_ptr for a stack-allocated object. More... | |
template<typename T , typename T2 > | |
shared_ptr< T2 > | stackobject_to_shared_ptr (T &t) |
Create a shared_ptr to a base class for a stack-allocated object. More... | |
template<class T > | |
auto | wrap_or_move (T &&t) |
Capture R-value reference to shared_ptr. More... | |
template<class T > | |
auto | wrap_or_move (T &t) |
Capture L-value reference to shared_ptr. More... | |
void | assertCallOnce (const char *file=nullptr, int line=-1, const char *function=nullptr) |
Make sure call_once() works and provide a helpful error message otherwise. More... | |
template<typename Stream , typename... Ts> | |
Stream & | operator<< (Stream &stream, const std::tuple< Ts... > &t) |
Print a std::tuple. | |
template<typename Stream , typename... Ts> | |
Stream & | operator>> (Stream &stream, std::tuple< Ts... > &t) |
Read a std::tuple. | |
template<typename Stream , typename T , std::size_t N> | |
Stream & | operator<< (Stream &stream, const std::array< T, N > &a) |
Print a std::array. | |
template<typename C > | |
bool | hasPrefix (const C &c, const char *prefix) |
Check whether a character container has a given prefix. More... | |
template<typename C > | |
bool | hasSuffix (const C &c, const char *suffix) |
Check whether a character container has a given suffix. More... | |
template<class... T> | |
static std::string | formatString (const std::string &s, const T &... args) |
Format values according to printf format string. More... | |
template<class Tuple , class Functor > | |
auto | genericTransformTuple (Tuple &&t, Functor &&f) -> decltype(genericTransformTupleBackend(t, f)) |
template<template< class > class TypeEvaluator, class Tuple , class... Args> | |
auto | transformTuple (Tuple &&orig, Args &&... args) -> decltype(genericTransformTuple(orig, makeTransformTupleFunctor< TypeEvaluator >(args...))) |
template<typename T > | |
struct | DUNE_DEPRECATED_MSG ("Use <type_traits> instead!") ConstantVolatileTraits |
Determines whether a type is const or volatile and provides the unqualified types. More... | |
template<typename T > | |
struct | DUNE_DEPRECATED_MSG ("Use std::is_volatile instead!") IsVolatile |
Tests whether a type is volatile. More... | |
template<typename T > | |
struct | DUNE_DEPRECATED_MSG ("Use std::is_const instead!") IsConst |
Tests whether a type is constant. More... | |
template<class From , class To > | |
struct | DUNE_DEPRECATED_MSG ("Use std::is_convertible/std::is_same instead!") Conversion |
Checks whether a type is convertible to another. More... | |
template<class Base , class Derived > | |
struct | DUNE_DEPRECATED_MSG ("Use std::is_base_of instead!") IsBaseOf |
Checks whether a type is derived from another. More... | |
template<class K , class A > | |
std::ostream & | operator<< (std::ostream &s, const BlockVector< K, A > &v) |
Send BlockVector to an output stream. | |
template<class M , class X , class Y > | |
void | bltsolve (const M &A, X &v, const Y &d) |
block lower triangular solve | |
template<class M , class X , class Y , class K > | |
void | bltsolve (const M &A, X &v, const Y &d, const K &w) |
relaxed block lower triangular solve | |
template<class M , class X , class Y > | |
void | ubltsolve (const M &A, X &v, const Y &d) |
unit block lower triangular solve | |
template<class M , class X , class Y , class K > | |
void | ubltsolve (const M &A, X &v, const Y &d, const K &w) |
relaxed unit block lower triangular solve | |
template<class M , class X , class Y > | |
void | butsolve (const M &A, X &v, const Y &d) |
block upper triangular solve | |
template<class M , class X , class Y , class K > | |
void | butsolve (const M &A, X &v, const Y &d, const K &w) |
relaxed block upper triangular solve | |
template<class M , class X , class Y > | |
void | ubutsolve (const M &A, X &v, const Y &d) |
unit block upper triangular solve | |
template<class M , class X , class Y , class K > | |
void | ubutsolve (const M &A, X &v, const Y &d, const K &w) |
relaxed unit block upper triangular solve | |
template<class M , class X , class Y , int l> | |
void | bltsolve (const M &A, X &v, const Y &d, BL< l >) |
block lower triangular solve | |
template<class M , class X , class Y , class K , int l> | |
void | bltsolve (const M &A, X &v, const Y &d, const K &w, BL< l >) |
relaxed block lower triangular solve | |
template<class M , class X , class Y , int l> | |
void | ubltsolve (const M &A, X &v, const Y &d, BL< l >) |
unit block lower triangular solve | |
template<class M , class X , class Y , class K , int l> | |
void | ubltsolve (const M &A, X &v, const Y &d, const K &w, BL< l >) |
relaxed unit block lower triangular solve | |
template<class M , class X , class Y , int l> | |
void | butsolve (const M &A, X &v, const Y &d, BL< l > bl) |
block upper triangular solve | |
template<class M , class X , class Y , class K , int l> | |
void | butsolve (const M &A, X &v, const Y &d, const K &w, BL< l > bl) |
relaxed block upper triangular solve | |
template<class M , class X , class Y , int l> | |
void | ubutsolve (const M &A, X &v, const Y &d, BL< l > bl) |
unit block upper triangular solve | |
template<class M , class X , class Y , class K , int l> | |
void | ubutsolve (const M &A, X &v, const Y &d, const K &w, BL< l > bl) |
relaxed unit block upper triangular solve | |
template<class M , class X , class Y > | |
void | bdsolve (const M &A, X &v, const Y &d) |
block diagonal solve, no relaxation | |
template<class M , class X , class Y , class K > | |
void | bdsolve (const M &A, X &v, const Y &d, const K &w) |
block diagonal solve, with relaxation | |
template<class M , class X , class Y , int l> | |
void | bdsolve (const M &A, X &v, const Y &d, BL< l >) |
block diagonal solve, no relaxation | |
template<class M , class X , class Y , class K , int l> | |
void | bdsolve (const M &A, X &v, const Y &d, const K &w, BL< l >) |
block diagonal solve, with relaxation | |
template<class M , class X , class Y , class K > | |
void | dbgs (const M &A, X &x, const Y &b, const K &w) |
GS step. | |
template<class M , class X , class Y , class K , int l> | |
void | dbgs (const M &A, X &x, const Y &b, const K &w, BL< l >) |
GS step. | |
template<class M , class X , class Y , class K > | |
void | bsorf (const M &A, X &x, const Y &b, const K &w) |
SOR step. | |
template<class M , class X , class Y , class K , int l> | |
void | bsorf (const M &A, X &x, const Y &b, const K &w, BL< l >) |
SOR step. | |
template<class M , class X , class Y , class K > | |
void | bsorb (const M &A, X &x, const Y &b, const K &w) |
SSOR step. | |
template<class M , class X , class Y , class K , int l> | |
void | bsorb (const M &A, X &x, const Y &b, const K &w, BL< l >) |
Backward SOR step. | |
template<class M , class X , class Y , class K > | |
void | dbjac (const M &A, X &x, const Y &b, const K &w) |
Jacobi step. | |
template<class M , class X , class Y , class K , int l> | |
void | dbjac (const M &A, X &x, const Y &b, const K &w, BL< l >) |
Jacobi step. | |
template<class M > | |
void | bilu0_decomposition (M &A) |
compute ILU decomposition of A. A is overwritten by its decomposition | |
template<class M , class X , class Y > | |
void | bilu_backsolve (const M &A, X &v, const Y &d) |
LU backsolve with stored inverse. | |
template<class M > | |
void | bilu_decomposition (const M &A, int n, M &ILU) |
template<class V > | |
void | recursive_printvector (std::ostream &s, const V &v, std::string rowtext, int &counter, int columns, int width, int precision) |
Recursively print all the blocks. More... | |
template<class K , int n> | |
void | recursive_printvector (std::ostream &s, const FieldVector< K, n > &v, std::string rowtext, int &counter, int columns, int width, int precision) |
Recursively print all the blocks – specialization for FieldVector. More... | |
template<class V > | |
void | printvector (std::ostream &s, const V &v, std::string title, std::string rowtext, int columns=1, int width=10, int precision=2) |
Print an ISTL vector. More... | |
void | fill_row (std::ostream &s, int m, int width, int precision) |
Print a row of zeros for a non-existing block. More... | |
template<class M > | |
void | print_row (std::ostream &s, const M &A, typename M::size_type I, typename M::size_type J, typename M::size_type therow, int width, int precision) |
Print one row of a matrix. More... | |
template<class K , int n, int m> | |
void | print_row (std::ostream &s, const FieldMatrix< K, n, m > &A, typename FieldMatrix< K, n, m >::size_type I, typename FieldMatrix< K, n, m >::size_type J, typename FieldMatrix< K, n, m >::size_type therow, int width, int precision) |
Print one row of a matrix, specialization for FieldMatrix. More... | |
template<class K > | |
void | print_row (std::ostream &s, const FieldMatrix< K, 1, 1 > &A, typename FieldMatrix< K, 1, 1 >::size_type I, typename FieldMatrix< K, 1, 1 >::size_type J, typename FieldMatrix< K, 1, 1 >::size_type therow, int width, int precision) |
Print one row of a matrix, specialization for FieldMatrix<K,1,1> More... | |
template<class M > | |
void | printmatrix (std::ostream &s, const M &A, std::string title, std::string rowtext, int width=10, int precision=2) |
Print a generic block matrix. More... | |
template<class B , int n, int m, class A > | |
void | printSparseMatrix (std::ostream &s, const BCRSMatrix< FieldMatrix< B, n, m >, A > &mat, std::string title, std::string rowtext, int width=3, int precision=2) |
Prints a BCRSMatrix with fixed sized blocks. More... | |
template<class FieldType , int dim> | |
void | writeMatrixToMatlabHelper (const ScaledIdentityMatrix< FieldType, dim > &matrix, int rowOffset, int colOffset, std::ostream &s) |
Helper method for the writeMatrixToMatlab routine. More... | |
template<class FieldType , int dim> | |
void | writeMatrixToMatlabHelper (const DiagonalMatrix< FieldType, dim > &matrix, int rowOffset, int colOffset, std::ostream &s) |
Helper method for the writeMatrixToMatlab routine. More... | |
template<class FieldType , int rows, int cols> | |
void | writeMatrixToMatlabHelper (const FieldMatrix< FieldType, rows, cols > &matrix, int rowOffset, int colOffset, std::ostream &s) |
Helper method for the writeMatrixToMatlab routine. More... | |
template<class FieldType > | |
void | writeMatrixToMatlabHelper (const DynamicMatrix< FieldType > &matrix, int rowOffset, int colOffset, std::ostream &s) |
Helper method for the writeMatrixToMatlab routine. More... | |
template<class MatrixType > | |
void | writeMatrixToMatlabHelper (const MatrixType &matrix, int externalRowOffset, int externalColOffset, std::ostream &s) |
Helper method for the writeMatrixToMatlab routine. More... | |
template<class MatrixType > | |
void | writeMatrixToMatlab (const MatrixType &matrix, const std::string &filename, int outputPrecision=18) |
Writes sparse matrix in a Matlab-readable format. More... | |
template<class VectorType > | |
void | writeVectorToMatlab (const VectorType &vector, const std::string &filename, int outputPrecision=18) |
Writes vectors in a Matlab-readable format. More... | |
template<typename T , typename A , int entries> | |
void | readMatrixMarket (Dune::BlockVector< Dune::FieldVector< T, entries >, A > &vector, std::istream &istr) |
Reads a BlockVector from a matrix market file. More... | |
template<typename T , typename A , int brows, int bcols> | |
void | readMatrixMarket (Dune::BCRSMatrix< Dune::FieldMatrix< T, brows, bcols >, A > &matrix, std::istream &istr) |
Reads a sparse matrix from a matrix market file. More... | |
template<typename M > | |
void | writeMatrixMarket (const M &matrix, std::ostream &ostr) |
writes a ISTL matrix or vector to a stream in matrix market format. | |
template<typename M > | |
void | storeMatrixMarket (const M &matrix, std::string filename) |
Stores a parallel matrix/vector in matrix market format in a file. More... | |
template<typename M , typename G , typename L > | |
void | storeMatrixMarket (const M &matrix, std::string filename, const OwnerOverlapCopyCommunication< G, L > &comm, bool storeIndices=true) |
Stores a parallel matrix/vector in matrix market format in a file. More... | |
template<typename M , typename G , typename L > | |
void | loadMatrixMarket (M &matrix, const std::string &filename, OwnerOverlapCopyCommunication< G, L > &comm, bool readIndices=true) |
Load a parallel matrix/vector stored in matrix market format. More... | |
template<typename M > | |
void | loadMatrixMarket (M &matrix, const std::string &filename) |
Load a matrix/vector stored in matrix market format. More... | |
template<class T , class A , class A1 , class A2 , int n, int m, int k> | |
void | matMultTransposeMat (BCRSMatrix< FieldMatrix< T, n, k >, A > &res, const BCRSMatrix< FieldMatrix< T, n, m >, A1 > &mat, const BCRSMatrix< FieldMatrix< T, k, m >, A2 > &matt, bool tryHard=false) |
Calculate product of a sparse matrix with a transposed sparse matrices ( \(C=A*B^T\)). More... | |
template<class T , class A , class A1 , class A2 , int n, int m, int k> | |
void | matMultMat (BCRSMatrix< FieldMatrix< T, n, m >, A > &res, const BCRSMatrix< FieldMatrix< T, n, k >, A1 > &mat, const BCRSMatrix< FieldMatrix< T, k, m >, A2 > &matt, bool tryHard=false) |
Calculate product of two sparse matrices ( \(C=A*B\)). More... | |
template<class T , class A , class A1 , class A2 , int n, int m, int k> | |
void | transposeMatMultMat (BCRSMatrix< FieldMatrix< T, n, m >, A > &res, const BCRSMatrix< FieldMatrix< T, k, n >, A1 > &mat, const BCRSMatrix< FieldMatrix< T, k, m >, A2 > &matt, bool tryHard=false) |
Calculate product of a transposed sparse matrix with another sparse matrices ( \(C=A^T*B\)). More... | |
template<typename M , typename C > | |
void | redistributeMatrix (M &origMatrix, M &newMatrix, C &origComm, C &newComm, RedistributeInformation< C > &ri) |
Redistribute a matrix according to given domain decompositions. More... | |
template<class M > | |
int | countNonZeros (const M &matrix) |
Get the number of nonzero fields in the matrix. More... | |
template<typename T1 , typename... Args> | |
std::ostream & | operator<< (std::ostream &s, const MultiTypeBlockMatrix< T1, Args... > &m) |
<< operator for a MultiTypeBlockMatrix More... | |
template<typename... Args> | |
std::ostream & | operator<< (std::ostream &s, const MultiTypeBlockVector< Args... > &v) |
Send MultiTypeBlockVector to an outstream. | |
template<class G , class T1 , class T2 > | |
void | fillIndexSetHoles (const G &graph, Dune::OwnerOverlapCopyCommunication< T1, T2 > &oocomm) |
Fills the holes in an index set. More... | |
template<class G , class T1 , class T2 > | |
bool | graphRepartition (const G &graph, Dune::OwnerOverlapCopyCommunication< T1, T2 > &oocomm, idxtype nparts, Dune::OwnerOverlapCopyCommunication< T1, T2 > *&outcomm, RedistributeInterface &redistInf, bool verbose=false) |
execute a graph repartition for a giving graph and indexset. More... | |
template<class InIterator , class OutIterator > | |
void | reduceOrder (const InIterator &inBegin, const InIterator &inEnd, OutIterator outIt) |
Algorithm to reduce vertex order information. More... | |
template<class TestGeometry > | |
bool | checkGeometry (const TestGeometry &geometry) |
Static and dynamic checks for all features of a Geometry. More... | |
std::ostream & | operator<< (std::ostream &s, const GeometryType &a) |
Prints the type to an output stream. | |
std::ostream & | operator<< (std::ostream &s, GeometryType::BasicType type) |
Prints a GeometryType::BasicType to an output stream. | |
template<int dimension, class CoordType > | |
VirtualRefinement< dimension, CoordType > & | buildRefinement (GeometryType geometryType, GeometryType coerceTo) |
return a reference to the VirtualRefinement according to the parameters More... | |
template<int dim, int dimworld, class ct , class GridFamily > | |
Grid< dim, dimworld, ct, GridFamily >::LevelGridView | levelGridView (const Grid< dim, dimworld, ct, GridFamily > &grid, int level) |
level grid view for the given grid and level. More... | |
template<int dim, int dimworld, class ct , class GridFamily > | |
Grid< dim, dimworld, ct, GridFamily >::LeafGridView | leafGridView (const Grid< dim, dimworld, ct, GridFamily > &grid) |
leaf grid view for the given grid More... | |
std::string | PartitionName (PartitionType type) |
Provide names for the partition types. More... | |
std::ostream & | operator<< (std::ostream &out, const PartitionType &type) |
write a PartitionType to a stream More... | |
std::ostream & | operator<< (std::ostream &out, const InterfaceType &type) |
write an InterfaceType to a stream More... | |
std::ostream & | operator<< (std::ostream &out, const PartitionIteratorType &type) |
write a PartitionIteratorType to a stream More... | |
template<class G > | |
void | gridinfo (const G &grid, std::string prefix="") |
A function to print some information about the grid as a whole. | |
template<class G > | |
void | gridlevellist (const G &grid, int level, std::string prefix) |
A function to print info about a grid level and its entities. | |
template<class G > | |
void | gridleaflist (const G &grid, std::string prefix) |
A function to print info about a leaf grid and its entities. | |
template<typename GridType > | |
void | printGrid (const GridType &grid, const Dune::MPIHelper &helper, std::string output_file="printgrid", int size=2000, bool execute_plot=true, bool png=true, bool local_corner_indices=true, bool local_intersection_indices=true, bool outer_normals=true) |
Print a grid as a gnuplot for testing and development. More... | |
template<class GV > | |
void | fillGridViewInfoSerial (const GV &gv, GridViewInfo< typename GV::ctype > &gridViewInfo) |
fill a GridViewInfo structure from a serial grid More... | |
template<int d, class CC > | |
std::ostream & | operator<< (std::ostream &s, const YaspGrid< d, CC > &grid) |
Output operator for multigrids. | |
template<class CollectiveCommunication , int d> | |
std::ostream & | operator<< (std::ostream &s, const Torus< CollectiveCommunication, d > &t) |
Output operator for Torus. | |
template<class Coordinates > | |
std::ostream & | operator<< (std::ostream &s, YGridComponent< Coordinates > e) |
Output operator for ygrids. | |
template<class Coordinates > | |
std::ostream & | operator<< (std::ostream &s, typename YGridComponent< Coordinates >::Iterator &e) |
Output operator for ygrids. | |
template<class Coordinates > | |
std::ostream & | operator<< (std::ostream &s, const YGrid< Coordinates > &e) |
Output operator for ygrids. | |
Variables | |
DVVerbType | dvverb (std::cout) |
stream for very verbose output. More... | |
DVerbType | dverb (std::cout) |
Singleton of verbose debug stream. More... | |
DInfoType | dinfo (std::cout) |
Stream for informative output. More... | |
DWarnType | dwarn (std::cerr) |
Stream for warnings indicating problems. More... | |
DGraveType | dgrave (std::cerr) |
Stream for warnings indicating fatal errors. More... | |
DErrType | derr (std::cerr) |
Stream for error messages. More... | |
static const DebugLevel | VERY_VERBOSE_DEBUG_LEVEL = 1 |
The level of the very verbose debug stream. More... | |
static const DebugLevel | VERBOSE_DEBUG_LEVEL = 2 |
The level of the verbose debug stream. More... | |
static const DebugLevel | INFO_DEBUG_LEVEL = 3 |
The level of the informative debug stream. More... | |
static const DebugLevel | WARN_DEBUG_LEVEL = 4 |
The level of the debug stream for warnings. More... | |
static const DebugLevel | GRAVE_DEBUG_LEVEL = 5 |
The level of the debug stream for fatal errors. More... | |
const char | base64table [] |
endoing table | |
Detailed Description
Dune namespace.
Include standard header files.
- Todo:
- put vtk io intro here ...
details and examples regarding the VTK file format can be found here:
http://www.earthmodels.org/software/vtk-and-paraview/vtk-file-formats
include base class functionality for the communication interface include parallel capability
Typedef Documentation
◆ OneDGridGeometry
using Dune::OneDGridGeometry = typedef AxisAlignedCubeGeometry<double, mydim, coorddim> |
The type used to for OneDGrid geometries.
If you ever want OneDGrid to use a different type for coordinates, you need to change the first argument of AxisAlignedCubeGeometry here.
Enumeration Type Documentation
◆ anonymous enum
anonymous enum |
Enumerator | |
---|---|
implementationDefined | Dummy integral value used for documentation purposes. #include <dune/common/documentation.hh>
Documentation related stuff.
|
Function Documentation
◆ assertCallOnce()
|
inline |
Make sure call_once() works and provide a helpful error message otherwise.
For call_once() to work, certain versions of libstdc++ need to be linked with -pthread or similar flags. If that is not the case, call_once() will throw an exception. This function checks that call_once() can indeed be used, i.e. that it does not throw an exception when it should not, and that the code does indeed get executed. If call_once() cannot be used, assertCallOnce() aborts the program with a helpful error message.
The check is only actually executed the first time assertCallOnce() is called.
The arguments file
and line
specify the filename and line number that should appear in the error message. They are ignored if file
is 0. The argument function
specifies the name of the function to appear in the error message. It is ignored if function
is 0.
◆ buildRefinement()
VirtualRefinement< dimension, CoordType > & Dune::buildRefinement | ( | GeometryType | geometryType, |
GeometryType | coerceTo | ||
) |
return a reference to the VirtualRefinement according to the parameters
- Template Parameters
-
dimension Dimension of the element to refine CoordType C++ type of the coordinates
- Exceptions
-
NotImplemented There is no Refinement implementation for the specified parameters.
- Parameters
-
geometryType geometry type of the refined element coerceTo geometry type of the subelements
References Dune::GeometryType::dim(), and Dune::GeometryType::id().
◆ checkGeometry()
bool Dune::checkGeometry | ( | const TestGeometry & | geometry | ) |
Static and dynamic checks for all features of a Geometry.
This excludes anything related to being part of a grid.
- Template Parameters
-
TestGeometry The type of the geometry to be tested
- Parameters
-
geometry The TestGeometry object to be tested
- Returns
- true if check passed
◆ cond()
const T1 Dune::cond | ( | bool | b, |
const T1 & | v1, | ||
const T2 & | v2 | ||
) |
conditional evaluate
sometimes call immediate if, evaluates to
In contrast to if-then-else the cond function can also be evaluated for vector valued SIMD data types, see simd.hh.
- Parameters
-
b boolean value v1 value of b==true v2 value of b==false
◆ dotT()
auto Dune::dotT | ( | const A & | a, |
const B & | b | ||
) | -> decltype(a*b) |
Computes an indefinite vector dot product for fundamental data types according to Petsc's VectTDot function: dotT(a,b) := a*b.
- Parameters
-
a b
- Returns
- a*b
◆ fillGridViewInfoSerial()
void Dune::fillGridViewInfoSerial | ( | const GV & | gv, |
GridViewInfo< typename GV::ctype > & | gridViewInfo | ||
) |
fill a GridViewInfo structure from a serial grid
If used on a parallel grid, it will gather information for entities of all partitions on each rank locally.
References Dune::GridViewInfo< ctype >::gridName, Dune::GridViewInfo< ctype >::gridViewName, Dune::GridViewInfo< ctype >::partitionName, Dune::MultipleCodimMultipleGeomTypeMapper< GV, Layout >::size(), Dune::EntityInfo< ctype >::volumeMax, Dune::EntityInfo< ctype >::volumeMin, and Dune::EntityInfo< ctype >::volumeSum.
◆ fillIndexSetHoles()
void Dune::fillIndexSetHoles | ( | const G & | graph, |
Dune::OwnerOverlapCopyCommunication< T1, T2 > & | oocomm | ||
) |
Fills the holes in an index set.
In general the index set only needs to know those indices where communication my occur. In usual FE computations these are just those near the processor boundaries.
For the repartitioning we need to know all all indices for which data is stored. The missing indices will be created in this method.
- Parameters
-
graph The graph to reparition. oocomm The communication information.
Referenced by graphRepartition().
◆ graphRepartition()
bool Dune::graphRepartition | ( | const G & | graph, |
Dune::OwnerOverlapCopyCommunication< T1, T2 > & | oocomm, | ||
idxtype | nparts, | ||
Dune::OwnerOverlapCopyCommunication< T1, T2 > *& | outcomm, | ||
RedistributeInterface & | redistInf, | ||
bool | verbose = false |
||
) |
execute a graph repartition for a giving graph and indexset.
This function provides repartition functionality using the PARMETIS library
- Parameters
-
graph The given graph to repartition oocomm The parallel information about the graph. nparts The number of domains the repartitioning should achieve. [out] outcomm Pointer store the parallel information of the redistributed domains in. redistInf Redistribute interface verbose Verbosity flag to give out additional information.
References Dune::CollectiveCommunication< MPI_Comm >::barrier(), Dune::ParallelIndexSet< TG, TL, N >::begin(), Dune::OwnerOverlapCopyCommunication< GlobalIdType, LocalIdType >::copyCopyToAll(), Dune::OwnerOverlapCopyCommunication< GlobalIdType, LocalIdType >::copyOwnerToAll(), Dune::Timer::elapsed(), Dune::ParallelIndexSet< TG, TL, N >::end(), fillIndexSetHoles(), Dune::OwnerOverlapCopyCommunication< GlobalIdType, LocalIdType >::getSolverCategory(), Dune::OwnerOverlapCopyCommunication< GlobalIdType, LocalIdType >::indexSet(), Dune::SolverCategory::nonoverlapping, Dune::CollectiveCommunication< MPI_Comm >::rank(), Dune::Timer::reset(), Dune::ParallelIndexSet< TG, TL, N >::size(), and Dune::CollectiveCommunication< MPI_Comm >::size().
◆ handle_proxy_member_access()
pointer_or_proxy_holder Dune::handle_proxy_member_access | ( | T && | t | ) |
Transparent support for providing member access to both lvalues and rvalues (temporary proxies).
If an iterator facade (like entity iterators) wants to allow the embedded implementation to return either an (internally stored) reference or a temporary object and expose these two behaviors to enable performance optimizations, operator->() needs special handling: If the implementation returns a reference, operator->() in the facade can simply return the address of the referenced object, but if the returned object is a temporary, we need to capture and store it in a helper object to make sure it outlives the member access. This function transparently supports both variants. It should be used like this:
- Note
- This function exploits the special type deduction rules for unqualified rvalue references to distinguish between lvalues and rvalues and thus needs to be passed the object returned by the implementation.
◆ hash_combine()
|
inline |
Calculates the hash value of arg and combines it in-place with seed.
- Parameters
-
seed The hash value that will be combined with the hash of arg. arg The object for which to calculate a hash value and combine it with seed.
Referenced by hash_range().
◆ hash_range() [1/2]
|
inline |
Hashes all elements in the range [first,last) and returns the combined hash.
- Parameters
-
first Iterator pointing to the first object to hash. last Iterator pointing one past the last object to hash.
- Returns
- The result of hashing all objects in the range and combining them using hash_combine() in sequential fashion, starting with seed 0.
References hash_combine().
◆ hash_range() [2/2]
|
inline |
Hashes all elements in the range [first,last) and combines the hashes in-place with seed.
- Parameters
-
seed Start value that will be combined with the hash values of all objects in the range using hash_combine() in sequential fashion. first Iterator pointing to the first ojbect to hash. last Iterator pointing one past the last object to hash.
References hash_combine().
◆ models()
|
constexpr |
Check if concept is modeled by given types.
This will check if the given concept is modeled by the given list of types. This is true if the list of types models all the base concepts that are refined by the given concept and if it satisfies all additional requirements of the latter.
Notice that a concept may be defined for a list of interacting types. The function will check if the given list of types matches the requirements on the whole list. It does not check if each individual type in the list satisfies the concept.
This concept check mechanism is inspired by the concept checking facility in Eric Nieblers range-v3. For more information please refer to the libraries project page https://github.com/ericniebler/range-v3 or this blog entry: http://ericniebler.com/2013/11/23/concept-checking-in-c11. In fact the interface provided here is almost exactly the same as in range-v3. However the implementation differs, because range-v3 uses its own meta-programming library whereas our implementation is more straight forward.
The result is returned as std::integral_constant<bool, ...> which allows to nicely use this method with Hybrid::ifElse.
- Template Parameters
-
C The concept to check T The list of type to check against the concept
◆ operator==()
|
inline |
Checks for equality.
This operation is only defined if either T1 is convertible to T2, and T2 is not convetible to T1. Otherwise the operator is removed from the overload set since the enable_if for the return type yield an invalid type expression.
References Dune::Hybrid::equals().
◆ orderedOverload()
auto Dune::orderedOverload | ( | F &&... | f | ) |
Create an ordered overload set.
- Template Parameters
-
F List of function object types
- Parameters
-
f List of function objects
This returns an object that contains all operator() implementations of the passed functions. All those are available when calling operator() of the returned object.
In contrast to overload() these overloads are ordered in the sense that the first matching overload for the given arguments is selected and later ones are ignored. Hence such a call is never ambiguous.
Notice that the passed function objects are stored by value and must be copy-constructible.
◆ overload()
auto Dune::overload | ( | F &&... | f | ) |
Create an overload set.
- Template Parameters
-
F List of function object types
- Parameters
-
f List of function objects
This returns an object that contains all operator() implementations of the passed functions. All those are available when calling operator() of the returned object.
The returned object derives from those implementations such that it contains all operator() implementations in its overload set. When calling operator() this will select the best overload. If multiple overload are equally good this will lead to ambiguity.
Notice that the passed function objects are stored by value and must be copy-constructible.
◆ printGrid()
void Dune::printGrid | ( | const GridType & | grid, |
const Dune::MPIHelper & | helper, | ||
std::string | output_file = "printgrid" , |
||
int | size = 2000 , |
||
bool | execute_plot = true , |
||
bool | png = true , |
||
bool | local_corner_indices = true , |
||
bool | local_intersection_indices = true , |
||
bool | outer_normals = true |
||
) |
Print a grid as a gnuplot for testing and development.
- Template Parameters
-
GridType the type of grid to work with
- Parameters
-
grid the grid to print helper an MPIHelper to create unique output file names in parallel case output_file the base of the output filename size size of the plot in pixels; increase if plot is too cramped execute_plot whether to execute gnuplot automatically png whether to use PNG or SVG as the output format local_corner_indices whether to show local corner indices local_intersection_indices whether to show local intersection indices outer_normals whether to show outer normals of intersections Creates a gnuplot (one per process if parallel) showing the grid structure with indices, intersection types etc.
◆ redistributeMatrix()
void Dune::redistributeMatrix | ( | M & | origMatrix, |
M & | newMatrix, | ||
C & | origComm, | ||
C & | newComm, | ||
RedistributeInformation< C > & | ri | ||
) |
Redistribute a matrix according to given domain decompositions.
All the parameters for this function can be obtained by calling graphRepartition with the graph of the original matrix.
- Parameters
-
origMatrix The matrix on the original partitioning. newMatrix An empty matrix to store the new redistributed matrix in. origComm The parallel information of the original partitioning. newComm The parallel information of the new partitioning. ri The remote index information between the original and the new partitioning. Upon exit of this method it will be prepared for copying from owner to owner vertices for data redistribution.
- Template Parameters
-
M The matrix type. It is assumed to be sparse. E.g. BCRSMatrix. C The type of the parallel information, see OwnerOverlapCopyCommunication.
◆ reduceOrder()
void Dune::reduceOrder | ( | const InIterator & | inBegin, |
const InIterator & | inEnd, | ||
OutIterator | outIt | ||
) |
Algorithm to reduce vertex order information.
- Parameters
-
inBegin Start of the range of ids to reduce. inEnd End of the range of ids to reduce. outIt Start of the sequence where to store the result.
inBegin
and inEnd
must be ForwardIterators; their value_type
may constant. outIt
must be an OutputIterator and must allow std::distance(inBegin,inEnd)
increments. Complexity is quadratic.
- See also
- GeneralVertexOrder, VertexOrderByIdFactory
Referenced by Dune::GeneralVertexOrder< dim, Index_ >::getReduced(), and testElementDim().
◆ stackobject_to_shared_ptr() [1/2]
|
inline |
Create a shared_ptr for a stack-allocated object.
Usage:
The shared_ptr
points to the object on the stack, but its deleter is set to an instance of null_deleter
so that nothing happens when the shared_ptr
is destroyed.
- See also
- shared_ptr, null_deleter
Referenced by wrap_or_move().
◆ stackobject_to_shared_ptr() [2/2]
|
inline |
Create a shared_ptr to a base class for a stack-allocated object.
Usage:
The shared_ptr
points to the object on the stack, but its deleter is set to an instance of null_deleter
so that nothing happens when the shared_ptr
is destroyed.
- See also
- shared_ptr, null_deleter
◆ wrap_or_move() [1/2]
auto Dune::wrap_or_move | ( | T && | t | ) |
Capture R-value reference to shared_ptr.
This will store a copy of the passed object in a shared_ptr.
The two overloads of wrap_or_move are intended to capture references and temporaries in a unique way without creating copies and only moving if necessary.
Be careful: Only use this function if you are aware of it's implications. You can e.g. easily end up storing a reference to a temporary if you use this inside of another function without perfect forwarding.
◆ wrap_or_move() [2/2]
auto Dune::wrap_or_move | ( | T & | t | ) |
Capture L-value reference to shared_ptr.
This will store a pointer for the passed reference in a non-owning shared_ptr.
The two overloads of wrap_or_move are intended to capture references and temporaries in a unique way without creating copies and only moving if necessary.
Be careful: Only use this function if you are aware of it's implications. You can e.g. easily end up storing a reference to a temporary if you use this inside of another function without perfect forwarding.
References stackobject_to_shared_ptr().