dune-istl
2.2.0
|
A Parallel Algebraic Multigrid based on Agglomeration. More...
Classes | |
class | Dune::Amg::AggregationCriterion< T > |
Base class of all aggregation criterions. More... | |
class | Dune::Amg::Dependency< M, N > |
Dependency policy for symmetric matrices. More... | |
class | Dune::Amg::SymmetricDependency< M, N > |
Dependency policy for symmetric matrices. More... | |
class | Dune::Amg::Diagonal< N > |
Norm that uses only the [N][N] entry of the block to determine couplings. More... | |
class | Dune::Amg::FirstDiagonal |
Norm that uses only the [0][0] entry of the block to determine couplings. More... | |
struct | Dune::Amg::RowSum |
Functor using the row sum (infinity) norm to determine strong couplings. More... | |
struct | Dune::Amg::FrobeniusNorm |
struct | Dune::Amg::AlwaysOneNorm |
class | Dune::Amg::SymmetricCriterion< M, Norm > |
Criterion taking advantage of symmetric matrices. More... | |
class | Dune::Amg::UnSymmetricCriterion< M, Norm > |
Criterion suited for unsymmetric matrices. More... | |
class | Dune::Amg::AggregatesMap< V > |
Class providing information about the mapping of the vertices onto aggregates. More... | |
class | Dune::Amg::AggregatesMap< V >::DummyEdgeVisitor |
A Dummy visitor that does nothing for each visited edge. More... | |
class | Dune::Amg::Aggregate< G, S > |
A class for temporarily storing the vertices of an aggregate in. More... | |
class | Dune::Amg::Aggregator< G > |
Class for building the aggregates. More... | |
class | Dune::Amg::Aggregator< G >::Stack |
Stack. | |
class | Dune::Amg::Aggregator< G >::AggregateVisitor< V > |
An Adaptor for vsitors that only evaluates edges pointing to a specific aggregate. | |
class | Dune::Amg::Aggregator< G >::Counter |
A simple counter functor. | |
class | Dune::Amg::Aggregator< G >::FrontNeighbourCounter |
Counts the number of edges to vertices belonging to the aggregate front. | |
class | Dune::Amg::Aggregator< G >::TwoWayCounter |
Counter of TwoWayConnections. | |
class | Dune::Amg::Aggregator< G >::OneWayCounter |
Counter of OneWayConnections. | |
class | Dune::Amg::Aggregator< G >::ConnectivityCounter |
Connectivity counter. | |
class | Dune::Amg::Aggregator< G >::DependencyCounter |
Counts the edges depending on the dependency. | |
class | Dune::Amg::Aggregator< G >::FrontMarker |
Adds the targets of each edge to the list of front vertices. | |
class | Dune::Amg::AMG< M, X, S, PI, A > |
Parallel algebraic multigrid based on agglomeration. More... | |
class | Dune::Amg::ConstructionTraits< T > |
Traits class for generically constructing non default constructable types. More... | |
class | Dune::Amg::ConstructionTraits< BlockVector< T > > |
struct | Dune::Amg::OverlappingSchwarzOperatorArgs< M, C > |
struct | Dune::Amg::NonoverlappingOperatorArgs< M, C > |
struct | Dune::Amg::OwnerOverlapCopyCommunicationArgs |
struct | Dune::Amg::SequentialCommunicationArgs |
class | Dune::Amg::ConstructionTraits< OverlappingSchwarzOperator< M, X, Y, C > > |
class | Dune::Amg::ConstructionTraits< NonoverlappingSchwarzOperator< M, X, Y, C > > |
struct | Dune::Amg::MatrixAdapterArgs< M, X, Y > |
class | Dune::Amg::ConstructionTraits< MatrixAdapter< M, X, Y > > |
class | Dune::Amg::ConstructionTraits< SequentialInformation > |
class | Dune::Amg::ConstructionTraits< OwnerOverlapCopyCommunication< T1, T2 > > |
class | Dune::Amg::EdgeProperties |
Class representing the properties of an ede in the matrix graph. More... | |
class | Dune::Amg::VertexProperties |
Class representing a node in the matrix graph. More... | |
class | Dune::Amg::PropertyGraphVertexPropertyMap< G, i > |
struct | Dune::Amg::OverlapVertex< T > |
class | Dune::Amg::SparsityBuilder< M > |
Functor for building the sparsity pattern of the matrix using examineConnectivity. More... | |
class | Dune::Amg::BaseGalerkinProduct |
class | Dune::Amg::GalerkinProduct< T > |
struct | Dune::Amg::GalerkinProduct< T >::OVLess< A > |
class | Dune::Amg::GalerkinProduct< SequentialInformation > |
struct | Dune::Amg::BaseConnectivityConstructor |
class | Dune::Amg::BaseConnectivityConstructor::ConnectedBuilder< G, S, V > |
Visitor for identifying connected aggregates during a breadthFirstSearch. More... | |
struct | Dune::Amg::ConnectivityConstructor< G, T > |
struct | Dune::Amg::ConnectivityConstructor< G, SequentialInformation > |
struct | Dune::Amg::DirichletBoundarySetter< T > |
struct | Dune::Amg::DirichletBoundarySetter< SequentialInformation > |
class | Dune::Amg::MatrixGraph< M > |
The (undirected) graph of a matrix. More... | |
class | Dune::Amg::SubGraph< G, T > |
A subgraph of a graph. More... | |
class | Dune::Amg::VertexPropertiesGraph< G, VP, VM > |
Attaches properties to the vertices of a graph. More... | |
class | Dune::Amg::PropertiesGraph< G, VP, EP, VM, EM > |
Attaches properties to the edges and vertices of a graph. More... | |
class | Dune::Amg::GraphVertexPropertiesSelector< G > |
Wrapper to access the internal edge properties of a graph via operator[]() More... | |
class | Dune::Amg::GraphEdgePropertiesSelector< G > |
Wrapper to access the internal vertex properties of a graph via operator[]() More... | |
class | Dune::Amg::Hierarchy< T, A > |
A hierarchy of coantainers (e.g. matrices or vectors) More... | |
class | Dune::Amg::MatrixHierarchy< M, PI, A > |
The hierarchies build by the coarsening process. More... | |
class | Dune::Amg::CoarsenCriterion< T > |
The criterion describing the stop criteria for the coarsening process. More... | |
class | Dune::Amg::IndicesCoarsener< T, E > |
class | Dune::Amg::ParallelIndicesCoarsener< T, E > |
class | Dune::Amg::ParallelIndicesCoarsener< T, E >::ParallelAggregateRenumberer< G, I > |
class | Dune::Amg::IndicesCoarsener< OwnerOverlapCopyCommunication< G, L >, E > |
Coarsen Indices in the parallel case. More... | |
class | Dune::Amg::IndicesCoarsener< SequentialInformation, E > |
Coarsen Indices in the sequential case. More... | |
class | Dune::Amg::KAmgTwoGrid< AMG > |
Two grid operator for AMG with Krylov cycle. More... | |
class | Dune::Amg::KAMG< M, X, S, PI, K, A > |
an algebraic multigrid method using a Krylov-cycle. More... | |
class | Dune::Amg::DependencyParameters |
Parameters needed to check whether a node depends on another. More... | |
class | Dune::Amg::AggregationParameters |
Parameters needed for the aggregation process,. More... | |
class | Dune::Amg::CoarseningParameters |
Parameters for the complete coarsening process. More... | |
class | Dune::Amg::Parameters |
All parameters for AMG. More... | |
struct | Dune::Amg::VertexVisitedTag |
Tag idnetifying the visited property of a vertex. More... | |
class | Dune::Amg::RandomAccessBundledPropertyMap< C, K, i, T, R > |
A property map that extracts one property out of a bundle using operator[]() More... | |
struct | Dune::Amg::DefaultSmootherArgs< T > |
The default class for the smoother arguments. More... | |
struct | Dune::Amg::SmootherTraits< T > |
Traits class for getting the attribute class of a smoother. More... | |
struct | Dune::Amg::SmootherTraits< BlockPreconditioner< X, Y, C, T > > |
struct | Dune::Amg::SmootherTraits< NonoverlappingBlockPreconditioner< C, T > > |
class | Dune::Amg::DefaultConstructionArgs< T > |
Construction Arguments for the default smoothers. More... | |
struct | Dune::Amg::ConstructionArgs< T > |
class | Dune::Amg::DefaultParallelConstructionArgs< T, C > |
struct | Dune::Amg::ConstructionTraits< SeqSSOR< M, X, Y, l > > |
Policy for the construction of the SeqSSOR smoother. More... | |
struct | Dune::Amg::ConstructionTraits< SeqSOR< M, X, Y, l > > |
Policy for the construction of the SeqSOR smoother. More... | |
struct | Dune::Amg::ConstructionTraits< SeqJac< M, X, Y, l > > |
Policy for the construction of the SeqJac smoother. More... | |
struct | Dune::Amg::ConstructionTraits< SeqILU0< M, X, Y > > |
Policy for the construction of the SeqILUn smoother. More... | |
class | Dune::Amg::ConstructionArgs< SeqILUn< M, X, Y > > |
struct | Dune::Amg::ConstructionTraits< SeqILUn< M, X, Y > > |
Policy for the construction of the SeqJac smoother. More... | |
struct | Dune::Amg::ConstructionTraits< ParSSOR< M, X, Y, C > > |
Policy for the construction of the ParSSOR smoother. More... | |
struct | Dune::Amg::ConstructionTraits< BlockPreconditioner< X, Y, C, T > > |
struct | Dune::Amg::ConstructionTraits< NonoverlappingBlockPreconditioner< C, T > > |
struct | Dune::Amg::SmootherApplier< T > |
Helper class for applying the smoothers. More... | |
struct | Dune::Amg::SmootherApplier< SeqSOR< M, X, Y, l > > |
struct | Dune::Amg::SmootherApplier< BlockPreconditioner< X, Y, C, SeqSOR< M, X, Y, l > > > |
struct | Dune::Amg::SmootherApplier< NonoverlappingBlockPreconditioner< C, SeqSOR< M, X, Y, l > > > |
struct | Dune::Amg::SmootherApplier< SeqOverlappingSchwarz< M, X, MultiplicativeSchwarzMode, MS, TA > > |
struct | Dune::Amg::SeqOverlappingSchwarzSmootherArgs< T > |
struct | Dune::Amg::SmootherTraits< SeqOverlappingSchwarz< M, X, TM, TS, TA > > |
class | Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > > |
struct | Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::VertexAdder |
struct | Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::NoneAdder |
struct | Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::AggregateAdder< VM > |
struct | Dune::Amg::ConstructionTraits< SeqOverlappingSchwarz< M, X, TM, TS, TA > > |
class | Dune::Amg::Transfer< V1, V2, T > |
class | Dune::Amg::Transfer< V, V1, SequentialInformation > |
class | Dune::Amg::Transfer< V, V1, OwnerOverlapCopyCommunication< T1, T2 > > |
Files | |
file | aggregates.hh |
Provides classes for the Coloring process of AMG. | |
file | amg.hh |
The AMG preconditioner. | |
file | construction.hh |
Helper classes for the construction of classes without empty constructor. | |
file | dependency.hh |
Provides classes for initializing the link attributes of a matrix graph. | |
file | galerkin.hh |
Provides a class for building the galerkin product based on a aggregation scheme. | |
file | graph.hh |
Provides classes for building the matrix graph. | |
file | hierarchy.hh |
Provides a classes representing the hierarchies in AMG. | |
file | indicescoarsener.hh |
Provides a class for building the index set and remote indices on the coarse level. | |
file | kamg.hh |
Provides an algebraic multigrid using a Krylov cycle. | |
file | parameters.hh |
Parameter classes for customizing AMG. | |
file | properties.hh |
Provides classes for handling internal properties in a graph. | |
file | smoother.hh |
Classes for the generic construction and application of the smoothers. | |
file | transfer.hh |
Prolongation and restriction for amg. | |
Typedefs | |
typedef T | Dune::Amg::AggregationCriterion< T >::DependencyPolicy |
The policy for calculating the dependency graph. | |
typedef M | Dune::Amg::Dependency< M, N >::Matrix |
The matrix type we build the dependency of. | |
typedef N | Dune::Amg::Dependency< M, N >::Norm |
The norm to use for examining the matrix entries. | |
typedef Matrix::row_type | Dune::Amg::Dependency< M, N >::Row |
Constant Row iterator of the matrix. | |
typedef Matrix::ConstColIterator | Dune::Amg::Dependency< M, N >::ColIter |
Constant column iterator of the matrix. | |
typedef M | Dune::Amg::SymmetricDependency< M, N >::Matrix |
The matrix type we build the dependency of. | |
typedef N | Dune::Amg::SymmetricDependency< M, N >::Norm |
The norm to use for examining the matrix entries. | |
typedef Matrix::row_type | Dune::Amg::SymmetricDependency< M, N >::Row |
Constant Row iterator of the matrix. | |
typedef Matrix::ConstColIterator | Dune::Amg::SymmetricDependency< M, N >::ColIter |
Constant column iterator of the matrix. | |
typedef V | Dune::Amg::AggregatesMap< V >::VertexDescriptor |
The vertex descriptor type. | |
typedef V | Dune::Amg::AggregatesMap< V >::AggregateDescriptor |
The aggregate descriptor type. | |
typedef PoolAllocator < VertexDescriptor, 100 > | Dune::Amg::AggregatesMap< V >::Allocator |
The allocator we use for our lists and the set. | |
typedef SLList < VertexDescriptor, Allocator > | Dune::Amg::AggregatesMap< V >::VertexList |
The type of a single linked list of vertex descriptors. | |
typedef const AggregateDescriptor * | Dune::Amg::AggregatesMap< V >::const_iterator |
typedef AggregateDescriptor * | Dune::Amg::AggregatesMap< V >::iterator |
typedef G | Dune::Amg::Aggregate< G, S >::MatrixGraph |
typedef MatrixGraph::VertexDescriptor | Dune::Amg::Aggregate< G, S >::Vertex |
The vertex descriptor type. | |
typedef PoolAllocator< Vertex, 100 > | Dune::Amg::Aggregate< G, S >::Allocator |
The allocator we use for our lists and the set. | |
typedef SLList< Vertex, Allocator > | Dune::Amg::Aggregate< G, S >::VertexList |
The type of a single linked list of vertex descriptors. | |
typedef S | Dune::Amg::Aggregate< G, S >::VertexSet |
The type of a single linked list of vertex descriptors. | |
typedef VertexList::const_iterator | Dune::Amg::Aggregate< G, S >::const_iterator |
Const iterator over a vertex list. | |
typedef std::size_t * | Dune::Amg::Aggregate< G, S >::SphereMap |
Type of the mapping of aggregate members onto distance spheres. | |
typedef G | Dune::Amg::Aggregator< G >::MatrixGraph |
The matrix graph type used. | |
typedef MatrixGraph::VertexDescriptor | Dune::Amg::Aggregator< G >::Vertex |
The vertex identifier. | |
typedef MatrixGraph::VertexDescriptor | Dune::Amg::Aggregator< G >::AggregateDescriptor |
The type of the aggregate descriptor. | |
typedef V | Dune::Amg::Aggregator< G >::AggregateVisitor< V >::Visitor |
The type of the adapted visitor. | |
typedef M | Dune::Amg::AMG< M, X, S, PI, A >::Operator |
The matrix operator type. | |
typedef PI | Dune::Amg::AMG< M, X, S, PI, A >::ParallelInformation |
The type of the parallel information. Either OwnerOverlapCommunication or another type describing the parallel data distribution and providing communication methods. | |
typedef MatrixHierarchy< M, ParallelInformation, A > | Dune::Amg::AMG< M, X, S, PI, A >::OperatorHierarchy |
The operator hierarchy type. | |
typedef OperatorHierarchy::ParallelInformationHierarchy | Dune::Amg::AMG< M, X, S, PI, A >::ParallelInformationHierarchy |
The parallal data distribution hierarchy type. | |
typedef X | Dune::Amg::AMG< M, X, S, PI, A >::Domain |
The domain type. | |
typedef X | Dune::Amg::AMG< M, X, S, PI, A >::Range |
The range type. | |
typedef InverseOperator< X, X > | Dune::Amg::AMG< M, X, S, PI, A >::CoarseSolver |
the type of the coarse solver. | |
typedef S | Dune::Amg::AMG< M, X, S, PI, A >::Smoother |
The type of the smoother. | |
typedef SmootherTraits < Smoother >::Arguments | Dune::Amg::AMG< M, X, S, PI, A >::SmootherArgs |
The argument type for the construction of the smoother. | |
typedef const void * | Dune::Amg::ConstructionTraits< T >::Arguments |
A type holding all the arguments needed to call the constructor. | |
typedef const int | Dune::Amg::ConstructionTraits< BlockVector< T > >::Arguments |
typedef ReadWritePropertyMapTag | Dune::Amg::PropertyGraphVertexPropertyMap< G, i >::Category |
typedef G | Dune::Amg::PropertyGraphVertexPropertyMap< G, i >::Graph |
The type of the graph with internal properties. | |
typedef std::bitset < VertexProperties::SIZE > | Dune::Amg::PropertyGraphVertexPropertyMap< G, i >::BitSet |
The type of the bitset. | |
typedef BitSet::reference | Dune::Amg::PropertyGraphVertexPropertyMap< G, i >::Reference |
The reference type. | |
typedef bool | Dune::Amg::PropertyGraphVertexPropertyMap< G, i >::ValueType |
The value type. | |
typedef G::VertexDescriptor | Dune::Amg::PropertyGraphVertexPropertyMap< G, i >::Vertex |
The vertex descriptor. | |
typedef Amg::PropertyGraphVertexPropertyMap < Amg::PropertiesGraph< G, Amg::VertexProperties, EP, VM, EM > , Amg::VertexProperties::VISITED > | Dune::PropertyMapTypeSelector< Amg::VertexVisitedTag, Amg::PropertiesGraph< G, Amg::VertexProperties, EP, VM, EM > >::Type |
typedef T | Dune::Amg::OverlapVertex< T >::Aggregate |
The aggregate descriptor. | |
typedef T | Dune::Amg::OverlapVertex< T >::Vertex |
The vertex descriptor. | |
typedef T | Dune::Amg::GalerkinProduct< T >::ParallelInformation |
typedef G | Dune::Amg::BaseConnectivityConstructor::ConnectedBuilder< G, S, V >::Graph |
The type of the graph. | |
typedef Graph::ConstEdgeIterator | Dune::Amg::BaseConnectivityConstructor::ConnectedBuilder< G, S, V >::ConstEdgeIterator |
The constant edge iterator. | |
typedef S | Dune::Amg::BaseConnectivityConstructor::ConnectedBuilder< G, S, V >::Set |
The type of the connected set. | |
typedef V | Dune::Amg::BaseConnectivityConstructor::ConnectedBuilder< G, S, V >::VisitedMap |
The type of the map for marking vertices as visited. | |
typedef Graph::VertexDescriptor | Dune::Amg::BaseConnectivityConstructor::ConnectedBuilder< G, S, V >::Vertex |
The vertex descriptor of the graph. | |
typedef G::VertexDescriptor | Dune::Amg::ConnectivityConstructor< G, T >::Vertex |
typedef G::VertexDescriptor | Dune::Amg::ConnectivityConstructor< G, SequentialInformation >::Vertex |
typedef E | Dune::Amg::ParallelIndicesCoarsener< T, E >::ExcludedAttributes |
The set of excluded attributes. | |
typedef T | Dune::Amg::ParallelIndicesCoarsener< T, E >::ParallelInformation |
The type of the parallel information. | |
typedef ParallelInformation::ParallelIndexSet | Dune::Amg::ParallelIndicesCoarsener< T, E >::ParallelIndexSet |
typedef ParallelIndexSet::GlobalIndex | Dune::Amg::ParallelIndicesCoarsener< T, E >::GlobalIndex |
The type of the global index. | |
typedef ParallelIndexSet::LocalIndex | Dune::Amg::ParallelIndicesCoarsener< T, E >::LocalIndex |
The type of the local index. | |
typedef LocalIndex::Attribute | Dune::Amg::ParallelIndicesCoarsener< T, E >::Attribute |
The type of the attribute. | |
typedef Dune::RemoteIndices < ParallelIndexSet > | Dune::Amg::ParallelIndicesCoarsener< T, E >::RemoteIndices |
The type of the remote indices. | |
typedef C | Dune::Amg::RandomAccessBundledPropertyMap< C, K, i, T, R >::Container |
The container that holds the properties. | |
typedef R | Dune::Amg::RandomAccessBundledPropertyMap< C, K, i, T, R >::Reference |
The reference type of the container. | |
typedef K | Dune::Amg::RandomAccessBundledPropertyMap< C, K, i, T, R >::Key |
The key of the property map. | |
typedef LvaluePropertyMapTag | Dune::Amg::RandomAccessBundledPropertyMap< C, K, i, T, R >::Category |
The category of the property map. | |
typedef T | Dune::Amg::DefaultSmootherArgs< T >::RelaxationFactor |
The type of the relaxation factor. | |
typedef DefaultSmootherArgs < typename T::matrix_type::field_type > | Dune::Amg::SmootherTraits< T >::Arguments |
typedef DefaultSmootherArgs < typename T::matrix_type::field_type > | Dune::Amg::SmootherTraits< BlockPreconditioner< X, Y, C, T > >::Arguments |
typedef DefaultSmootherArgs < typename T::matrix_type::field_type > | Dune::Amg::SmootherTraits< NonoverlappingBlockPreconditioner< C, T > >::Arguments |
typedef DefaultConstructionArgs < SeqSSOR< M, X, Y, l > > | Dune::Amg::ConstructionTraits< SeqSSOR< M, X, Y, l > >::Arguments |
typedef DefaultConstructionArgs < SeqSOR< M, X, Y, l > > | Dune::Amg::ConstructionTraits< SeqSOR< M, X, Y, l > >::Arguments |
typedef DefaultConstructionArgs < SeqJac< M, X, Y, l > > | Dune::Amg::ConstructionTraits< SeqJac< M, X, Y, l > >::Arguments |
typedef DefaultConstructionArgs < SeqILU0< M, X, Y > > | Dune::Amg::ConstructionTraits< SeqILU0< M, X, Y > >::Arguments |
typedef ConstructionArgs < SeqILUn< M, X, Y > > | Dune::Amg::ConstructionTraits< SeqILUn< M, X, Y > >::Arguments |
typedef DefaultParallelConstructionArgs < M, C > | Dune::Amg::ConstructionTraits< ParSSOR< M, X, Y, C > >::Arguments |
typedef DefaultParallelConstructionArgs < T, C > | Dune::Amg::ConstructionTraits< BlockPreconditioner< X, Y, C, T > >::Arguments |
typedef ConstructionTraits< T > | Dune::Amg::ConstructionTraits< BlockPreconditioner< X, Y, C, T > >::SeqConstructionTraits |
typedef DefaultParallelConstructionArgs < T, C > | Dune::Amg::ConstructionTraits< NonoverlappingBlockPreconditioner< C, T > >::Arguments |
typedef ConstructionTraits< T > | Dune::Amg::ConstructionTraits< NonoverlappingBlockPreconditioner< C, T > >::SeqConstructionTraits |
typedef T | Dune::Amg::SmootherApplier< T >::Smoother |
typedef Smoother::range_type | Dune::Amg::SmootherApplier< T >::Range |
typedef Smoother::domain_type | Dune::Amg::SmootherApplier< T >::Domain |
typedef SeqSOR< M, X, Y, l > | Dune::Amg::SmootherApplier< SeqSOR< M, X, Y, l > >::Smoother |
typedef Smoother::range_type | Dune::Amg::SmootherApplier< SeqSOR< M, X, Y, l > >::Range |
typedef Smoother::domain_type | Dune::Amg::SmootherApplier< SeqSOR< M, X, Y, l > >::Domain |
typedef BlockPreconditioner< X, Y, C, SeqSOR< M, X, Y, l > > | Dune::Amg::SmootherApplier< BlockPreconditioner< X, Y, C, SeqSOR< M, X, Y, l > > >::Smoother |
typedef Smoother::range_type | Dune::Amg::SmootherApplier< BlockPreconditioner< X, Y, C, SeqSOR< M, X, Y, l > > >::Range |
typedef Smoother::domain_type | Dune::Amg::SmootherApplier< BlockPreconditioner< X, Y, C, SeqSOR< M, X, Y, l > > >::Domain |
typedef NonoverlappingBlockPreconditioner < C, SeqSOR< M, X, Y, l > > | Dune::Amg::SmootherApplier< NonoverlappingBlockPreconditioner< C, SeqSOR< M, X, Y, l > > >::Smoother |
typedef Smoother::range_type | Dune::Amg::SmootherApplier< NonoverlappingBlockPreconditioner< C, SeqSOR< M, X, Y, l > > >::Range |
typedef Smoother::domain_type | Dune::Amg::SmootherApplier< NonoverlappingBlockPreconditioner< C, SeqSOR< M, X, Y, l > > >::Domain |
typedef SeqOverlappingSchwarz < M, X, MultiplicativeSchwarzMode, MS, TA > | Dune::Amg::SmootherApplier< SeqOverlappingSchwarz< M, X, MultiplicativeSchwarzMode, MS, TA > >::Smoother |
typedef Smoother::range_type | Dune::Amg::SmootherApplier< SeqOverlappingSchwarz< M, X, MultiplicativeSchwarzMode, MS, TA > >::Range |
typedef Smoother::domain_type | Dune::Amg::SmootherApplier< SeqOverlappingSchwarz< M, X, MultiplicativeSchwarzMode, MS, TA > >::Domain |
typedef SeqOverlappingSchwarzSmootherArgs < typename M::field_type > | Dune::Amg::SmootherTraits< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::Arguments |
typedef MatrixGraph< M > ::VertexDescriptor | Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::VertexDescriptor |
typedef Dune::Amg::AggregatesMap < VertexDescriptor > | Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::AggregatesMap |
typedef AggregatesMap::AggregateDescriptor | Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::AggregateDescriptor |
typedef SeqOverlappingSchwarz < M, X, TM, TS, TA > ::subdomain_vector | Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::Vector |
typedef Vector::value_type | Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::Subdomain |
typedef ConstructionArgs < SeqOverlappingSchwarz< M, X, TM, TS, TA > > | Dune::Amg::ConstructionTraits< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::Arguments |
Enumerations | |
enum | { Dune::Amg::Diagonal< N >::is_sign_preserving = true } |
enum | { Dune::Amg::RowSum::is_sign_preserving = false } |
enum | { Dune::Amg::FrobeniusNorm::is_sign_preserving = false } |
enum | { Dune::Amg::AlwaysOneNorm::is_sign_preserving = false } |
enum | { Dune::Amg::AMG< M, X, S, PI, A >::category = S::category } |
enum | { Dune::Amg::EdgeProperties::INFLUENCE, Dune::Amg::EdgeProperties::DEPEND, Dune::Amg::EdgeProperties::SIZE } |
Flags of the link. More... | |
enum | { Dune::Amg::VertexProperties::ISOLATED, Dune::Amg::VertexProperties::VISITED, Dune::Amg::VertexProperties::FRONT, Dune::Amg::VertexProperties::BORDER, Dune::Amg::VertexProperties::SIZE } |
enum | { Dune::Amg::PropertyGraphVertexPropertyMap< G, i >::index = i } |
enum | { Dune::Amg::MAX_PROCESSES = 72000 } |
enum | Dune::Amg::AccumulationMode { Dune::Amg::noAccu = 0, Dune::Amg::atOnceAccu = 1, Dune::Amg::successiveAccu = 2 } |
Identifiers for the different accumulation modes. More... | |
enum | { Dune::Amg::RandomAccessBundledPropertyMap< C, K, i, T, R >::index = i } |
enum | Dune::Amg::SeqOverlappingSchwarzSmootherArgs< T >::Overlap { Dune::Amg::SeqOverlappingSchwarzSmootherArgs< T >::vertex, Dune::Amg::SeqOverlappingSchwarzSmootherArgs< T >::aggregate, Dune::Amg::SeqOverlappingSchwarzSmootherArgs< T >::pairwise, Dune::Amg::SeqOverlappingSchwarzSmootherArgs< T >::none } |
Functions | |
Dune::Amg::AggregationCriterion< T >::AggregationCriterion () | |
Constructor. | |
Dune::Amg::AggregationCriterion< T >::AggregationCriterion (const Parameters &parms) | |
void | Dune::Amg::AggregationCriterion< T >::setDefaultValuesIsotropic (std::size_t dim, std::size_t diameter=2) |
Sets reasonable default values for an isotropic problem. | |
void | Dune::Amg::AggregationCriterion< T >::setDefaultValuesAnisotropic (std::size_t dim, std::size_t diameter=2) |
Sets reasonable default values for an aisotropic problem. | |
template<class T > | |
std::ostream & | Dune::Amg::operator<< (std::ostream &os, const AggregationCriterion< T > &criterion) |
void | Dune::Amg::Dependency< M, N >::init (const Matrix *matrix) |
void | Dune::Amg::Dependency< M, N >::initRow (const Row &row, int index) |
void | Dune::Amg::Dependency< M, N >::examine (const ColIter &col) |
template<class G > | |
void | Dune::Amg::Dependency< M, N >::examine (G &graph, const typename G::EdgeIterator &edge, const ColIter &col) |
bool | Dune::Amg::Dependency< M, N >::isIsolated () |
Dune::Amg::Dependency< M, N >::Dependency (const Parameters &parms) | |
Dune::Amg::Dependency< M, N >::Dependency () | |
void | Dune::Amg::SymmetricDependency< M, N >::init (const Matrix *matrix) |
void | Dune::Amg::SymmetricDependency< M, N >::initRow (const Row &row, int index) |
void | Dune::Amg::SymmetricDependency< M, N >::examine (const ColIter &col) |
template<class G > | |
void | Dune::Amg::SymmetricDependency< M, N >::examine (G &graph, const typename G::EdgeIterator &edge, const ColIter &col) |
bool | Dune::Amg::SymmetricDependency< M, N >::isIsolated () |
Dune::Amg::SymmetricDependency< M, N >::SymmetricDependency (const Parameters &parms) | |
Dune::Amg::SymmetricDependency< M, N >::SymmetricDependency () | |
template<class M > | |
M::field_type | Dune::Amg::Diagonal< N >::operator() (const M &m) const |
compute the norm of a matrix. | |
template<class M > | |
M::field_type | Dune::Amg::RowSum::operator() (const M &m) const |
compute the norm of a matrix. | |
template<class M > | |
M::field_type | Dune::Amg::FrobeniusNorm::operator() (const M &m) const |
compute the norm of a matrix. | |
template<class M > | |
M::field_type | Dune::Amg::AlwaysOneNorm::operator() (const M &m) const |
compute the norm of a matrix. | |
Dune::Amg::SymmetricCriterion< M, Norm >::SymmetricCriterion (const Parameters &parms) | |
Dune::Amg::SymmetricCriterion< M, Norm >::SymmetricCriterion () | |
Dune::Amg::UnSymmetricCriterion< M, Norm >::UnSymmetricCriterion (const Parameters &parms) | |
Dune::Amg::UnSymmetricCriterion< M, Norm >::UnSymmetricCriterion () | |
template<class EdgeIterator > | |
void | Dune::Amg::AggregatesMap< V >::DummyEdgeVisitor::operator() (const EdgeIterator &egde) const |
Dune::Amg::AggregatesMap< V >::AggregatesMap () | |
Constructs without allocating memory. | |
Dune::Amg::AggregatesMap< V >::AggregatesMap (std::size_t noVertices) | |
Constructs with allocating memory. | |
Dune::Amg::AggregatesMap< V >::~AggregatesMap () | |
Destructor. | |
template<class M , class G , class C > | |
tuple< int, int, int, int > | Dune::Amg::AggregatesMap< V >::buildAggregates (const M &matrix, G &graph, const C &criterion, bool finestLevel) |
Build the aggregates. | |
template<bool reset, class G , class F , class VM > | |
std::size_t | Dune::Amg::AggregatesMap< V >::breadthFirstSearch (const VertexDescriptor &start, const AggregateDescriptor &aggregate, const G &graph, F &aggregateVisitor, VM &visitedMap) const |
Breadth first search within an aggregate. | |
template<bool remove, bool reset, class G , class L , class F1 , class F2 , class VM > | |
std::size_t | Dune::Amg::AggregatesMap< V >::breadthFirstSearch (const VertexDescriptor &start, const AggregateDescriptor &aggregate, const G &graph, L &visited, F1 &aggregateVisitor, F2 &nonAggregateVisitor, VM &visitedMap) const |
Breadth first search within an aggregate. | |
void | Dune::Amg::AggregatesMap< V >::allocate (std::size_t noVertices) |
Allocate memory for holding the information. | |
std::size_t | Dune::Amg::AggregatesMap< V >::noVertices () const |
Get the number of vertices. | |
void | Dune::Amg::AggregatesMap< V >::free () |
Free the allocated memory. | |
AggregateDescriptor & | Dune::Amg::AggregatesMap< V >::operator[] (const VertexDescriptor &v) |
Get the aggregate a vertex belongs to. | |
const AggregateDescriptor & | Dune::Amg::AggregatesMap< V >::operator[] (const VertexDescriptor &v) const |
Get the aggregate a vertex belongs to. | |
const_iterator | Dune::Amg::AggregatesMap< V >::begin () const |
const_iterator | Dune::Amg::AggregatesMap< V >::end () const |
iterator | Dune::Amg::AggregatesMap< V >::begin () |
iterator | Dune::Amg::AggregatesMap< V >::end () |
template<class G , class C > | |
void | Dune::Amg::buildDependency (G &graph, const typename C::Matrix &matrix, C criterion, bool finestLevel) |
Build the dependency of the matrix graph. | |
Dune::Amg::Aggregate< G, S >::Aggregate (const MatrixGraph &graph, AggregatesMap< Vertex > &aggregates, VertexSet &connectivity) | |
Constructor. | |
void | Dune::Amg::Aggregate< G, S >::reconstruct (const Vertex &vertex) |
Reconstruct the aggregat from an seed node. | |
void | Dune::Amg::Aggregate< G, S >::seed (const Vertex &vertex) |
Initialize the aggregate with one vertex. | |
void | Dune::Amg::Aggregate< G, S >::add (const Vertex &vertex) |
Add a vertex to the aggregate. | |
void | Dune::Amg::Aggregate< G, S >::clear () |
Clear the aggregate. | |
VertexList::size_type | Dune::Amg::Aggregate< G, S >::size () |
Get the size of the aggregate. | |
VertexList::size_type | Dune::Amg::Aggregate< G, S >::connectSize () |
Get tne number of connections to other aggregates. | |
int | Dune::Amg::Aggregate< G, S >::id () |
Get the id identifying the aggregate. | |
const_iterator | Dune::Amg::Aggregate< G, S >::begin () const |
get an iterator over the vertices of the aggregate. | |
const_iterator | Dune::Amg::Aggregate< G, S >::end () const |
get an iterator over the vertices of the aggregate. | |
Dune::Amg::Aggregator< G >::Aggregator () | |
Constructor. | |
Dune::Amg::Aggregator< G >::~Aggregator () | |
Destructor. | |
template<class M , class C > | |
tuple< int, int, int, int > | Dune::Amg::Aggregator< G >::build (const M &m, G &graph, AggregatesMap< Vertex > &aggregates, const C &c, bool finestLevel) |
Build the aggregates. | |
Dune::Amg::Aggregator< G >::Stack::Stack (const MatrixGraph &graph, const Aggregator< G > &aggregatesBuilder, const AggregatesMap< Vertex > &aggregates) | |
Dune::Amg::Aggregator< G >::Stack::~Stack () | |
bool | Dune::Amg::Aggregator< G >::Stack::push (const Vertex &v) |
void | Dune::Amg::Aggregator< G >::Stack::fill () |
Vertex | Dune::Amg::Aggregator< G >::Stack::pop () |
Dune::Amg::Aggregator< G >::AggregateVisitor< V >::AggregateVisitor (const AggregatesMap< Vertex > &aggregates, const AggregateDescriptor &aggregate, Visitor &visitor) | |
Constructor. | |
void | Dune::Amg::Aggregator< G >::AggregateVisitor< V >::operator() (const typename MatrixGraph::ConstEdgeIterator &edge) |
Examine an edge. | |
Dune::Amg::Aggregator< G >::Counter::Counter () | |
Constructor. | |
int | Dune::Amg::Aggregator< G >::Counter::value () |
Access the current count. | |
void | Dune::Amg::Aggregator< G >::Counter::increment () |
Increment counter. | |
void | Dune::Amg::Aggregator< G >::Counter::decrement () |
Decrement counter. | |
Dune::Amg::Aggregator< G >::FrontNeighbourCounter::FrontNeighbourCounter (const MatrixGraph &front) | |
Constructor. | |
void | Dune::Amg::Aggregator< G >::FrontNeighbourCounter::operator() (const typename MatrixGraph::ConstEdgeIterator &edge) |
void | Dune::Amg::Aggregator< G >::TwoWayCounter::operator() (const typename MatrixGraph::ConstEdgeIterator &edge) |
void | Dune::Amg::Aggregator< G >::OneWayCounter::operator() (const typename MatrixGraph::ConstEdgeIterator &edge) |
Dune::Amg::Aggregator< G >::ConnectivityCounter::ConnectivityCounter (const VertexSet &connected, const AggregatesMap< Vertex > &aggregates) | |
Constructor. | |
void | Dune::Amg::Aggregator< G >::ConnectivityCounter::operator() (const typename MatrixGraph::ConstEdgeIterator &edge) |
Dune::Amg::Aggregator< G >::DependencyCounter::DependencyCounter () | |
Constructor. | |
void | Dune::Amg::Aggregator< G >::DependencyCounter::operator() (const typename MatrixGraph::ConstEdgeIterator &edge) |
Dune::Amg::Aggregator< G >::FrontMarker::FrontMarker (VertexList &front, MatrixGraph &graph) | |
Constructor. | |
void | Dune::Amg::Aggregator< G >::FrontMarker::operator() (const typename MatrixGraph::ConstEdgeIterator &edge) |
template<class V > | |
void | Dune::Amg::printAggregates2d (const AggregatesMap< V > &aggregates, int n, int m, std::ostream &os) |
Dune::Amg::AMG< M, X, S, PI, A >::AMG (const OperatorHierarchy &matrices, CoarseSolver &coarseSolver, const SmootherArgs &smootherArgs, std::size_t gamma, std::size_t preSmoothingSteps, std::size_t postSmoothingSteps, bool additive=false) | |
Construct a new amg with a specific coarse solver. | |
Dune::Amg::AMG< M, X, S, PI, A >::AMG (const OperatorHierarchy &matrices, CoarseSolver &coarseSolver, const SmootherArgs &smootherArgs, const Parameters &parms) | |
Construct a new amg with a specific coarse solver. | |
template<class C > | |
Dune::Amg::AMG< M, X, S, PI, A >::AMG (const Operator &fineOperator, const C &criterion, const SmootherArgs &smootherArgs, std::size_t gamma, std::size_t preSmoothingSteps, std::size_t postSmoothingSteps, bool additive=false, const ParallelInformation &pinfo=ParallelInformation()) | |
Construct an AMG with an inexact coarse solver based on the smoother. | |
template<class C > | |
Dune::Amg::AMG< M, X, S, PI, A >::AMG (const Operator &fineOperator, const C &criterion, const SmootherArgs &smootherArgs, const ParallelInformation &pinfo=ParallelInformation()) | |
Construct an AMG with an inexact coarse solver based on the smoother. | |
Dune::Amg::AMG< M, X, S, PI, A >::~AMG () | |
void | Dune::Amg::AMG< M, X, S, PI, A >::pre (Domain &x, Range &b) |
void | Dune::Amg::AMG< M, X, S, PI, A >::apply (Domain &v, const Range &d) |
void | Dune::Amg::AMG< M, X, S, PI, A >::post (Domain &x) |
template<class A1 > | |
void | Dune::Amg::AMG< M, X, S, PI, A >::getCoarsestAggregateNumbers (std::vector< std::size_t, A1 > &cont) |
Get the aggregate number of each unknown on the coarsest level. | |
std::size_t | Dune::Amg::AMG< M, X, S, PI, A >::levels () |
std::size_t | Dune::Amg::AMG< M, X, S, PI, A >::maxlevels () |
void | Dune::Amg::AMG< M, X, S, PI, A >::recalculateHierarchy () |
Recalculate the matrix hierarchy. | |
bool | Dune::Amg::AMG< M, X, S, PI, A >::usesDirectCoarseLevelSolver () const |
Check whether the coarse solver used is a direct solver. | |
static T * | Dune::Amg::ConstructionTraits< T >::construct (Arguments &args) |
Construct an object with the specified arguments. | |
static void | Dune::Amg::ConstructionTraits< T >::deconstruct (T *t) |
Destroys an object. | |
static BlockVector< T > * | Dune::Amg::ConstructionTraits< BlockVector< T > >::construct (Arguments &n) |
static void | Dune::Amg::ConstructionTraits< BlockVector< T > >::deconstruct (BlockVector< T > *t) |
Dune::Amg::OverlappingSchwarzOperatorArgs< M, C >::OverlappingSchwarzOperatorArgs (M &matrix, C &comm) | |
Dune::Amg::NonoverlappingOperatorArgs< M, C >::NonoverlappingOperatorArgs (M &matrix, C &comm) | |
Dune::Amg::OwnerOverlapCopyCommunicationArgs::OwnerOverlapCopyCommunicationArgs (MPI_Comm comm, SolverCategory::Category cat) | |
Dune::Amg::SequentialCommunicationArgs::SequentialCommunicationArgs (CollectiveCommunication< void * > comm, int cat) | |
Dune::Amg::EdgeProperties::EdgeProperties () | |
Constructor. | |
std::bitset< SIZE >::reference | Dune::Amg::EdgeProperties::operator[] (std::size_t v) |
Access the bits directly. | |
bool | Dune::Amg::EdgeProperties::operator[] (std::size_t v) const |
Acess the bits directly. | |
bool | Dune::Amg::EdgeProperties::depends () const |
Checks wether the vertex the edge points to depends on the vertex the edge starts. | |
void | Dune::Amg::EdgeProperties::setDepends () |
Marks the edge as one of which the end point depends on the starting point. | |
void | Dune::Amg::EdgeProperties::resetDepends () |
Resets the depends flag. | |
bool | Dune::Amg::EdgeProperties::influences () const |
Checks wether the start vertex is influenced by the end vertex. | |
void | Dune::Amg::EdgeProperties::setInfluences () |
Marks the edge as one of which the start vertex by the end vertex. | |
void | Dune::Amg::EdgeProperties::resetInfluences () |
Resets the influence flag. | |
bool | Dune::Amg::EdgeProperties::isOneWay () const |
Checks wether the edge is one way. I.e. either the influence or the depends flag but is set. | |
bool | Dune::Amg::EdgeProperties::isTwoWay () const |
Checks wether the edge is two way. I.e. both the influence flag and the depends flag are that. | |
bool | Dune::Amg::EdgeProperties::isStrong () const |
Checks wether the edge is strong. I.e. the influence or depends flag is set. | |
void | Dune::Amg::EdgeProperties::reset () |
Reset all flags. | |
void | Dune::Amg::EdgeProperties::printFlags () const |
Prints the attributes of the edge for debugging. | |
Dune::Amg::VertexProperties::VertexProperties () | |
Constructor. | |
std::bitset< SIZE >::reference | Dune::Amg::VertexProperties::operator[] (std::size_t v) |
Access the bits directly. | |
bool | Dune::Amg::VertexProperties::operator[] (std::size_t v) const |
Acess the bits directly. | |
void | Dune::Amg::VertexProperties::setIsolated () |
Marks that node as being isolated. | |
bool | Dune::Amg::VertexProperties::isolated () const |
Checks wether the node is isolated. | |
void | Dune::Amg::VertexProperties::resetIsolated () |
Resets the isolated flag. | |
void | Dune::Amg::VertexProperties::setVisited () |
Mark the node as already visited. | |
bool | Dune::Amg::VertexProperties::visited () const |
Checks wether the node is marked as visited. | |
void | Dune::Amg::VertexProperties::resetVisited () |
Resets the visited flag. | |
void | Dune::Amg::VertexProperties::setFront () |
Marks the node as belonging to the current clusters front. | |
bool | Dune::Amg::VertexProperties::front () const |
Checks wether the node is marked as a front node. | |
void | Dune::Amg::VertexProperties::resetFront () |
Resets the front node flag. | |
void | Dune::Amg::VertexProperties::setExcludedBorder () |
Marks the vertex as excluded from the aggregation. | |
bool | Dune::Amg::VertexProperties::excludedBorder () const |
Tests whether the vertex is excluded from the aggregation. | |
void | Dune::Amg::VertexProperties::resetExcludedBorder () |
Marks the vertex as included in the aggregation. | |
void | Dune::Amg::VertexProperties::reset () |
Reset all flags. | |
Dune::Amg::PropertyGraphVertexPropertyMap< G, i >::PropertyGraphVertexPropertyMap (G &g) | |
Constructor. | |
Dune::Amg::PropertyGraphVertexPropertyMap< G, i >::PropertyGraphVertexPropertyMap () | |
Default constructor. | |
Reference | Dune::Amg::PropertyGraphVertexPropertyMap< G, i >::operator[] (const Vertex &vertex) const |
Get the properties associated to a vertex. | |
std::ostream & | Dune::Amg::operator<< (std::ostream &os, const EdgeProperties &props) |
std::ostream & | Dune::Amg::operator<< (std::ostream &os, const VertexProperties &props) |
Dune::Amg::SparsityBuilder< M >::SparsityBuilder (M &matrix) | |
Constructor. | |
void | Dune::Amg::SparsityBuilder< M >::insert (const typename M::size_type &index) |
void | Dune::Amg::SparsityBuilder< M >::operator++ () |
std::size_t | Dune::Amg::SparsityBuilder< M >::minRowSize () |
std::size_t | Dune::Amg::SparsityBuilder< M >::maxRowSize () |
std::size_t | Dune::Amg::SparsityBuilder< M >::sumRowSize () |
std::size_t | Dune::Amg::SparsityBuilder< M >::index () |
template<class M , class V , class I , class O > | |
void | Dune::Amg::BaseGalerkinProduct::calculate (const M &fine, const AggregatesMap< V > &aggregates, M &coarse, const I &pinfo, const O ©) |
Calculate the galerkin product. | |
template<class M , class G , class V , class Set > | |
M * | Dune::Amg::GalerkinProduct< T >::build (const M &fine, G &fineGraph, V &visitedMap, const ParallelInformation &pinfo, AggregatesMap< typename G::VertexDescriptor > &aggregates, const typename M::size_type &size, const Set ©) |
Calculates the coarse matrix via a Galerkin product. | |
bool | Dune::Amg::GalerkinProduct< T >::OVLess< A >::operator() (const OverlapVertex< A > &o1, const OverlapVertex< A > &o2) |
template<class M , class G , class V , class Set > | |
M * | Dune::Amg::GalerkinProduct< SequentialInformation >::build (const M &fine, G &fineGraph, V &visitedMap, const SequentialInformation &pinfo, const AggregatesMap< typename G::VertexDescriptor > &aggregates, const typename M::size_type &size, const Set ©) |
Calculates the coarse matrix via a Galerkin product. | |
template<class R , class G , class V > | |
static void | Dune::Amg::BaseConnectivityConstructor::constructOverlapConnectivity (R &row, G &graph, V &visitedMap, const AggregatesMap< typename G::VertexDescriptor > &aggregates, const OverlapVertex< typename G::VertexDescriptor > *&seed, const OverlapVertex< typename G::VertexDescriptor > *overlapEnd) |
template<class R , class G , class V > | |
static void | Dune::Amg::BaseConnectivityConstructor::constructNonOverlapConnectivity (R &row, G &graph, V &visitedMap, const AggregatesMap< typename G::VertexDescriptor > &aggregates, const typename G::VertexDescriptor &seed) |
Construct the connectivity of an aggregate in the overlap. | |
Dune::Amg::BaseConnectivityConstructor::ConnectedBuilder< G, S, V >::ConnectedBuilder (const AggregatesMap< Vertex > &aggregates, Graph &graph, VisitedMap &visitedMap, Set &connected) | |
Constructor. | |
void | Dune::Amg::BaseConnectivityConstructor::ConnectedBuilder< G, S, V >::operator() (const ConstEdgeIterator &edge) |
Process an edge pointing to another aggregate. | |
template<class V , class O , class R > | |
static void | Dune::Amg::ConnectivityConstructor< G, T >::examine (G &graph, V &visitedMap, const T &pinfo, const AggregatesMap< Vertex > &aggregates, const O &overlap, const OverlapVertex< Vertex > *overlapVertices, const OverlapVertex< Vertex > *overlapEnd, R &row) |
template<class V , class R > | |
static void | Dune::Amg::ConnectivityConstructor< G, SequentialInformation >::examine (G &graph, V &visitedMap, const SequentialInformation &pinfo, const AggregatesMap< Vertex > &aggregates, R &row) |
template<class M , class O > | |
static void | Dune::Amg::DirichletBoundarySetter< T >::set (M &coarse, const T &pinfo, const O ©) |
template<class M , class O > | |
static void | Dune::Amg::DirichletBoundarySetter< SequentialInformation >::set (M &coarse, const SequentialInformation &pinfo, const O ©) |
template<class G , class V > | |
int | Dune::Amg::visitNeighbours (const G &graph, const typename G::VertexDescriptor &vertex, V &visitor) |
Visit all neighbour vertices of a vertex in a graph. | |
template<typename M , typename C1 > | |
bool | Dune::Amg::repartitionAndDistributeMatrix (const M &origMatrix, M &newMatrix, SequentialInformation &origSequentialInformationomm, SequentialInformation *&newComm, RedistributeInformation< SequentialInformation > &ri, int nparts, C1 &criterion) |
template<typename M , typename C , typename C1 > | |
bool | Dune::Amg::repartitionAndDistributeMatrix (const M &origMatrix, M &newMatrix, C &origComm, C *&newComm, RedistributeInformation< C > &ri, int nparts, C1 &criterion) |
template<typename M > | |
bool | Dune::Amg::repartitionAndDistributeMatrix (M &origMatrix, M &newMatrix, SequentialInformation &origComm, SequentialInformation &newComm, RedistributeInformation< SequentialInformation > &ri) |
template<typename Graph , typename VM > | |
static Graph::VertexDescriptor | Dune::Amg::ParallelIndicesCoarsener< T, E >::coarsen (ParallelInformation &fineInfo, Graph &fineGraph, VM &visitedMap, AggregatesMap< typename Graph::VertexDescriptor > &aggregates, ParallelInformation &coarseInfo) |
Build the coarse index set after the aggregatio. | |
Dune::Amg::ParallelIndicesCoarsener< T, E >::ParallelAggregateRenumberer< G, I >::ParallelAggregateRenumberer (AggregatesMap< Vertex > &aggregates, const I &lookup) | |
void | Dune::Amg::ParallelIndicesCoarsener< T, E >::ParallelAggregateRenumberer< G, I >::operator() (const typename G::ConstEdgeIterator &edge) |
Vertex | Dune::Amg::ParallelIndicesCoarsener< T, E >::ParallelAggregateRenumberer< G, I >::operator() (const GlobalIndex &global) |
bool | Dune::Amg::ParallelIndicesCoarsener< T, E >::ParallelAggregateRenumberer< G, I >::isPublic () |
void | Dune::Amg::ParallelIndicesCoarsener< T, E >::ParallelAggregateRenumberer< G, I >::isPublic (bool b) |
void | Dune::Amg::ParallelIndicesCoarsener< T, E >::ParallelAggregateRenumberer< G, I >::reset () |
void | Dune::Amg::ParallelIndicesCoarsener< T, E >::ParallelAggregateRenumberer< G, I >::attribute (const Attribute &attribute) |
Attribute | Dune::Amg::ParallelIndicesCoarsener< T, E >::ParallelAggregateRenumberer< G, I >::attribute () |
const GlobalIndex & | Dune::Amg::ParallelIndicesCoarsener< T, E >::ParallelAggregateRenumberer< G, I >::globalIndex () const |
void | Dune::Amg::ParallelIndicesCoarsener< T, E >::ParallelAggregateRenumberer< G, I >::globalIndex (const GlobalIndex &global) |
template<typename Graph , typename VM > | |
static Graph::VertexDescriptor | Dune::Amg::IndicesCoarsener< SequentialInformation, E >::coarsen (const SequentialInformation &fineInfo, Graph &fineGraph, VM &visitedMap, AggregatesMap< typename Graph::VertexDescriptor > &aggregates, SequentialInformation &coarseInfo) |
Dune::Amg::DependencyParameters::DependencyParameters () | |
Constructor. | |
void | Dune::Amg::DependencyParameters::setBeta (double b) |
Set threshold for marking nodes as isolated. The default value is 1.0E-5. | |
double | Dune::Amg::DependencyParameters::beta () const |
Get the threshold for marking nodes as isolated. The default value is 1.0E-5. | |
void | Dune::Amg::DependencyParameters::setAlpha (double a) |
Set the scaling value for marking connections as strong. Default value is 1/3. | |
double | Dune::Amg::DependencyParameters::alpha () const |
Get the scaling value for marking connections as strong. Default value is 1/3. | |
Dune::Amg::AggregationParameters::AggregationParameters () | |
Constructor. | |
void | Dune::Amg::AggregationParameters::setDefaultValuesIsotropic (std::size_t dim, std::size_t diameter=2) |
Sets reasonable default values for an isotropic problem. | |
void | Dune::Amg::AggregationParameters::setDefaultValuesAnisotropic (std::size_t dim, std::size_t diameter=2) |
Sets reasonable default values for an aisotropic problem. | |
std::size_t | Dune::Amg::AggregationParameters::maxDistance () const |
Get the maximal distance allowed between to nodes in a aggregate. | |
void | Dune::Amg::AggregationParameters::setMaxDistance (std::size_t distance) |
Set the maximal distance allowed between to nodes in a aggregate. | |
bool | Dune::Amg::AggregationParameters::skipIsolated () const |
Whether isolated aggregates will not be represented on the coarse level. | |
void | Dune::Amg::AggregationParameters::setSkipIsolated (bool skip) |
Set whether isolated aggregates will not be represented on the coarse level. | |
std::size_t | Dune::Amg::AggregationParameters::minAggregateSize () const |
Get the minimum number of nodes a aggregate has to consist of. | |
void | Dune::Amg::AggregationParameters::setMinAggregateSize (std::size_t size) |
Set the minimum number of nodes a aggregate has to consist of. | |
std::size_t | Dune::Amg::AggregationParameters::maxAggregateSize () const |
Get the maximum number of nodes a aggregate is allowed to have. | |
void | Dune::Amg::AggregationParameters::setMaxAggregateSize (std::size_t size) |
Set the maximum number of nodes a aggregate is allowed to have. | |
std::size_t | Dune::Amg::AggregationParameters::maxConnectivity () const |
Get the maximum number of connections a aggregate is allowed to have. | |
void | Dune::Amg::AggregationParameters::setMaxConnectivity (std::size_t connectivity) |
Set the maximum number of connections a aggregate is allowed to have. | |
void | Dune::Amg::CoarseningParameters::setMaxLevel (int l) |
Set the maximum number of levels allowed in the hierarchy. | |
int | Dune::Amg::CoarseningParameters::maxLevel () const |
Get the maximum number of levels allowed in the hierarchy. | |
void | Dune::Amg::CoarseningParameters::setCoarsenTarget (int nodes) |
Set the maximum number of unknowns allowed on the coarsest level. | |
int | Dune::Amg::CoarseningParameters::coarsenTarget () const |
Get the maximum number of unknowns allowed on the coarsest level. | |
void | Dune::Amg::CoarseningParameters::setMinCoarsenRate (double rate) |
Set the minimum coarsening rate to be achieved in each coarsening. | |
double | Dune::Amg::CoarseningParameters::minCoarsenRate () const |
Get the minimum coarsening rate to be achieved. | |
AccumulationMode | Dune::Amg::CoarseningParameters::accumulate () const |
Whether the data should be accumulated on fewer processes on coarser levels. | |
void | Dune::Amg::CoarseningParameters::setAccumulate (AccumulationMode accu) |
Set whether he data should be accumulated on fewer processes on coarser levels. | |
void | Dune::Amg::CoarseningParameters::setAccumulate (bool accu) |
void | Dune::Amg::CoarseningParameters::setProlongationDampingFactor (double d) |
Set the damping factor for the prolongation. | |
double | Dune::Amg::CoarseningParameters::getProlongationDampingFactor () const |
Get the damping factor for the prolongation. | |
Dune::Amg::CoarseningParameters::CoarseningParameters (int maxLevel=100, int coarsenTarget=1000, double minCoarsenRate=1.2, double prolongDamp=1.6, AccumulationMode accumulate=successiveAccu) | |
Constructor. | |
void | Dune::Amg::Parameters::setDebugLevel (int level) |
Set the debugging level. | |
int | Dune::Amg::Parameters::debugLevel () const |
Get the debugging Level. | |
void | Dune::Amg::Parameters::setNoPreSmoothSteps (std::size_t steps) |
Set the number of presmoothing steps to apply. | |
std::size_t | Dune::Amg::Parameters::getNoPreSmoothSteps () const |
Get the number of presmoothing steps to apply. | |
void | Dune::Amg::Parameters::setNoPostSmoothSteps (std::size_t steps) |
Set the number of postsmoothing steps to apply. | |
std::size_t | Dune::Amg::Parameters::getNoPostSmoothSteps () const |
Get the number of postsmoothing steps to apply. | |
void | Dune::Amg::Parameters::setGamma (std::size_t gamma) |
Set the value of gamma; 1 for V-cycle, 2 for W-cycle. | |
std::size_t | Dune::Amg::Parameters::getGamma () const |
Get the value of gamma; 1 for V-cycle, 2 for W-cycle. | |
void | Dune::Amg::Parameters::setAdditive (bool additive) |
Set whether to use additive multigrid. | |
bool | Dune::Amg::Parameters::getAdditive () const |
Get whether to use additive multigrid. | |
Dune::Amg::Parameters::Parameters (int maxLevel=100, int coarsenTarget=1000, double minCoarsenRate=1.2, double prolongDamp=1.6, AccumulationMode accumulate=successiveAccu) | |
Constructor. | |
Reference | Dune::Amg::RandomAccessBundledPropertyMap< C, K, i, T, R >::operator[] (const Key &key) const |
Get the property for a key. | |
Dune::Amg::RandomAccessBundledPropertyMap< C, K, i, T, R >::RandomAccessBundledPropertyMap (Container &container) | |
Constructor. | |
Dune::Amg::RandomAccessBundledPropertyMap< C, K, i, T, R >::RandomAccessBundledPropertyMap () | |
The default constructor. | |
Dune::Amg::DefaultSmootherArgs< T >::DefaultSmootherArgs () | |
Default constructor. | |
virtual | Dune::Amg::DefaultConstructionArgs< T >::~DefaultConstructionArgs () |
void | Dune::Amg::DefaultConstructionArgs< T >::setMatrix (const Matrix &matrix) |
virtual void | Dune::Amg::DefaultConstructionArgs< T >::setMatrix (const Matrix &matrix, const AggregatesMap &amap) |
const Matrix & | Dune::Amg::DefaultConstructionArgs< T >::getMatrix () const |
void | Dune::Amg::DefaultConstructionArgs< T >::setArgs (const SmootherArgs &args) |
template<class T1 > | |
void | Dune::Amg::DefaultConstructionArgs< T >::setComm (T1 &comm) |
const SmootherArgs | Dune::Amg::DefaultConstructionArgs< T >::getArgs () const |
virtual | Dune::Amg::DefaultParallelConstructionArgs< T, C >::~DefaultParallelConstructionArgs () |
void | Dune::Amg::DefaultParallelConstructionArgs< T, C >::setComm (const C &comm) |
const C & | Dune::Amg::DefaultParallelConstructionArgs< T, C >::getComm () const |
static SeqSSOR< M, X, Y, l > * | Dune::Amg::ConstructionTraits< SeqSSOR< M, X, Y, l > >::construct (Arguments &args) |
static void | Dune::Amg::ConstructionTraits< SeqSSOR< M, X, Y, l > >::deconstruct (SeqSSOR< M, X, Y, l > *ssor) |
static SeqSOR< M, X, Y, l > * | Dune::Amg::ConstructionTraits< SeqSOR< M, X, Y, l > >::construct (Arguments &args) |
static void | Dune::Amg::ConstructionTraits< SeqSOR< M, X, Y, l > >::deconstruct (SeqSOR< M, X, Y, l > *sor) |
static SeqJac< M, X, Y, l > * | Dune::Amg::ConstructionTraits< SeqJac< M, X, Y, l > >::construct (Arguments &args) |
static void | Dune::Amg::ConstructionTraits< SeqJac< M, X, Y, l > >::deconstruct (SeqJac< M, X, Y, l > *jac) |
static SeqILU0< M, X, Y > * | Dune::Amg::ConstructionTraits< SeqILU0< M, X, Y > >::construct (Arguments &args) |
static void | Dune::Amg::ConstructionTraits< SeqILU0< M, X, Y > >::deconstruct (SeqILU0< M, X, Y > *ilu) |
Dune::Amg::ConstructionArgs< SeqILUn< M, X, Y > >::ConstructionArgs (int n=1) | |
void | Dune::Amg::ConstructionArgs< SeqILUn< M, X, Y > >::setN (int n) |
int | Dune::Amg::ConstructionArgs< SeqILUn< M, X, Y > >::getN () |
static SeqILUn< M, X, Y > * | Dune::Amg::ConstructionTraits< SeqILUn< M, X, Y > >::construct (Arguments &args) |
static void | Dune::Amg::ConstructionTraits< SeqILUn< M, X, Y > >::deconstruct (SeqILUn< M, X, Y > *ilu) |
static ParSSOR< M, X, Y, C > * | Dune::Amg::ConstructionTraits< ParSSOR< M, X, Y, C > >::construct (Arguments &args) |
static void | Dune::Amg::ConstructionTraits< ParSSOR< M, X, Y, C > >::deconstruct (ParSSOR< M, X, Y, C > *ssor) |
static BlockPreconditioner< X, Y, C, T > * | Dune::Amg::ConstructionTraits< BlockPreconditioner< X, Y, C, T > >::construct (Arguments &args) |
static void | Dune::Amg::ConstructionTraits< BlockPreconditioner< X, Y, C, T > >::deconstruct (BlockPreconditioner< X, Y, C, T > *bp) |
static NonoverlappingBlockPreconditioner < C, T > * | Dune::Amg::ConstructionTraits< NonoverlappingBlockPreconditioner< C, T > >::construct (Arguments &args) |
static void | Dune::Amg::ConstructionTraits< NonoverlappingBlockPreconditioner< C, T > >::deconstruct (NonoverlappingBlockPreconditioner< C, T > *bp) |
static void | Dune::Amg::SmootherApplier< T >::preSmooth (Smoother &smoother, Domain &v, const Range &d) |
apply pre smoothing in forward direction | |
static void | Dune::Amg::SmootherApplier< T >::postSmooth (Smoother &smoother, Domain &v, const Range &d) |
apply post smoothing in forward direction | |
static void | Dune::Amg::SmootherApplier< SeqSOR< M, X, Y, l > >::preSmooth (Smoother &smoother, Domain &v, Range &d) |
static void | Dune::Amg::SmootherApplier< SeqSOR< M, X, Y, l > >::postSmooth (Smoother &smoother, Domain &v, Range &d) |
static void | Dune::Amg::SmootherApplier< BlockPreconditioner< X, Y, C, SeqSOR< M, X, Y, l > > >::preSmooth (Smoother &smoother, Domain &v, Range &d) |
static void | Dune::Amg::SmootherApplier< BlockPreconditioner< X, Y, C, SeqSOR< M, X, Y, l > > >::postSmooth (Smoother &smoother, Domain &v, Range &d) |
static void | Dune::Amg::SmootherApplier< NonoverlappingBlockPreconditioner< C, SeqSOR< M, X, Y, l > > >::preSmooth (Smoother &smoother, Domain &v, Range &d) |
static void | Dune::Amg::SmootherApplier< NonoverlappingBlockPreconditioner< C, SeqSOR< M, X, Y, l > > >::postSmooth (Smoother &smoother, Domain &v, Range &d) |
static void | Dune::Amg::SmootherApplier< SeqOverlappingSchwarz< M, X, MultiplicativeSchwarzMode, MS, TA > >::preSmooth (Smoother &smoother, Domain &v, const Range &d) |
static void | Dune::Amg::SmootherApplier< SeqOverlappingSchwarz< M, X, MultiplicativeSchwarzMode, MS, TA > >::postSmooth (Smoother &smoother, Domain &v, const Range &d) |
Dune::Amg::SeqOverlappingSchwarzSmootherArgs< T >::SeqOverlappingSchwarzSmootherArgs (Overlap overlap_=vertex, bool onthefly_=false) | |
virtual void | Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::setMatrix (const M &matrix, const AggregatesMap &amap) |
void | Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::setMatrix (const M &matrix) |
const Vector & | Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::getSubDomains () |
Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::VertexAdder::VertexAdder (Vector &subdomains_, const AggregatesMap &aggregates_) | |
template<class T > | |
void | Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::VertexAdder::operator() (const T &edge) |
int | Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::VertexAdder::setAggregate (const AggregateDescriptor &aggregate_) |
int | Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::VertexAdder::noSubdomains () const |
template<class T > | |
void | Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::NoneAdder::operator() (const T &edge) |
int | Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::NoneAdder::setAggregate (const AggregateDescriptor &aggregate_) |
int | Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::NoneAdder::noSubdomains () const |
Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::AggregateAdder< VM >::AggregateAdder (Vector &subdomains_, const AggregatesMap &aggregates_, const MatrixGraph< const M > &graph_, VM &visitedMap_) | |
template<class T > | |
void | Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::AggregateAdder< VM >::operator() (const T &edge) |
int | Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::AggregateAdder< VM >::setAggregate (const AggregateDescriptor &aggregate_) |
int | Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::AggregateAdder< VM >::noSubdomains () const |
static SeqOverlappingSchwarz < M, X, TM, TS, TA > * | Dune::Amg::ConstructionTraits< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::construct (Arguments &args) |
static void | Dune::Amg::ConstructionTraits< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::deconstruct (SeqOverlappingSchwarz< M, X, TM, TS, TA > *schwarz) |
template<class M , class V , class P , class O > | |
void | Dune::Amg::BaseGalerkinProduct::calculate (const M &fine, const AggregatesMap< V > &aggregates, M &coarse, const P &pinfo, const O ©) |
Dune::Amg::MatrixHierarchy< M, PI, A >::MatrixHierarchy (const MatrixOperator &fineMatrix, const ParallelInformation &pinfo=ParallelInformation()) | |
Constructor. | |
template<typename O , typename T > | |
void | Dune::Amg::MatrixHierarchy< M, PI, A >::build (const T &criterion) |
Build the matrix hierarchy using aggregation. | |
const ParallelMatrixHierarchy & | Dune::Amg::MatrixHierarchy< M, PI, A >::matrices () const |
Get the matrix hierarchy. | |
const ParallelInformationHierarchy & | Dune::Amg::MatrixHierarchy< M, PI, A >::parallelInformation () const |
Get the hierarchy of the parallel data distribution information. | |
void | Dune::Amg::MatrixHierarchy< M, PI, A >::getCoarsestAggregatesOnFinest (std::vector< std::size_t > &data) const |
Get the mapping of fine level unknowns to coarse level aggregates. | |
const AggregatesMapList & | Dune::Amg::MatrixHierarchy< M, PI, A >::aggregatesMaps () const |
Get the hierarchy of the mappings of the nodes onto aggregates. | |
const RedistributeInfoList & | Dune::Amg::MatrixHierarchy< M, PI, A >::redistributeInformation () const |
Get the hierachy of the information about redistributions,. | |
Dune::Amg::MatrixHierarchy< M, PI, A >::~MatrixHierarchy () | |
template<class V , class TA > | |
void | Dune::Amg::MatrixHierarchy< M, PI, A >::coarsenVector (Hierarchy< BlockVector< V, TA > > &hierarchy) const |
Coarsen the vector hierarchy according to the matrix hierarchy. | |
template<class S , class TA > | |
void | Dune::Amg::MatrixHierarchy< M, PI, A >::coarsenSmoother (Hierarchy< S, TA > &smoothers, const typename SmootherTraits< S >::Arguments &args) const |
Coarsen the smoother hierarchy according to the matrix hierarchy. | |
template<class F > | |
void | Dune::Amg::MatrixHierarchy< M, PI, A >::recalculateGalerkin (const F ©Flags) |
Recalculate the galerkin products. | |
std::size_t | Dune::Amg::MatrixHierarchy< M, PI, A >::levels () const |
Get the number of levels in the hierarchy. | |
std::size_t | Dune::Amg::MatrixHierarchy< M, PI, A >::maxlevels () const |
Get the max number of levels in the hierarchy of processors. | |
bool | Dune::Amg::MatrixHierarchy< M, PI, A >::hasCoarsest () const |
bool | Dune::Amg::MatrixHierarchy< M, PI, A >::isBuilt () const |
Whether the hierarchy was built. | |
Dune::Amg::Hierarchy< T, A >::Hierarchy () | |
Construct a new empty hierarchy. | |
Dune::Amg::Hierarchy< T, A >::Hierarchy (MemberType &first) | |
Construct a new hierarchy. | |
Dune::Amg::Hierarchy< T, A >::~Hierarchy () | |
Destructor. | |
std::size_t | Dune::Amg::Hierarchy< T, A >::levels () const |
Get the number of levels in the hierarchy. | |
void | Dune::Amg::Hierarchy< T, A >::addRedistributedOnCoarsest (Arguments &args) |
void | Dune::Amg::Hierarchy< T, A >::addCoarser (Arguments &args) |
Add an element on a coarser level. | |
void | Dune::Amg::Hierarchy< T, A >::addFiner (Arguments &args) |
Add an element on a finer level. | |
Iterator | Dune::Amg::Hierarchy< T, A >::finest () |
Get an iterator positioned at the finest level. | |
Iterator | Dune::Amg::Hierarchy< T, A >::coarsest () |
Get an iterator positioned at the coarsest level. | |
ConstIterator | Dune::Amg::Hierarchy< T, A >::finest () const |
Get an iterator positioned at the finest level. | |
ConstIterator | Dune::Amg::Hierarchy< T, A >::coarsest () const |
Get an iterator positioned at the coarsest level. | |
Dune::Amg::KAMG< M, X, S, PI, K, A >::KAMG (const OperatorHierarchy &matrices, CoarseSolver &coarseSolver, const SmootherArgs &smootherArgs, std::size_t gamma, std::size_t preSmoothingSteps=1, std::size_t postSmoothingSteps=1, std::size_t maxLevelKrylovSteps=3, double minDefectReduction=1e-1) | |
Construct a new amg with a specific coarse solver. | |
template<class C > | |
Dune::Amg::KAMG< M, X, S, PI, K, A >::KAMG (const Operator &fineOperator, const C &criterion, const SmootherArgs &smootherArgs, std::size_t gamma=1, std::size_t preSmoothingSteps=1, std::size_t postSmoothingSteps=1, std::size_t maxLevelKrylovSteps=3, double minDefectReduction=1e-1, const ParallelInformation &pinfo=ParallelInformation()) | |
Construct an AMG with an inexact coarse solver based on the smoother. | |
void | Dune::Amg::KAMG< M, X, S, PI, K, A >::pre (Domain &x, Range &b) |
void | Dune::Amg::KAMG< M, X, S, PI, K, A >::post (Domain &x) |
void | Dune::Amg::KAMG< M, X, S, PI, K, A >::apply (Domain &x, const Range &b) |
std::size_t | Dune::Amg::KAMG< M, X, S, PI, K, A >::maxlevels () |
template<typename T > | |
void | Dune::Amg::Transfer< V, V1, SequentialInformation >::prolongate (const AggregatesMap< Vertex > &aggregates, Vector &coarse, Vector &fine, Vector &fineRedist, T damp, const SequentialInformation &comm, const Redist &redist) |
template<typename T > | |
void | Dune::Amg::Transfer< V, V1, SequentialInformation >::prolongate (const AggregatesMap< Vertex > &aggregates, Vector &coarse, Vector &fine, T damp, const SequentialInformation &comm) |
static void | Dune::Amg::Transfer< V, V1, SequentialInformation >::restrict (const AggregatesMap< Vertex > &aggregates, Vector &coarse, const Vector &fine, const SequentialInformation &comm) |
template<typename T3 > | |
static void | Dune::Amg::Transfer< V, V1, OwnerOverlapCopyCommunication< T1, T2 > >::prolongate (const AggregatesMap< Vertex > &aggregates, Vector &coarse, Vector &fine, Vector &fineRedist, T3 damp, OwnerOverlapCopyCommunication< T1, T2 > &comm, const Redist &redist) |
template<typename T3 > | |
static void | Dune::Amg::Transfer< V, V1, OwnerOverlapCopyCommunication< T1, T2 > >::prolongate (const AggregatesMap< Vertex > &aggregates, Vector &coarse, Vector &fine, T3 damp, OwnerOverlapCopyCommunication< T1, T2 > &comm) |
static void | Dune::Amg::Transfer< V, V1, OwnerOverlapCopyCommunication< T1, T2 > >::restrict (const AggregatesMap< Vertex > &aggregates, Vector &coarse, const Vector &fine, OwnerOverlapCopyCommunication< T1, T2 > &comm) |
Variables | |
const Matrix * | Dune::Amg::Dependency< M, N >::matrix_ |
The matrix we work on. | |
Matrix::field_type | Dune::Amg::Dependency< M, N >::maxValue_ |
The current max value. | |
Norm | Dune::Amg::Dependency< M, N >::norm_ |
The functor for calculating the norm. | |
int | Dune::Amg::Dependency< M, N >::row_ |
index of the currently evaluated row. | |
Matrix::field_type | Dune::Amg::Dependency< M, N >::diagonal_ |
The norm of the current diagonal. | |
const Matrix * | Dune::Amg::SymmetricDependency< M, N >::matrix_ |
The matrix we work on. | |
Matrix::field_type | Dune::Amg::SymmetricDependency< M, N >::maxValue_ |
The current max value. | |
Norm | Dune::Amg::SymmetricDependency< M, N >::norm_ |
The functor for calculating the norm. | |
int | Dune::Amg::SymmetricDependency< M, N >::row_ |
index of the currently evaluated row. | |
Matrix::field_type | Dune::Amg::SymmetricDependency< M, N >::diagonal_ |
The norm of the current diagonal. | |
static const V | Dune::Amg::AggregatesMap< V >::UNAGGREGATED |
Identifier of not yet aggregated vertices. | |
static const V | Dune::Amg::AggregatesMap< V >::ISOLATED |
Identifier of isolated vertices. | |
static const Vertex | Dune::Amg::Aggregator< G >::Stack::NullEntry |
M * | Dune::Amg::OverlappingSchwarzOperatorArgs< M, C >::matrix_ |
C * | Dune::Amg::OverlappingSchwarzOperatorArgs< M, C >::comm_ |
M * | Dune::Amg::NonoverlappingOperatorArgs< M, C >::matrix_ |
C * | Dune::Amg::NonoverlappingOperatorArgs< M, C >::comm_ |
MPI_Comm | Dune::Amg::OwnerOverlapCopyCommunicationArgs::comm_ |
SolverCategory::Category | Dune::Amg::OwnerOverlapCopyCommunicationArgs::cat_ |
CollectiveCommunication< void * > | Dune::Amg::SequentialCommunicationArgs::comm_ |
Aggregate * | Dune::Amg::OverlapVertex< T >::aggregate |
The aggregate the vertex belongs to. | |
Vertex | Dune::Amg::OverlapVertex< T >::vertex |
The vertex descriptor. | |
int | Dune::Amg::DefaultSmootherArgs< T >::iterations |
The numbe of iterations to perform. | |
RelaxationFactor | Dune::Amg::DefaultSmootherArgs< T >::relaxationFactor |
The relaxation factor to use. | |
const Matrix * | Dune::Amg::DefaultConstructionArgs< T >::matrix_ |
Overlap | Dune::Amg::SeqOverlappingSchwarzSmootherArgs< T >::overlap |
bool | Dune::Amg::SeqOverlappingSchwarzSmootherArgs< T >::onthefly |
Friends | |
class | Dune::Amg::Aggregator< G >::Stack |
class | Dune::Amg::AMG< M, X, S, PI, A >::KAMG |
class | Dune::Amg::AMG< M, X, S, PI, A >::KAmgTwoGrid< AMG > |
std::ostream & | Dune::Amg::EdgeProperties::operator<< (std::ostream &os, const EdgeProperties &props) |
std::ostream & | Dune::Amg::VertexProperties::operator<< (std::ostream &os, const VertexProperties &props) |
A Parallel Algebraic Multigrid based on Agglomeration.
typedef T Dune::Amg::OverlapVertex< T >::Aggregate |
The aggregate descriptor.
typedef V Dune::Amg::AggregatesMap< V >::AggregateDescriptor |
The aggregate descriptor type.
typedef AggregatesMap::AggregateDescriptor Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::AggregateDescriptor |
typedef MatrixGraph::VertexDescriptor Dune::Amg::Aggregator< G >::AggregateDescriptor |
The type of the aggregate descriptor.
typedef Dune::Amg::AggregatesMap<VertexDescriptor> Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::AggregatesMap |
Reimplemented from Dune::Amg::DefaultConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >.
typedef PoolAllocator<VertexDescriptor,100> Dune::Amg::AggregatesMap< V >::Allocator |
The allocator we use for our lists and the set.
typedef PoolAllocator<Vertex,100> Dune::Amg::Aggregate< G, S >::Allocator |
The allocator we use for our lists and the set.
typedef const void* Dune::Amg::ConstructionTraits< T >::Arguments |
A type holding all the arguments needed to call the constructor.
typedef DefaultSmootherArgs<typename T::matrix_type::field_type> Dune::Amg::SmootherTraits< T >::Arguments |
typedef DefaultSmootherArgs<typename T::matrix_type::field_type> Dune::Amg::SmootherTraits< BlockPreconditioner< X, Y, C, T > >::Arguments |
typedef const int Dune::Amg::ConstructionTraits< BlockVector< T > >::Arguments |
typedef DefaultSmootherArgs<typename T::matrix_type::field_type> Dune::Amg::SmootherTraits< NonoverlappingBlockPreconditioner< C, T > >::Arguments |
typedef DefaultConstructionArgs<SeqSSOR<M,X,Y,l> > Dune::Amg::ConstructionTraits< SeqSSOR< M, X, Y, l > >::Arguments |
typedef DefaultConstructionArgs<SeqSOR<M,X,Y,l> > Dune::Amg::ConstructionTraits< SeqSOR< M, X, Y, l > >::Arguments |
typedef DefaultConstructionArgs<SeqJac<M,X,Y,l> > Dune::Amg::ConstructionTraits< SeqJac< M, X, Y, l > >::Arguments |
typedef DefaultConstructionArgs<SeqILU0<M,X,Y> > Dune::Amg::ConstructionTraits< SeqILU0< M, X, Y > >::Arguments |
typedef ConstructionArgs<SeqILUn<M,X,Y> > Dune::Amg::ConstructionTraits< SeqILUn< M, X, Y > >::Arguments |
typedef DefaultParallelConstructionArgs<M,C> Dune::Amg::ConstructionTraits< ParSSOR< M, X, Y, C > >::Arguments |
typedef DefaultParallelConstructionArgs<T,C> Dune::Amg::ConstructionTraits< BlockPreconditioner< X, Y, C, T > >::Arguments |
typedef DefaultParallelConstructionArgs<T,C> Dune::Amg::ConstructionTraits< NonoverlappingBlockPreconditioner< C, T > >::Arguments |
typedef SeqOverlappingSchwarzSmootherArgs<typename M::field_type> Dune::Amg::SmootherTraits< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::Arguments |
typedef ConstructionArgs<SeqOverlappingSchwarz<M,X,TM,TS,TA> > Dune::Amg::ConstructionTraits< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::Arguments |
typedef LocalIndex::Attribute Dune::Amg::ParallelIndicesCoarsener< T, E >::Attribute |
The type of the attribute.
typedef std::bitset<VertexProperties::SIZE> Dune::Amg::PropertyGraphVertexPropertyMap< G, i >::BitSet |
The type of the bitset.
typedef LvaluePropertyMapTag Dune::Amg::RandomAccessBundledPropertyMap< C, K, i, T, R >::Category |
The category of the property map.
typedef ReadWritePropertyMapTag Dune::Amg::PropertyGraphVertexPropertyMap< G, i >::Category |
typedef InverseOperator<X,X> Dune::Amg::AMG< M, X, S, PI, A >::CoarseSolver |
the type of the coarse solver.
typedef Matrix::ConstColIterator Dune::Amg::Dependency< M, N >::ColIter |
Constant column iterator of the matrix.
typedef Matrix::ConstColIterator Dune::Amg::SymmetricDependency< M, N >::ColIter |
Constant column iterator of the matrix.
typedef const AggregateDescriptor* Dune::Amg::AggregatesMap< V >::const_iterator |
typedef VertexList::const_iterator Dune::Amg::Aggregate< G, S >::const_iterator |
Const iterator over a vertex list.
typedef Graph::ConstEdgeIterator Dune::Amg::BaseConnectivityConstructor::ConnectedBuilder< G, S, V >::ConstEdgeIterator |
The constant edge iterator.
typedef C Dune::Amg::RandomAccessBundledPropertyMap< C, K, i, T, R >::Container |
The container that holds the properties.
typedef T Dune::Amg::AggregationCriterion< T >::DependencyPolicy |
The policy for calculating the dependency graph.
typedef X Dune::Amg::AMG< M, X, S, PI, A >::Domain |
The domain type.
typedef Smoother::domain_type Dune::Amg::SmootherApplier< T >::Domain |
typedef Smoother::domain_type Dune::Amg::SmootherApplier< SeqSOR< M, X, Y, l > >::Domain |
typedef Smoother::domain_type Dune::Amg::SmootherApplier< BlockPreconditioner< X, Y, C, SeqSOR< M, X, Y, l > > >::Domain |
typedef Smoother::domain_type Dune::Amg::SmootherApplier< NonoverlappingBlockPreconditioner< C, SeqSOR< M, X, Y, l > > >::Domain |
typedef Smoother::domain_type Dune::Amg::SmootherApplier< SeqOverlappingSchwarz< M, X, MultiplicativeSchwarzMode, MS, TA > >::Domain |
typedef E Dune::Amg::ParallelIndicesCoarsener< T, E >::ExcludedAttributes |
The set of excluded attributes.
typedef ParallelIndexSet::GlobalIndex Dune::Amg::ParallelIndicesCoarsener< T, E >::GlobalIndex |
The type of the global index.
typedef G Dune::Amg::BaseConnectivityConstructor::ConnectedBuilder< G, S, V >::Graph |
The type of the graph.
typedef G Dune::Amg::PropertyGraphVertexPropertyMap< G, i >::Graph |
The type of the graph with internal properties.
typedef AggregateDescriptor* Dune::Amg::AggregatesMap< V >::iterator |
typedef K Dune::Amg::RandomAccessBundledPropertyMap< C, K, i, T, R >::Key |
The key of the property map.
typedef ParallelIndexSet::LocalIndex Dune::Amg::ParallelIndicesCoarsener< T, E >::LocalIndex |
The type of the local index.
typedef M Dune::Amg::Dependency< M, N >::Matrix |
The matrix type we build the dependency of.
typedef M Dune::Amg::SymmetricDependency< M, N >::Matrix |
The matrix type we build the dependency of.
typedef G Dune::Amg::Aggregate< G, S >::MatrixGraph |
typedef G Dune::Amg::Aggregator< G >::MatrixGraph |
The matrix graph type used.
typedef N Dune::Amg::Dependency< M, N >::Norm |
The norm to use for examining the matrix entries.
typedef N Dune::Amg::SymmetricDependency< M, N >::Norm |
The norm to use for examining the matrix entries.
typedef M Dune::Amg::AMG< M, X, S, PI, A >::Operator |
The matrix operator type.
typedef MatrixHierarchy<M, ParallelInformation, A> Dune::Amg::AMG< M, X, S, PI, A >::OperatorHierarchy |
The operator hierarchy type.
typedef ParallelInformation::ParallelIndexSet Dune::Amg::ParallelIndicesCoarsener< T, E >::ParallelIndexSet |
typedef T Dune::Amg::ParallelIndicesCoarsener< T, E >::ParallelInformation |
The type of the parallel information.
typedef PI Dune::Amg::AMG< M, X, S, PI, A >::ParallelInformation |
The type of the parallel information. Either OwnerOverlapCommunication or another type describing the parallel data distribution and providing communication methods.
typedef T Dune::Amg::GalerkinProduct< T >::ParallelInformation |
typedef OperatorHierarchy::ParallelInformationHierarchy Dune::Amg::AMG< M, X, S, PI, A >::ParallelInformationHierarchy |
The parallal data distribution hierarchy type.
typedef X Dune::Amg::AMG< M, X, S, PI, A >::Range |
The range type.
typedef Smoother::range_type Dune::Amg::SmootherApplier< T >::Range |
typedef Smoother::range_type Dune::Amg::SmootherApplier< SeqSOR< M, X, Y, l > >::Range |
typedef Smoother::range_type Dune::Amg::SmootherApplier< BlockPreconditioner< X, Y, C, SeqSOR< M, X, Y, l > > >::Range |
typedef Smoother::range_type Dune::Amg::SmootherApplier< NonoverlappingBlockPreconditioner< C, SeqSOR< M, X, Y, l > > >::Range |
typedef Smoother::range_type Dune::Amg::SmootherApplier< SeqOverlappingSchwarz< M, X, MultiplicativeSchwarzMode, MS, TA > >::Range |
typedef R Dune::Amg::RandomAccessBundledPropertyMap< C, K, i, T, R >::Reference |
The reference type of the container.
typedef BitSet::reference Dune::Amg::PropertyGraphVertexPropertyMap< G, i >::Reference |
The reference type.
typedef T Dune::Amg::DefaultSmootherArgs< T >::RelaxationFactor |
The type of the relaxation factor.
typedef Dune::RemoteIndices<ParallelIndexSet> Dune::Amg::ParallelIndicesCoarsener< T, E >::RemoteIndices |
The type of the remote indices.
typedef Matrix::row_type Dune::Amg::Dependency< M, N >::Row |
Constant Row iterator of the matrix.
typedef Matrix::row_type Dune::Amg::SymmetricDependency< M, N >::Row |
Constant Row iterator of the matrix.
typedef ConstructionTraits<T> Dune::Amg::ConstructionTraits< BlockPreconditioner< X, Y, C, T > >::SeqConstructionTraits |
typedef ConstructionTraits<T> Dune::Amg::ConstructionTraits< NonoverlappingBlockPreconditioner< C, T > >::SeqConstructionTraits |
typedef S Dune::Amg::BaseConnectivityConstructor::ConnectedBuilder< G, S, V >::Set |
The type of the connected set.
typedef S Dune::Amg::AMG< M, X, S, PI, A >::Smoother |
The type of the smoother.
One of the preconditioners implementing the Preconditioner interface. Note that the smoother has to fit the ParallelInformation.
typedef T Dune::Amg::SmootherApplier< T >::Smoother |
typedef SeqSOR<M,X,Y,l> Dune::Amg::SmootherApplier< SeqSOR< M, X, Y, l > >::Smoother |
typedef BlockPreconditioner<X,Y,C,SeqSOR<M,X,Y,l> > Dune::Amg::SmootherApplier< BlockPreconditioner< X, Y, C, SeqSOR< M, X, Y, l > > >::Smoother |
typedef NonoverlappingBlockPreconditioner<C,SeqSOR<M,X,Y,l> > Dune::Amg::SmootherApplier< NonoverlappingBlockPreconditioner< C, SeqSOR< M, X, Y, l > > >::Smoother |
typedef SeqOverlappingSchwarz<M,X,MultiplicativeSchwarzMode,MS,TA> Dune::Amg::SmootherApplier< SeqOverlappingSchwarz< M, X, MultiplicativeSchwarzMode, MS, TA > >::Smoother |
typedef SmootherTraits<Smoother>::Arguments Dune::Amg::AMG< M, X, S, PI, A >::SmootherArgs |
The argument type for the construction of the smoother.
typedef std::size_t* Dune::Amg::Aggregate< G, S >::SphereMap |
Type of the mapping of aggregate members onto distance spheres.
typedef Vector::value_type Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::Subdomain |
typedef Amg::PropertyGraphVertexPropertyMap<Amg::PropertiesGraph<G,Amg::VertexProperties,EP,VM,EM>, Amg::VertexProperties::VISITED> Dune::PropertyMapTypeSelector< Amg::VertexVisitedTag, Amg::PropertiesGraph< G, Amg::VertexProperties, EP, VM, EM > >::Type |
typedef bool Dune::Amg::PropertyGraphVertexPropertyMap< G, i >::ValueType |
The value type.
typedef SeqOverlappingSchwarz<M,X,TM,TS,TA>::subdomain_vector Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::Vector |
typedef T Dune::Amg::OverlapVertex< T >::Vertex |
The vertex descriptor.
typedef Graph::VertexDescriptor Dune::Amg::BaseConnectivityConstructor::ConnectedBuilder< G, S, V >::Vertex |
The vertex descriptor of the graph.
typedef G::VertexDescriptor Dune::Amg::PropertyGraphVertexPropertyMap< G, i >::Vertex |
The vertex descriptor.
typedef G::VertexDescriptor Dune::Amg::ConnectivityConstructor< G, T >::Vertex |
typedef G::VertexDescriptor Dune::Amg::ConnectivityConstructor< G, SequentialInformation >::Vertex |
typedef MatrixGraph::VertexDescriptor Dune::Amg::Aggregate< G, S >::Vertex |
The vertex descriptor type.
typedef MatrixGraph::VertexDescriptor Dune::Amg::Aggregator< G >::Vertex |
The vertex identifier.
typedef V Dune::Amg::AggregatesMap< V >::VertexDescriptor |
The vertex descriptor type.
typedef MatrixGraph<M>::VertexDescriptor Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::VertexDescriptor |
typedef SLList<VertexDescriptor,Allocator> Dune::Amg::AggregatesMap< V >::VertexList |
The type of a single linked list of vertex descriptors.
typedef SLList<Vertex,Allocator> Dune::Amg::Aggregate< G, S >::VertexList |
The type of a single linked list of vertex descriptors.
typedef S Dune::Amg::Aggregate< G, S >::VertexSet |
The type of a single linked list of vertex descriptors.
typedef V Dune::Amg::BaseConnectivityConstructor::ConnectedBuilder< G, S, V >::VisitedMap |
The type of the map for marking vertices as visited.
typedef V Dune::Amg::Aggregator< G >::AggregateVisitor< V >::Visitor |
The type of the adapted visitor.
anonymous enum |
anonymous enum |
anonymous enum |
anonymous enum |
Identifiers for the different accumulation modes.
enum Dune::Amg::SeqOverlappingSchwarzSmootherArgs::Overlap |
AccumulationMode Dune::Amg::CoarseningParameters::accumulate | ( | ) | const [inline] |
Whether the data should be accumulated on fewer processes on coarser levels.
void Dune::Amg::Aggregate< G, S >::add | ( | const Vertex & | vertex | ) |
Add a vertex to the aggregate.
void Dune::Amg::Hierarchy< T, A >::addCoarser | ( | Arguments & | args | ) |
Add an element on a coarser level.
args | The arguments needed for the construction. |
References Dune::Amg::ConstructionTraits< T >::construct().
Referenced by Dune::Amg::MatrixHierarchy< M, PI, A >::coarsenSmoother().
void Dune::Amg::Hierarchy< T, A >::addFiner | ( | Arguments & | args | ) |
Add an element on a finer level.
args | The arguments needed for the construction. |
References Dune::Amg::ConstructionTraits< T >::construct().
void Dune::Amg::Hierarchy< T, A >::addRedistributedOnCoarsest | ( | Arguments & | args | ) |
References Dune::Amg::ConstructionTraits< T >::construct().
Dune::Amg::Aggregate< G, S >::Aggregate | ( | const MatrixGraph & | graph, |
AggregatesMap< Vertex > & | aggregates, | ||
VertexSet & | connectivity | ||
) |
Constructor.
graph | The matrix graph we work on. |
aggregates | The mapping of vertices onto aggregates. |
connectivity | The set of vertices connected to the aggregate. distance spheres. |
Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::AggregateAdder< VM >::AggregateAdder | ( | Vector & | subdomains_, |
const AggregatesMap & | aggregates_, | ||
const MatrixGraph< const M > & | graph_, | ||
VM & | visitedMap_ | ||
) | [inline] |
Dune::Amg::AggregatesMap< V >::AggregatesMap | ( | ) |
Constructs without allocating memory.
Dune::Amg::AggregatesMap< V >::AggregatesMap | ( | std::size_t | noVertices | ) |
Constructs with allocating memory.
noVertices | The number of vertices we will hold information for. |
const MatrixHierarchy< M, IS, A >::AggregatesMapList & Dune::Amg::MatrixHierarchy< M, IS, A >::aggregatesMaps | ( | ) | const |
Get the hierarchy of the mappings of the nodes onto aggregates.
Dune::Amg::Aggregator< G >::AggregateVisitor< V >::AggregateVisitor | ( | const AggregatesMap< Vertex > & | aggregates, |
const AggregateDescriptor & | aggregate, | ||
Visitor & | visitor | ||
) |
Constructor.
aggregates | The aggregate numbers of the vertices. |
aggregate | The id of the aggregate to visit. |
visitor | The visitor. |
Dune::Amg::AggregationCriterion< T >::AggregationCriterion | ( | ) | [inline] |
Constructor.
The paramters will be initialized with default values suitable for 2D isotropic problems.
If that does not fit your needs either use setDefaultValuesIsotropic setDefaultValuesAnisotropic or setup the values by hand
Dune::Amg::AggregationCriterion< T >::AggregationCriterion | ( | const Parameters & | parms | ) | [inline] |
Constructor.
The paramters will be initialized with default values suitable for 2D isotropic problems.
If that does not fit your needs either use setDefaultValuesIsotropic setDefaultValuesAnisotropic or setup the values by hand
Dune::Amg::Aggregator< G >::Aggregator | ( | ) |
Constructor.
void Dune::Amg::AggregatesMap< V >::allocate | ( | std::size_t | noVertices | ) |
Allocate memory for holding the information.
noVertices | The total number of vertices to be mapped. |
double Dune::Amg::DependencyParameters::alpha | ( | ) | const [inline] |
Get the scaling value for marking connections as strong. Default value is 1/3.
Dune::Amg::AMG< M, X, S, PI, A >::AMG | ( | const OperatorHierarchy & | matrices, |
CoarseSolver & | coarseSolver, | ||
const SmootherArgs & | smootherArgs, | ||
std::size_t | gamma, | ||
std::size_t | preSmoothingSteps, | ||
std::size_t | postSmoothingSteps, | ||
bool | additive = false |
||
) |
Construct a new amg with a specific coarse solver.
matrices | The already set up matix hierarchy. |
coarseSolver | The set up solver to use on the coarse grid, must match the coarse matrix in the matrix hierachy. |
smootherArgs | The arguments needed for thesmoother to use for pre and post smoothing |
gamma | The number of subcycles. 1 for V-cycle, 2 for W-cycle. |
preSmoothingSteps | The number of smoothing steps for premoothing. |
postSmoothingSteps | The number of smoothing steps for postmoothing. |
References Dune::Amg::MatrixHierarchy< M, PI, A >::coarsenSmoother(), and Dune::Amg::MatrixHierarchy< M, PI, A >::isBuilt().
Dune::Amg::AMG< M, X, S, PI, A >::AMG | ( | const OperatorHierarchy & | matrices, |
CoarseSolver & | coarseSolver, | ||
const SmootherArgs & | smootherArgs, | ||
const Parameters & | parms | ||
) |
Construct a new amg with a specific coarse solver.
matrices | The already set up matix hierarchy. |
coarseSolver | The set up solver to use on the coarse grid, must match the coarse matrix in the matrix hierachy. |
smootherArgs | The arguments needed for thesmoother to use for pre and post smoothing. |
parms | The parameters for the AMG. |
References Dune::Amg::MatrixHierarchy< M, PI, A >::coarsenSmoother(), and Dune::Amg::MatrixHierarchy< M, PI, A >::isBuilt().
Dune::Amg::AMG< M, X, S, PI, A >::AMG | ( | const Operator & | fineOperator, |
const C & | criterion, | ||
const SmootherArgs & | smootherArgs, | ||
std::size_t | gamma, | ||
std::size_t | preSmoothingSteps, | ||
std::size_t | postSmoothingSteps, | ||
bool | additive = false , |
||
const ParallelInformation & | pinfo = ParallelInformation() |
||
) |
Construct an AMG with an inexact coarse solver based on the smoother.
As coarse solver a preconditioned CG method with the smoother as preconditioner will be used. The matrix hierarchy is built automatically.
fineOperator | The operator on the fine level. |
criterion | The criterion describing the coarsening strategy. E. g. SymmetricCriterion or UnsymmetricCriterion. |
smootherArgs | The arguments for constructing the smoothers. |
gamma | 1 for V-cycle, 2 for W-cycle |
preSmoothingSteps | The number of smoothing steps for premoothing. |
postSmoothingSteps | The number of smoothing steps for postmoothing. |
pinfo | The information about the parallel distribution of the data. |
References Dune::Amg::MatrixHierarchy< M, PI, A >::coarsenSmoother(), Dune::Amg::Hierarchy< T, A >::finest(), Dune::Amg::MatrixHierarchy< M, PI, A >::maxlevels(), and Dune::Amg::MatrixHierarchy< M, PI, A >::parallelInformation().
Dune::Amg::AMG< M, X, S, PI, A >::AMG | ( | const Operator & | fineOperator, |
const C & | criterion, | ||
const SmootherArgs & | smootherArgs, | ||
const ParallelInformation & | pinfo = ParallelInformation() |
||
) |
Construct an AMG with an inexact coarse solver based on the smoother.
As coarse solver a preconditioned CG method with the smoother as preconditioner will be used. The matrix hierarchy is built automatically.
fineOperator | The operator on the fine level. |
criterion | The criterion describing the coarsening strategy. E. g. SymmetricCriterion or UnsymmetricCriterion, and providing the parameters. |
smootherArgs | The arguments for constructing the smoothers. |
pinfo | The information about the parallel distribution of the data. |
References Dune::Amg::MatrixHierarchy< M, PI, A >::coarsenSmoother(), Dune::Amg::Hierarchy< T, A >::finest(), Dune::Amg::MatrixHierarchy< M, PI, A >::maxlevels(), and Dune::Amg::MatrixHierarchy< M, PI, A >::parallelInformation().
void Dune::Amg::AMG< M, X, S, PI, A >::apply | ( | Domain & | v, |
const Range & | d | ||
) | [virtual] |
Apply one step of the preconditioner to the system A(v)=d.
On entry v=0 and d=b-A(x) (although this might not be computed in that way. On exit v contains the update, i.e one step computes where
is the approximate inverse of the operator
characterizing the preconditioner.
[out] | v | The update to be computed |
d | The current defect. |
Implements Dune::Preconditioner< X, X >.
void Dune::Amg::KAMG< M, X, S, P, K, A >::apply | ( | Domain & | x, |
const Range & | b | ||
) | [virtual] |
Implements Dune::Preconditioner< X, X >.
void Dune::Amg::ParallelIndicesCoarsener< T, E >::ParallelAggregateRenumberer< G, I >::attribute | ( | const Attribute & | attribute | ) | [inline] |
Attribute Dune::Amg::ParallelIndicesCoarsener< T, E >::ParallelAggregateRenumberer< G, I >::attribute | ( | ) | [inline] |
const_iterator Dune::Amg::AggregatesMap< V >::begin | ( | ) | const [inline] |
iterator Dune::Amg::AggregatesMap< V >::begin | ( | ) | [inline] |
const_iterator Dune::Amg::Aggregate< G, S >::begin | ( | ) | const |
get an iterator over the vertices of the aggregate.
double Dune::Amg::DependencyParameters::beta | ( | ) | const [inline] |
Get the threshold for marking nodes as isolated. The default value is 1.0E-5.
std::size_t Dune::Amg::AggregatesMap< V >::breadthFirstSearch | ( | const VertexDescriptor & | start, |
const AggregateDescriptor & | aggregate, | ||
const G & | graph, | ||
F & | aggregateVisitor, | ||
VM & | visitedMap | ||
) | const |
Breadth first search within an aggregate.
The template parameters:
start | The vertex where the search should start from. This does not need to belong to the aggregate. |
aggregate | The aggregate id. |
graph | The matrix graph to perform the search on. |
visitedMap | A map to mark the already visited vertices |
aggregateVisitor | A functor that is called with each G::ConstEdgeIterator with an edge pointing to the aggregate. Use DummyVisitor if these are of no interest. |
std::size_t Dune::Amg::AggregatesMap< V >::breadthFirstSearch | ( | const VertexDescriptor & | start, |
const AggregateDescriptor & | aggregate, | ||
const G & | graph, | ||
L & | visited, | ||
F1 & | aggregateVisitor, | ||
F2 & | nonAggregateVisitor, | ||
VM & | visitedMap | ||
) | const |
Breadth first search within an aggregate.
The template parameters:
start | The vertex where the search should start from. This does not need to belong to the aggregate. |
aggregate | The aggregate id. |
graph | The matrix graph to perform the search on. |
visited | A list to store the visited vertices in. |
aggregateVisitor | A functor that is called with each G::ConstEdgeIterator with an edge pointing to the aggregate. Use DummyVisitor these are of no interest. |
nonAggregateVisitor | A functor that is called with each G::ConstEdgeIterator with an edge pointing to another aggregate. Use DummyVisitor these are of no interest. |
visitedMap | A map to mark the already visited vertices |
M * Dune::Amg::GalerkinProduct< T >::build | ( | const M & | fine, |
G & | fineGraph, | ||
V & | visitedMap, | ||
const ParallelInformation & | pinfo, | ||
AggregatesMap< typename G::VertexDescriptor > & | aggregates, | ||
const typename M::size_type & | size, | ||
const Set & | copy | ||
) |
Calculates the coarse matrix via a Galerkin product.
fine | The matrix on the fine level. |
fineGraph | The graph of the fine matrix. |
visitedMap | Map for marking vertices as visited. |
pinfo | Parallel information about the fine level. |
aggregates | The mapping of the fine level unknowns onto aggregates. |
size | The number of columns and rows of the coarse matrix. |
copy | The attribute set identifying the copy nodes of the graph. |
References count, Dune::Amg::ConnectivityConstructor< G, T >::examine(), Dune::Amg::SparsityBuilder< M >::maxRowSize(), Dune::Amg::SparsityBuilder< M >::minRowSize(), and Dune::Amg::SparsityBuilder< M >::sumRowSize().
Referenced by Dune::Amg::MatrixHierarchy< M, PI, A >::build().
M * Dune::Amg::GalerkinProduct< SequentialInformation >::build | ( | const M & | fine, |
G & | fineGraph, | ||
V & | visitedMap, | ||
const SequentialInformation & | pinfo, | ||
const AggregatesMap< typename G::VertexDescriptor > & | aggregates, | ||
const typename M::size_type & | size, | ||
const Set & | copy | ||
) |
Calculates the coarse matrix via a Galerkin product.
fine | The matrix on the fine level. |
fineGraph | The graph of the fine matrix. |
visitedMap | Map for marking vertices as visited. |
pinfo | Parallel information about the fine level. |
aggregates | The mapping of the fine level unknowns onto aggregates. |
size | The number of columns and rows of the coarse matrix. |
copy | The attribute set identifying the copy nodes of the graph. |
References Dune::Amg::SparsityBuilder< M >::maxRowSize(), Dune::Amg::SparsityBuilder< M >::minRowSize(), and Dune::Amg::SparsityBuilder< M >::sumRowSize().
void Dune::Amg::MatrixHierarchy< M, IS, A >::build | ( | const T & | criterion | ) |
Build the matrix hierarchy using aggregation.
criterion The criterion describing the aggregation process.
References Dune::Amg::atOnceAccu, Dune::Amg::GalerkinProduct< T >::build(), Dune::Amg::AggregatesMap< V >::buildAggregates(), Dune::Amg::BaseGalerkinProduct::calculate(), Dune::countNonZeros(), Dune::Amg::AggregatesMap< V >::free(), Dune::Amg::MAX_PROCESSES, Dune::Amg::AggregatesMap< V >::noVertices(), Dune::Amg::repartitionAndDistributeMatrix(), and Dune::Amg::successiveAccu.
tuple<int,int,int,int> Dune::Amg::Aggregator< G >::build | ( | const M & | m, |
G & | graph, | ||
AggregatesMap< Vertex > & | aggregates, | ||
const C & | c, | ||
bool | finestLevel | ||
) |
Build the aggregates.
The template parameter C Is the type of the coarsening Criterion to use.
m | The matrix to build the aggregates accordingly. |
graph | A (sub) graph of the matrix. |
aggregates | Aggregate map we will build. All entries should be initialized to UNAGGREGATED! |
c | The coarsening criterion to use. |
finestLevel | Whether this the finest level. In that case rows representing Dirichlet boundaries will be detected and ignored during aggregation. |
tuple<int,int,int,int> Dune::Amg::AggregatesMap< V >::buildAggregates | ( | const M & | matrix, |
G & | graph, | ||
const C & | criterion, | ||
bool | finestLevel | ||
) |
Build the aggregates.
matrix | The matrix describing the dependency. |
graph | The graph corresponding to the matrix. |
criterion | The aggregation criterion. |
finestLevel | Whether this the finest level. In that case rows representing Dirichlet boundaries will be detected and ignored during aggregation. |
Referenced by Dune::Amg::MatrixHierarchy< M, PI, A >::build().
void Dune::Amg::buildDependency | ( | G & | graph, |
const typename C::Matrix & | matrix, | ||
C | criterion, | ||
bool | finestLevel | ||
) |
Build the dependency of the matrix graph.
Referenced by Dune::Amg::repartitionAndDistributeMatrix().
void Dune::Amg::BaseGalerkinProduct::calculate | ( | const M & | fine, |
const AggregatesMap< V > & | aggregates, | ||
M & | coarse, | ||
const I & | pinfo, | ||
const O & | copy | ||
) |
Calculate the galerkin product.
fine | The fine matrix. |
aggregates | The aggregate mapping. |
coarse | The coarse Matrix. |
pinfo | Parallel information about the fine level. |
copy | The attribute set identifying the copy nodes of the graph. |
Referenced by Dune::Amg::MatrixHierarchy< M, PI, A >::build(), and Dune::Amg::MatrixHierarchy< M, PI, A >::recalculateGalerkin().
void Dune::Amg::BaseGalerkinProduct::calculate | ( | const M & | fine, |
const AggregatesMap< V > & | aggregates, | ||
M & | coarse, | ||
const P & | pinfo, | ||
const O & | copy | ||
) |
void Dune::Amg::Aggregate< G, S >::clear | ( | ) |
Clear the aggregate.
Graph::VertexDescriptor Dune::Amg::ParallelIndicesCoarsener< T, E >::coarsen | ( | ParallelInformation & | fineInfo, |
Graph & | fineGraph, | ||
VM & | visitedMap, | ||
AggregatesMap< typename Graph::VertexDescriptor > & | aggregates, | ||
ParallelInformation & | coarseInfo | ||
) | [inline, static] |
Build the coarse index set after the aggregatio.
fineInfo | The parallel information at the fine level. |
fineGraph | The graph of the fine lecel, |
visitedMap | Map for marking vertices as visited. |
aggregates | The mapping of unknowns onto aggregates. |
coarseInfo | The information about the parallel data decomposition on the coarse level. |
Graph::VertexDescriptor Dune::Amg::IndicesCoarsener< SequentialInformation, E >::coarsen | ( | const SequentialInformation & | fineInfo, |
Graph & | fineGraph, | ||
VM & | visitedMap, | ||
AggregatesMap< typename Graph::VertexDescriptor > & | aggregates, | ||
SequentialInformation & | coarseInfo | ||
) | [static] |
Dune::Amg::CoarseningParameters::CoarseningParameters | ( | int | maxLevel = 100 , |
int | coarsenTarget = 1000 , |
||
double | minCoarsenRate = 1.2 , |
||
double | prolongDamp = 1.6 , |
||
AccumulationMode | accumulate = successiveAccu |
||
) | [inline] |
Constructor.
maxLevel | The maximum number of levels allowed in the matrix hierarchy (default: 100). |
coarsenTarget | If the number of nodes in the matrix is below this threshold the coarsening will stop (default: 1000). |
minCoarsenRate | If the coarsening rate falls below this threshold the coarsening will stop (default: 1.2) |
prolongDamp | The damping factor to apply to the prolongated update (default: 1.6) |
accumulate | Whether to accumulate the data onto fewer processors on coarser levels. |
void Dune::Amg::MatrixHierarchy< M, IS, A >::coarsenSmoother | ( | Hierarchy< S, TA > & | smoothers, |
const typename SmootherTraits< S >::Arguments & | args | ||
) | const |
Coarsen the smoother hierarchy according to the matrix hierarchy.
smoothers | The smoother hierarchy to coarsen. |
args | The arguments for the construction of the coarse level smoothers. |
References Dune::Amg::Hierarchy< T, A >::addCoarser(), and Dune::Amg::Hierarchy< T, A >::levels().
Referenced by Dune::Amg::AMG< M, X, S, PI, A >::AMG().
int Dune::Amg::CoarseningParameters::coarsenTarget | ( | ) | const [inline] |
Get the maximum number of unknowns allowed on the coarsest level.
void Dune::Amg::MatrixHierarchy< M, IS, A >::coarsenVector | ( | Hierarchy< BlockVector< V, TA > > & | hierarchy | ) | const |
Coarsen the vector hierarchy according to the matrix hierarchy.
hierarchy | The vector hierarchy to coarsen. |
Hierarchy< T, A >::Iterator Dune::Amg::Hierarchy< T, A >::coarsest | ( | ) |
Get an iterator positioned at the coarsest level.
Referenced by Dune::Amg::AMG< M, X, S, PI, A >::post(), and Dune::Amg::AMG< M, X, S, PI, A >::pre().
Hierarchy< T, A >::ConstIterator Dune::Amg::Hierarchy< T, A >::coarsest | ( | ) | const |
Get an iterator positioned at the coarsest level.
Dune::Amg::BaseConnectivityConstructor::ConnectedBuilder< G, S, V >::ConnectedBuilder | ( | const AggregatesMap< Vertex > & | aggregates, |
Graph & | graph, | ||
VisitedMap & | visitedMap, | ||
Set & | connected | ||
) |
Constructor.
aggregates | The mapping of the vertices onto the aggregates. |
graph | The graph to work on. |
visitedMap | The map for marking vertices as visited |
connected | The set to added the connected aggregates to. |
Dune::Amg::Aggregator< G >::ConnectivityCounter::ConnectivityCounter | ( | const VertexSet & | connected, |
const AggregatesMap< Vertex > & | aggregates | ||
) |
Constructor.
connected | The set of connected aggregates. |
aggregates | Mapping of the vertices onto the aggregates. |
aggregates | The mapping of aggregates to vertices. |
VertexList::size_type Dune::Amg::Aggregate< G, S >::connectSize | ( | ) |
Get tne number of connections to other aggregates.
static T* Dune::Amg::ConstructionTraits< T >::construct | ( | Arguments & | args | ) | [inline, static] |
Construct an object with the specified arguments.
In the default implementation the copy constructor is called.
args | The arguments for the construction. |
Referenced by Dune::Amg::Hierarchy< T, A >::addCoarser(), Dune::Amg::Hierarchy< T, A >::addFiner(), Dune::Amg::Hierarchy< T, A >::addRedistributedOnCoarsest(), Dune::Amg::ConstructionTraits< BlockPreconditioner< X, Y, C, T > >::construct(), Dune::Amg::ConstructionTraits< NonoverlappingBlockPreconditioner< C, T > >::construct(), and Dune::Amg::AMG< M, X, S, PI, A >::pre().
static BlockVector<T>* Dune::Amg::ConstructionTraits< BlockVector< T > >::construct | ( | Arguments & | n | ) | [inline, static] |
static SeqSSOR<M,X,Y,l>* Dune::Amg::ConstructionTraits< SeqSSOR< M, X, Y, l > >::construct | ( | Arguments & | args | ) | [inline, static] |
static SeqSOR<M,X,Y,l>* Dune::Amg::ConstructionTraits< SeqSOR< M, X, Y, l > >::construct | ( | Arguments & | args | ) | [inline, static] |
static SeqJac<M,X,Y,l>* Dune::Amg::ConstructionTraits< SeqJac< M, X, Y, l > >::construct | ( | Arguments & | args | ) | [inline, static] |
static SeqILU0<M,X,Y>* Dune::Amg::ConstructionTraits< SeqILU0< M, X, Y > >::construct | ( | Arguments & | args | ) | [inline, static] |
static SeqILUn<M,X,Y>* Dune::Amg::ConstructionTraits< SeqILUn< M, X, Y > >::construct | ( | Arguments & | args | ) | [inline, static] |
static ParSSOR<M,X,Y,C>* Dune::Amg::ConstructionTraits< ParSSOR< M, X, Y, C > >::construct | ( | Arguments & | args | ) | [inline, static] |
static BlockPreconditioner<X,Y,C,T>* Dune::Amg::ConstructionTraits< BlockPreconditioner< X, Y, C, T > >::construct | ( | Arguments & | args | ) | [inline, static] |
static NonoverlappingBlockPreconditioner<C,T>* Dune::Amg::ConstructionTraits< NonoverlappingBlockPreconditioner< C, T > >::construct | ( | Arguments & | args | ) | [inline, static] |
static SeqOverlappingSchwarz<M,X,TM,TS,TA>* Dune::Amg::ConstructionTraits< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::construct | ( | Arguments & | args | ) | [inline, static] |
Dune::Amg::ConstructionArgs< SeqILUn< M, X, Y > >::ConstructionArgs | ( | int | n = 1 | ) | [inline] |
void Dune::Amg::BaseConnectivityConstructor::constructNonOverlapConnectivity | ( | R & | row, |
G & | graph, | ||
V & | visitedMap, | ||
const AggregatesMap< typename G::VertexDescriptor > & | aggregates, | ||
const typename G::VertexDescriptor & | seed | ||
) | [static] |
Construct the connectivity of an aggregate in the overlap.
Referenced by Dune::Amg::ConnectivityConstructor< G, T >::examine(), and Dune::Amg::ConnectivityConstructor< G, SequentialInformation >::examine().
void Dune::Amg::BaseConnectivityConstructor::constructOverlapConnectivity | ( | R & | row, |
G & | graph, | ||
V & | visitedMap, | ||
const AggregatesMap< typename G::VertexDescriptor > & | aggregates, | ||
const OverlapVertex< typename G::VertexDescriptor > *& | seed, | ||
const OverlapVertex< typename G::VertexDescriptor > * | overlapEnd | ||
) | [static] |
Dune::Amg::Aggregator< G >::Counter::Counter | ( | ) |
Constructor.
int Dune::Amg::Parameters::debugLevel | ( | ) | const [inline] |
Get the debugging Level.
static void Dune::Amg::ConstructionTraits< T >::deconstruct | ( | T * | t | ) | [inline, static] |
Destroys an object.
t | Pointer to the object to destroy. |
Referenced by Dune::Amg::ConstructionTraits< BlockPreconditioner< X, Y, C, T > >::deconstruct(), Dune::Amg::ConstructionTraits< NonoverlappingBlockPreconditioner< C, T > >::deconstruct(), Dune::Amg::AMG< M, X, S, PI, A >::post(), and Dune::Amg::Hierarchy< T, A >::~Hierarchy().
static void Dune::Amg::ConstructionTraits< BlockVector< T > >::deconstruct | ( | BlockVector< T > * | t | ) | [inline, static] |
static void Dune::Amg::ConstructionTraits< SeqSSOR< M, X, Y, l > >::deconstruct | ( | SeqSSOR< M, X, Y, l > * | ssor | ) | [inline, static] |
static void Dune::Amg::ConstructionTraits< SeqSOR< M, X, Y, l > >::deconstruct | ( | SeqSOR< M, X, Y, l > * | sor | ) | [inline, static] |
static void Dune::Amg::ConstructionTraits< SeqJac< M, X, Y, l > >::deconstruct | ( | SeqJac< M, X, Y, l > * | jac | ) | [inline, static] |
static void Dune::Amg::ConstructionTraits< SeqILU0< M, X, Y > >::deconstruct | ( | SeqILU0< M, X, Y > * | ilu | ) | [inline, static] |
static void Dune::Amg::ConstructionTraits< SeqILUn< M, X, Y > >::deconstruct | ( | SeqILUn< M, X, Y > * | ilu | ) | [inline, static] |
static void Dune::Amg::ConstructionTraits< ParSSOR< M, X, Y, C > >::deconstruct | ( | ParSSOR< M, X, Y, C > * | ssor | ) | [inline, static] |
static void Dune::Amg::ConstructionTraits< BlockPreconditioner< X, Y, C, T > >::deconstruct | ( | BlockPreconditioner< X, Y, C, T > * | bp | ) | [inline, static] |
static void Dune::Amg::ConstructionTraits< NonoverlappingBlockPreconditioner< C, T > >::deconstruct | ( | NonoverlappingBlockPreconditioner< C, T > * | bp | ) | [inline, static] |
static void Dune::Amg::ConstructionTraits< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::deconstruct | ( | SeqOverlappingSchwarz< M, X, TM, TS, TA > * | schwarz | ) | [inline, static] |
void Dune::Amg::Aggregator< G >::Counter::decrement | ( | ) | [protected] |
Decrement counter.
Dune::Amg::DefaultSmootherArgs< T >::DefaultSmootherArgs | ( | ) | [inline] |
Default constructor.
Dune::Amg::Dependency< M, N >::Dependency | ( | const Parameters & | parms | ) | [inline] |
Dune::Amg::Dependency< M, N >::Dependency | ( | ) | [inline] |
Dune::Amg::Aggregator< G >::DependencyCounter::DependencyCounter | ( | ) |
Constructor.
Constructor.
bool Dune::Amg::EdgeProperties::depends | ( | ) | const [inline] |
Checks wether the vertex the edge points to depends on the vertex the edge starts.
References Dune::Amg::EdgeProperties::DEPEND.
Dune::Amg::EdgeProperties::EdgeProperties | ( | ) | [inline] |
Constructor.
const_iterator Dune::Amg::AggregatesMap< V >::end | ( | ) | const [inline] |
iterator Dune::Amg::AggregatesMap< V >::end | ( | ) | [inline] |
const_iterator Dune::Amg::Aggregate< G, S >::end | ( | ) | const |
get an iterator over the vertices of the aggregate.
void Dune::Amg::Dependency< M, N >::examine | ( | const ColIter & | col | ) |
void Dune::Amg::Dependency< M, N >::examine | ( | G & | graph, |
const typename G::EdgeIterator & | edge, | ||
const ColIter & | col | ||
) |
void Dune::Amg::SymmetricDependency< M, N >::examine | ( | const ColIter & | col | ) |
void Dune::Amg::SymmetricDependency< M, N >::examine | ( | G & | graph, |
const typename G::EdgeIterator & | edge, | ||
const ColIter & | col | ||
) |
void Dune::Amg::ConnectivityConstructor< G, T >::examine | ( | G & | graph, |
V & | visitedMap, | ||
const T & | pinfo, | ||
const AggregatesMap< Vertex > & | aggregates, | ||
const O & | overlap, | ||
const OverlapVertex< Vertex > * | overlapVertices, | ||
const OverlapVertex< Vertex > * | overlapEnd, | ||
R & | row | ||
) | [static] |
References Dune::Amg::OverlapVertex< T >::aggregate, Dune::Amg::BaseConnectivityConstructor::constructNonOverlapConnectivity(), Dune::Amg::BaseConnectivityConstructor::constructOverlapConnectivity(), Dune::SolverCategory::nonoverlapping, row, and Dune::Amg::OverlapVertex< T >::vertex.
Referenced by Dune::Amg::GalerkinProduct< T >::build().
void Dune::Amg::ConnectivityConstructor< G, SequentialInformation >::examine | ( | G & | graph, |
V & | visitedMap, | ||
const SequentialInformation & | pinfo, | ||
const AggregatesMap< Vertex > & | aggregates, | ||
R & | row | ||
) | [static] |
bool Dune::Amg::VertexProperties::excludedBorder | ( | ) | const [inline] |
Tests whether the vertex is excluded from the aggregation.
References Dune::Amg::VertexProperties::BORDER.
void Dune::Amg::Aggregator< G >::Stack::fill | ( | ) |
Hierarchy< T, A >::Iterator Dune::Amg::Hierarchy< T, A >::finest | ( | ) |
Get an iterator positioned at the finest level.
Referenced by Dune::Amg::AMG< M, X, S, PI, A >::AMG().
Hierarchy< T, A >::ConstIterator Dune::Amg::Hierarchy< T, A >::finest | ( | ) | const |
Get an iterator positioned at the finest level.
void Dune::Amg::AggregatesMap< V >::free | ( | ) |
Free the allocated memory.
Referenced by Dune::Amg::MatrixHierarchy< M, PI, A >::build().
bool Dune::Amg::VertexProperties::front | ( | ) | const [inline] |
Checks wether the node is marked as a front node.
References Dune::Amg::VertexProperties::FRONT.
Dune::Amg::Aggregator< G >::FrontMarker::FrontMarker | ( | VertexList & | front, |
MatrixGraph & | graph | ||
) |
Constructor.
front | The list to store the front vertices in. |
graph | The matrix graph we work on. |
Dune::Amg::Aggregator< G >::FrontNeighbourCounter::FrontNeighbourCounter | ( | const MatrixGraph & | front | ) |
Constructor.
front | The vertices of the front. |
bool Dune::Amg::Parameters::getAdditive | ( | ) | const [inline] |
Get whether to use additive multigrid.
const SmootherArgs Dune::Amg::DefaultConstructionArgs< T >::getArgs | ( | ) | const [inline] |
Referenced by Dune::Amg::ConstructionTraits< SeqSSOR< M, X, Y, l > >::construct(), Dune::Amg::ConstructionTraits< SeqSOR< M, X, Y, l > >::construct(), Dune::Amg::ConstructionTraits< SeqJac< M, X, Y, l > >::construct(), Dune::Amg::ConstructionTraits< SeqILU0< M, X, Y > >::construct(), Dune::Amg::ConstructionTraits< SeqILUn< M, X, Y > >::construct(), Dune::Amg::ConstructionTraits< ParSSOR< M, X, Y, C > >::construct(), and Dune::Amg::ConstructionTraits< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::construct().
void Dune::Amg::AMG< M, X, S, PI, A >::getCoarsestAggregateNumbers | ( | std::vector< std::size_t, A1 > & | cont | ) |
Get the aggregate number of each unknown on the coarsest level.
cont | The random access container to store the numbers in. |
void Dune::Amg::MatrixHierarchy< M, IS, A >::getCoarsestAggregatesOnFinest | ( | std::vector< std::size_t > & | data | ) | const |
Get the mapping of fine level unknowns to coarse level aggregates.
For each fine level unknown i the correcponding data[i] is the aggregate it belongs to on the coarsest level.
[out] | data | The mapping of fine level unknowns to coarse level aggregates. |
References Dune::Amg::AggregatesMap< V >::begin(), Dune::Amg::AggregatesMap< V >::end(), and Dune::Amg::AggregatesMap< V >::ISOLATED.
const C& Dune::Amg::DefaultParallelConstructionArgs< T, C >::getComm | ( | ) | const [inline] |
std::size_t Dune::Amg::Parameters::getGamma | ( | ) | const [inline] |
Get the value of gamma; 1 for V-cycle, 2 for W-cycle.
const Matrix& Dune::Amg::DefaultConstructionArgs< T >::getMatrix | ( | ) | const [inline] |
Referenced by Dune::Amg::ConstructionTraits< SeqSSOR< M, X, Y, l > >::construct(), Dune::Amg::ConstructionTraits< SeqSOR< M, X, Y, l > >::construct(), Dune::Amg::ConstructionTraits< SeqJac< M, X, Y, l > >::construct(), Dune::Amg::ConstructionTraits< SeqILU0< M, X, Y > >::construct(), Dune::Amg::ConstructionTraits< SeqILUn< M, X, Y > >::construct(), Dune::Amg::ConstructionTraits< ParSSOR< M, X, Y, C > >::construct(), and Dune::Amg::ConstructionTraits< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::construct().
int Dune::Amg::ConstructionArgs< SeqILUn< M, X, Y > >::getN | ( | ) | [inline] |
std::size_t Dune::Amg::Parameters::getNoPostSmoothSteps | ( | ) | const [inline] |
Get the number of postsmoothing steps to apply.
std::size_t Dune::Amg::Parameters::getNoPreSmoothSteps | ( | ) | const [inline] |
Get the number of presmoothing steps to apply.
double Dune::Amg::CoarseningParameters::getProlongationDampingFactor | ( | ) | const [inline] |
Get the damping factor for the prolongation.
const Vector& Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::getSubDomains | ( | ) | [inline] |
const GlobalIndex& Dune::Amg::ParallelIndicesCoarsener< T, E >::ParallelAggregateRenumberer< G, I >::globalIndex | ( | ) | const [inline] |
void Dune::Amg::ParallelIndicesCoarsener< T, E >::ParallelAggregateRenumberer< G, I >::globalIndex | ( | const GlobalIndex & | global | ) | [inline] |
bool Dune::Amg::MatrixHierarchy< M, IS, A >::hasCoarsest | ( | ) | const |
Dune::Amg::Hierarchy< T, A >::Hierarchy | ( | MemberType & | first | ) |
Construct a new hierarchy.
first | The first element in the hierarchy. |
Dune::Amg::Hierarchy< T, A >::Hierarchy | ( | ) |
Construct a new empty hierarchy.
int Dune::Amg::Aggregate< G, S >::id | ( | ) |
Get the id identifying the aggregate.
void Dune::Amg::Aggregator< G >::Counter::increment | ( | ) | [protected] |
Increment counter.
std::size_t Dune::Amg::SparsityBuilder< M >::index | ( | ) | [inline] |
bool Dune::Amg::EdgeProperties::influences | ( | ) | const [inline] |
Checks wether the start vertex is influenced by the end vertex.
References Dune::Amg::EdgeProperties::INFLUENCE.
void Dune::Amg::Dependency< M, N >::init | ( | const Matrix * | matrix | ) |
void Dune::Amg::SymmetricDependency< M, N >::init | ( | const Matrix * | matrix | ) |
void Dune::Amg::Dependency< M, N >::initRow | ( | const Row & | row, |
int | index | ||
) |
void Dune::Amg::SymmetricDependency< M, N >::initRow | ( | const Row & | row, |
int | index | ||
) |
void Dune::Amg::SparsityBuilder< M >::insert | ( | const typename M::size_type & | index | ) |
References index.
bool Dune::Amg::MatrixHierarchy< M, IS, A >::isBuilt | ( | ) | const |
Whether the hierarchy was built.
Referenced by Dune::Amg::AMG< M, X, S, PI, A >::AMG().
bool Dune::Amg::Dependency< M, N >::isIsolated | ( | ) |
bool Dune::Amg::SymmetricDependency< M, N >::isIsolated | ( | ) |
bool Dune::Amg::VertexProperties::isolated | ( | ) | const [inline] |
Checks wether the node is isolated.
References Dune::Amg::VertexProperties::ISOLATED.
bool Dune::Amg::EdgeProperties::isOneWay | ( | ) | const [inline] |
Checks wether the edge is one way. I.e. either the influence or the depends flag but is set.
References Dune::Amg::EdgeProperties::DEPEND, and Dune::Amg::EdgeProperties::INFLUENCE.
bool Dune::Amg::ParallelIndicesCoarsener< T, E >::ParallelAggregateRenumberer< G, I >::isPublic | ( | ) | [inline] |
void Dune::Amg::ParallelIndicesCoarsener< T, E >::ParallelAggregateRenumberer< G, I >::isPublic | ( | bool | b | ) | [inline] |
bool Dune::Amg::EdgeProperties::isStrong | ( | ) | const [inline] |
Checks wether the edge is strong. I.e. the influence or depends flag is set.
References Dune::Amg::EdgeProperties::DEPEND, and Dune::Amg::EdgeProperties::INFLUENCE.
bool Dune::Amg::EdgeProperties::isTwoWay | ( | ) | const [inline] |
Checks wether the edge is two way. I.e. both the influence flag and the depends flag are that.
References Dune::Amg::EdgeProperties::DEPEND, and Dune::Amg::EdgeProperties::INFLUENCE.
Dune::Amg::KAMG< M, X, S, P, K, A >::KAMG | ( | const OperatorHierarchy & | matrices, |
CoarseSolver & | coarseSolver, | ||
const SmootherArgs & | smootherArgs, | ||
std::size_t | gamma, | ||
std::size_t | preSmoothingSteps = 1 , |
||
std::size_t | postSmoothingSteps = 1 , |
||
std::size_t | maxLevelKrylovSteps = 3 , |
||
double | minDefectReduction = 1e-1 |
||
) |
Construct a new amg with a specific coarse solver.
matrices | The already set up matix hierarchy. |
coarseSolver | The set up solver to use on the coarse grid, must match the sparse matrix in the matrix hierachy. |
smootherArgs | The arguments needed for thesmoother to use for pre and post smoothing |
gamma | The number of subcycles. 1 for V-cycle, 2 for W-cycle. |
preSmoothingSteps | The number of smoothing steps for premoothing. |
postSmoothingSteps | The number of smoothing steps for postmoothing. |
maxLevelKrylovSteps | The maximum number of Krylov steps allowed at each level. |
minDefectReduction | The minimal defect reduction to achieve on each Krylov level. |
Dune::Amg::KAMG< M, X, S, P, K, A >::KAMG | ( | const Operator & | fineOperator, |
const C & | criterion, | ||
const SmootherArgs & | smootherArgs, | ||
std::size_t | gamma = 1 , |
||
std::size_t | preSmoothingSteps = 1 , |
||
std::size_t | postSmoothingSteps = 1 , |
||
std::size_t | maxLevelKrylovSteps = 3 , |
||
double | minDefectReduction = 1e-1 , |
||
const ParallelInformation & | pinfo = ParallelInformation() |
||
) |
Construct an AMG with an inexact coarse solver based on the smoother.
As coarse solver a preconditioned CG method with the smoother as preconditioner will be used. The matrix hierarchy is built automatically.
fineOperator | The operator on the fine level. |
criterion | The criterion describing the coarsening strategy. E. g. SymmetricCriterion or UnsymmetricCriterion. |
smootherArgs | The arguments for constructing the smoothers. |
gamma | 1 for V-cycle, 2 for W-cycle |
preSmoothingSteps | The number of smoothing steps for premoothing. |
postSmoothingSteps | The number of smoothing steps for postmoothing. |
maxLevelKrylovSteps | The maximum number of Krylov steps allowed at each level. |
minDefectReduction | The defect reduction to achieve on each krylov level. |
pinfo | The information about the parallel distribution of the data. |
std::size_t Dune::Amg::AMG< M, X, S, PI, A >::levels | ( | ) |
std::size_t Dune::Amg::Hierarchy< T, A >::levels | ( | ) | const |
Get the number of levels in the hierarchy.
Referenced by Dune::Amg::MatrixHierarchy< M, PI, A >::coarsenSmoother().
std::size_t Dune::Amg::MatrixHierarchy< M, IS, A >::levels | ( | ) | const |
Get the number of levels in the hierarchy.
const MatrixHierarchy< M, IS, A >::ParallelMatrixHierarchy & Dune::Amg::MatrixHierarchy< M, IS, A >::matrices | ( | ) | const |
Get the matrix hierarchy.
Dune::Amg::MatrixHierarchy< M, IS, A >::MatrixHierarchy | ( | const MatrixOperator & | fineMatrix, |
const ParallelInformation & | pinfo = ParallelInformation() |
||
) |
Constructor.
fineMatrix | The matrix to coarsen. |
pinfo | The information about the parallel data decomposition at the first level. |
References Dune::SolverCategory::nonoverlapping, Dune::SolverCategory::overlapping, and Dune::SolverCategory::sequential.
std::size_t Dune::Amg::AggregationParameters::maxAggregateSize | ( | ) | const [inline] |
Get the maximum number of nodes a aggregate is allowed to have.
std::size_t Dune::Amg::AggregationParameters::maxConnectivity | ( | ) | const [inline] |
Get the maximum number of connections a aggregate is allowed to have.
This limit exists to achieve sparsity of the coarse matrix. the default value is 15.
std::size_t Dune::Amg::AggregationParameters::maxDistance | ( | ) | const [inline] |
Get the maximal distance allowed between to nodes in a aggregate.
The distance between two nodes in a aggregate is the minimal number of edges it takes to travel from one node to the other without leaving the aggregate.
int Dune::Amg::CoarseningParameters::maxLevel | ( | ) | const [inline] |
Get the maximum number of levels allowed in the hierarchy.
std::size_t Dune::Amg::AMG< M, X, S, PI, A >::maxlevels | ( | ) |
std::size_t Dune::Amg::KAMG< M, X, S, P, K, A >::maxlevels | ( | ) |
std::size_t Dune::Amg::MatrixHierarchy< M, IS, A >::maxlevels | ( | ) | const |
Get the max number of levels in the hierarchy of processors.
Referenced by Dune::Amg::AMG< M, X, S, PI, A >::AMG().
std::size_t Dune::Amg::SparsityBuilder< M >::maxRowSize | ( | ) |
std::size_t Dune::Amg::AggregationParameters::minAggregateSize | ( | ) | const [inline] |
Get the minimum number of nodes a aggregate has to consist of.
double Dune::Amg::CoarseningParameters::minCoarsenRate | ( | ) | const [inline] |
Get the minimum coarsening rate to be achieved.
std::size_t Dune::Amg::SparsityBuilder< M >::minRowSize | ( | ) |
Dune::Amg::NonoverlappingOperatorArgs< M, C >::NonoverlappingOperatorArgs | ( | M & | matrix, |
C & | comm | ||
) | [inline] |
int Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::VertexAdder::noSubdomains | ( | ) | const [inline] |
int Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::NoneAdder::noSubdomains | ( | ) | const [inline] |
int Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::AggregateAdder< VM >::noSubdomains | ( | ) | const [inline] |
std::size_t Dune::Amg::AggregatesMap< V >::noVertices | ( | ) | const |
Get the number of vertices.
Referenced by Dune::Amg::MatrixHierarchy< M, PI, A >::build(), Dune::Amg::AggregatesMap< Vertex >::end(), and Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::setMatrix().
void Dune::Amg::ParallelIndicesCoarsener< T, E >::ParallelAggregateRenumberer< G, I >::operator() | ( | const typename G::ConstEdgeIterator & | edge | ) | [inline] |
Vertex Dune::Amg::ParallelIndicesCoarsener< T, E >::ParallelAggregateRenumberer< G, I >::operator() | ( | const GlobalIndex & | global | ) | [inline] |
bool Dune::Amg::GalerkinProduct< T >::OVLess< A >::operator() | ( | const OverlapVertex< A > & | o1, |
const OverlapVertex< A > & | o2 | ||
) | [inline] |
References Dune::Amg::OverlapVertex< T >::aggregate.
void Dune::Amg::BaseConnectivityConstructor::ConnectedBuilder< G, S, V >::operator() | ( | const ConstEdgeIterator & | edge | ) |
Process an edge pointing to another aggregate.
edge | The iterator positioned at the edge. |
M::field_type Dune::Amg::Diagonal< N >::operator() | ( | const M & | m | ) | const [inline] |
compute the norm of a matrix.
m | The matrix ro compute the norm of. |
M::field_type Dune::Amg::RowSum::operator() | ( | const M & | m | ) | const [inline] |
compute the norm of a matrix.
m | The matrix row to compute the norm of. |
M::field_type Dune::Amg::FrobeniusNorm::operator() | ( | const M & | m | ) | const [inline] |
compute the norm of a matrix.
m | The matrix row to compute the norm of. |
M::field_type Dune::Amg::AlwaysOneNorm::operator() | ( | const M & | m | ) | const [inline] |
compute the norm of a matrix.
m | The matrix row to compute the norm of. |
void Dune::Amg::AggregatesMap< V >::DummyEdgeVisitor::operator() | ( | const EdgeIterator & | egde | ) | const [inline] |
void Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::VertexAdder::operator() | ( | const T & | edge | ) | [inline] |
References Dune::Amg::AggregatesMap< V >::ISOLATED.
void Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::NoneAdder::operator() | ( | const T & | edge | ) | [inline] |
void Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::AggregateAdder< VM >::operator() | ( | const T & | edge | ) | [inline] |
References Dune::Amg::AggregatesMap< V >::ISOLATED.
void Dune::Amg::Aggregator< G >::AggregateVisitor< V >::operator() | ( | const typename MatrixGraph::ConstEdgeIterator & | edge | ) |
Examine an edge.
The edge will be examined by the adapted visitor if it belongs to the right aggregate.
void Dune::Amg::Aggregator< G >::FrontNeighbourCounter::operator() | ( | const typename MatrixGraph::ConstEdgeIterator & | edge | ) |
void Dune::Amg::Aggregator< G >::TwoWayCounter::operator() | ( | const typename MatrixGraph::ConstEdgeIterator & | edge | ) |
void Dune::Amg::Aggregator< G >::OneWayCounter::operator() | ( | const typename MatrixGraph::ConstEdgeIterator & | edge | ) |
void Dune::Amg::Aggregator< G >::ConnectivityCounter::operator() | ( | const typename MatrixGraph::ConstEdgeIterator & | edge | ) |
void Dune::Amg::Aggregator< G >::DependencyCounter::operator() | ( | const typename MatrixGraph::ConstEdgeIterator & | edge | ) |
void Dune::Amg::Aggregator< G >::FrontMarker::operator() | ( | const typename MatrixGraph::ConstEdgeIterator & | edge | ) |
void Dune::Amg::SparsityBuilder< M >::operator++ | ( | ) |
std::ostream& Dune::Amg::operator<< | ( | std::ostream & | os, |
const AggregationCriterion< T > & | criterion | ||
) |
std::ostream& Dune::Amg::operator<< | ( | std::ostream & | os, |
const EdgeProperties & | props | ||
) | [inline] |
std::ostream& Dune::Amg::operator<< | ( | std::ostream & | os, |
const VertexProperties & | props | ||
) | [inline] |
std::bitset< EdgeProperties::SIZE >::reference Dune::Amg::EdgeProperties::operator[] | ( | std::size_t | v | ) | [inline] |
Access the bits directly.
bool Dune::Amg::EdgeProperties::operator[] | ( | std::size_t | v | ) | const [inline] |
Acess the bits directly.
Reference Dune::Amg::RandomAccessBundledPropertyMap< C, K, i, T, R >::operator[] | ( | const Key & | key | ) | const [inline] |
Get the property for a key.
key | The key. |
References Dune::Amg::RandomAccessBundledPropertyMap< C, K, i, T, R >::index.
std::bitset< VertexProperties::SIZE >::reference Dune::Amg::VertexProperties::operator[] | ( | std::size_t | v | ) | [inline] |
Access the bits directly.
bool Dune::Amg::VertexProperties::operator[] | ( | std::size_t | v | ) | const [inline] |
Acess the bits directly.
Reference Dune::Amg::PropertyGraphVertexPropertyMap< G, i >::operator[] | ( | const Vertex & | vertex | ) | const [inline] |
Get the properties associated to a vertex.
vertex | The vertex whose Properties we want. |
References Dune::Amg::PropertyGraphVertexPropertyMap< G, i >::index.
AggregateDescriptor& Dune::Amg::AggregatesMap< V >::operator[] | ( | const VertexDescriptor & | v | ) |
Get the aggregate a vertex belongs to.
v | The vertex we want to know the aggregate of. |
const AggregateDescriptor& Dune::Amg::AggregatesMap< V >::operator[] | ( | const VertexDescriptor & | v | ) | const |
Get the aggregate a vertex belongs to.
v | The vertex we want to know the aggregate of. |
Dune::Amg::OverlappingSchwarzOperatorArgs< M, C >::OverlappingSchwarzOperatorArgs | ( | M & | matrix, |
C & | comm | ||
) | [inline] |
Dune::Amg::OwnerOverlapCopyCommunicationArgs::OwnerOverlapCopyCommunicationArgs | ( | MPI_Comm | comm, |
SolverCategory::Category | cat | ||
) | [inline] |
Dune::Amg::ParallelIndicesCoarsener< T, E >::ParallelAggregateRenumberer< G, I >::ParallelAggregateRenumberer | ( | AggregatesMap< Vertex > & | aggregates, |
const I & | lookup | ||
) | [inline] |
const MatrixHierarchy< M, IS, A >::ParallelInformationHierarchy & Dune::Amg::MatrixHierarchy< M, IS, A >::parallelInformation | ( | ) | const |
Get the hierarchy of the parallel data distribution information.
Referenced by Dune::Amg::AMG< M, X, S, PI, A >::AMG().
Dune::Amg::Parameters::Parameters | ( | int | maxLevel = 100 , |
int | coarsenTarget = 1000 , |
||
double | minCoarsenRate = 1.2 , |
||
double | prolongDamp = 1.6 , |
||
AccumulationMode | accumulate = successiveAccu |
||
) | [inline] |
Constructor.
maxLevel | The maximum number of levels allowed in the matrix hierarchy (default: 100). |
coarsenTarget | If the number of nodes in the matrix is below this threshold the coarsening will stop (default: 1000). |
minCoarsenRate | If the coarsening rate falls below this threshold the coarsening will stop (default: 1.2) |
prolongDamp | The damping factor to apply to the prolongated update (default: 1.6) |
accumulate | Whether to accumulate the data onto fewer processors on coarser levels. |
Vertex Dune::Amg::Aggregator< G >::Stack::pop | ( | ) |
void Dune::Amg::AMG< M, X, S, PI, A >::post | ( | Domain & | x | ) | [virtual] |
Clean up.
This method is called after the last apply call for the linear system to be solved. Memory may be deallocated safely here. x is the solution of the linear equation.
x | The right hand side of the equation. |
Implements Dune::Preconditioner< X, X >.
References Dune::Amg::Hierarchy< T, A >::coarsest(), and Dune::Amg::ConstructionTraits< T >::deconstruct().
void Dune::Amg::KAMG< M, X, S, P, K, A >::post | ( | Domain & | x | ) | [virtual] |
Clean up.
This method is called after the last apply call for the linear system to be solved. Memory may be deallocated safely here. x is the solution of the linear equation.
x | The right hand side of the equation. |
Implements Dune::Preconditioner< X, X >.
static void Dune::Amg::SmootherApplier< T >::postSmooth | ( | Smoother & | smoother, |
Domain & | v, | ||
const Range & | d | ||
) | [inline, static] |
apply post smoothing in forward direction
smoother | The smoother to use. |
d | The current defect. |
v | handle to store the update in. |
static void Dune::Amg::SmootherApplier< SeqSOR< M, X, Y, l > >::postSmooth | ( | Smoother & | smoother, |
Domain & | v, | ||
Range & | d | ||
) | [inline, static] |
static void Dune::Amg::SmootherApplier< BlockPreconditioner< X, Y, C, SeqSOR< M, X, Y, l > > >::postSmooth | ( | Smoother & | smoother, |
Domain & | v, | ||
Range & | d | ||
) | [inline, static] |
static void Dune::Amg::SmootherApplier< NonoverlappingBlockPreconditioner< C, SeqSOR< M, X, Y, l > > >::postSmooth | ( | Smoother & | smoother, |
Domain & | v, | ||
Range & | d | ||
) | [inline, static] |
static void Dune::Amg::SmootherApplier< SeqOverlappingSchwarz< M, X, MultiplicativeSchwarzMode, MS, TA > >::postSmooth | ( | Smoother & | smoother, |
Domain & | v, | ||
const Range & | d | ||
) | [inline, static] |
void Dune::Amg::AMG< M, X, S, PI, A >::pre | ( | Domain & | x, |
Range & | b | ||
) | [virtual] |
Prepare the preconditioner.
A solver solves a linear operator equation A(x)=b by applying one or several steps of the preconditioner. The method pre() is called before the first apply operation. b and x are right hand side and solution vector of the linear system respectively. It may. e.g., scale the system, allocate memory or compute a (I)LU decomposition. Note: The ILU decomposition could also be computed in the constructor or with a separate method of the derived method if several linear systems with the same matrix are to be solved.
x | The left hand side of the equation. |
b | The right hand side of the equation. |
Implements Dune::Preconditioner< X, X >.
References Dune::Amg::Hierarchy< T, A >::coarsest(), and Dune::Amg::ConstructionTraits< T >::construct().
void Dune::Amg::KAMG< M, X, S, P, K, A >::pre | ( | Domain & | x, |
Range & | b | ||
) | [virtual] |
Prepare the preconditioner.
A solver solves a linear operator equation A(x)=b by applying one or several steps of the preconditioner. The method pre() is called before the first apply operation. b and x are right hand side and solution vector of the linear system respectively. It may. e.g., scale the system, allocate memory or compute a (I)LU decomposition. Note: The ILU decomposition could also be computed in the constructor or with a separate method of the derived method if several linear systems with the same matrix are to be solved.
x | The left hand side of the equation. |
b | The right hand side of the equation. |
Implements Dune::Preconditioner< X, X >.
static void Dune::Amg::SmootherApplier< T >::preSmooth | ( | Smoother & | smoother, |
Domain & | v, | ||
const Range & | d | ||
) | [inline, static] |
apply pre smoothing in forward direction
smoother | The smoother to use. |
d | The current defect. |
v | handle to store the update in. |
static void Dune::Amg::SmootherApplier< SeqSOR< M, X, Y, l > >::preSmooth | ( | Smoother & | smoother, |
Domain & | v, | ||
Range & | d | ||
) | [inline, static] |
static void Dune::Amg::SmootherApplier< BlockPreconditioner< X, Y, C, SeqSOR< M, X, Y, l > > >::preSmooth | ( | Smoother & | smoother, |
Domain & | v, | ||
Range & | d | ||
) | [inline, static] |
static void Dune::Amg::SmootherApplier< NonoverlappingBlockPreconditioner< C, SeqSOR< M, X, Y, l > > >::preSmooth | ( | Smoother & | smoother, |
Domain & | v, | ||
Range & | d | ||
) | [inline, static] |
static void Dune::Amg::SmootherApplier< SeqOverlappingSchwarz< M, X, MultiplicativeSchwarzMode, MS, TA > >::preSmooth | ( | Smoother & | smoother, |
Domain & | v, | ||
const Range & | d | ||
) | [inline, static] |
void Dune::Amg::printAggregates2d | ( | const AggregatesMap< V > & | aggregates, |
int | n, | ||
int | m, | ||
std::ostream & | os | ||
) |
void Dune::Amg::EdgeProperties::printFlags | ( | ) | const |
Prints the attributes of the edge for debugging.
void Dune::Amg::Transfer< V, V1, OwnerOverlapCopyCommunication< T1, T2 > >::prolongate | ( | const AggregatesMap< Vertex > & | aggregates, |
Vector & | coarse, | ||
Vector & | fine, | ||
Vector & | fineRedist, | ||
T3 | damp, | ||
OwnerOverlapCopyCommunication< T1, T2 > & | comm, | ||
const Redist & | redist | ||
) | [inline, static] |
void Dune::Amg::Transfer< V, V1, OwnerOverlapCopyCommunication< T1, T2 > >::prolongate | ( | const AggregatesMap< Vertex > & | aggregates, |
Vector & | coarse, | ||
Vector & | fine, | ||
T3 | damp, | ||
OwnerOverlapCopyCommunication< T1, T2 > & | comm | ||
) | [inline, static] |
References Dune::Amg::Transfer< V1, V2, T >::prolongate().
void Dune::Amg::Transfer< V, V1, SequentialInformation >::prolongate | ( | const AggregatesMap< Vertex > & | aggregates, |
Vector & | coarse, | ||
Vector & | fine, | ||
Vector & | fineRedist, | ||
T | damp, | ||
const SequentialInformation & | comm, | ||
const Redist & | redist | ||
) | [inline] |
References Dune::Amg::Transfer< V1, V2, T >::prolongate().
void Dune::Amg::Transfer< V, V1, SequentialInformation >::prolongate | ( | const AggregatesMap< Vertex > & | aggregates, |
Vector & | coarse, | ||
Vector & | fine, | ||
T | damp, | ||
const SequentialInformation & | comm | ||
) | [inline] |
References index.
Dune::Amg::PropertyGraphVertexPropertyMap< G, i >::PropertyGraphVertexPropertyMap | ( | G & | g | ) | [inline] |
Constructor.
g | The graph whose properties we access. |
Dune::Amg::PropertyGraphVertexPropertyMap< G, i >::PropertyGraphVertexPropertyMap | ( | ) | [inline] |
Default constructor.
bool Dune::Amg::Aggregator< G >::Stack::push | ( | const Vertex & | v | ) |
Dune::Amg::RandomAccessBundledPropertyMap< C, K, i, T, R >::RandomAccessBundledPropertyMap | ( | Container & | container | ) | [inline] |
Constructor.
container | The container with the property bundle. |
Dune::Amg::RandomAccessBundledPropertyMap< C, K, i, T, R >::RandomAccessBundledPropertyMap | ( | ) | [inline] |
The default constructor.
void Dune::Amg::MatrixHierarchy< M, IS, A >::recalculateGalerkin | ( | const F & | copyFlags | ) |
Recalculate the galerkin products.
If the data of the fine matrix changes but not its sparsity pattern this will recalculate all coarser levels without starting the expensive aggregation process all over again.
References Dune::Amg::BaseGalerkinProduct::calculate(), and Dune::redistributeMatrixEntries().
Referenced by Dune::Amg::AMG< M, X, S, PI, A >::recalculateHierarchy().
void Dune::Amg::AMG< M, X, S, PI, A >::recalculateHierarchy | ( | ) | [inline] |
Recalculate the matrix hierarchy.
It is assumed that the coarsening for the changed fine level matrix would yield the same aggregates. In this case it suffices to recalculate all the Galerkin products for the matrices of the coarser levels.
References Dune::Amg::MatrixHierarchy< M, PI, A >::recalculateGalerkin().
void Dune::Amg::Aggregate< G, S >::reconstruct | ( | const Vertex & | vertex | ) |
Reconstruct the aggregat from an seed node.
Will determine all vertices of the same agggregate and reference those.
const MatrixHierarchy< M, IS, A >::RedistributeInfoList & Dune::Amg::MatrixHierarchy< M, IS, A >::redistributeInformation | ( | ) | const |
Get the hierachy of the information about redistributions,.
bool Dune::Amg::repartitionAndDistributeMatrix | ( | const M & | origMatrix, |
M & | newMatrix, | ||
SequentialInformation & | origSequentialInformationomm, | ||
SequentialInformation *& | newComm, | ||
RedistributeInformation< SequentialInformation > & | ri, | ||
int | nparts, | ||
C1 & | criterion | ||
) |
Referenced by Dune::Amg::MatrixHierarchy< M, PI, A >::build().
bool Dune::Amg::repartitionAndDistributeMatrix | ( | const M & | origMatrix, |
M & | newMatrix, | ||
C & | origComm, | ||
C *& | newComm, | ||
RedistributeInformation< C > & | ri, | ||
int | nparts, | ||
C1 & | criterion | ||
) |
bool Dune::Amg::repartitionAndDistributeMatrix | ( | M & | origMatrix, |
M & | newMatrix, | ||
SequentialInformation & | origComm, | ||
SequentialInformation & | newComm, | ||
RedistributeInformation< SequentialInformation > & | ri | ||
) |
void Dune::Amg::EdgeProperties::reset | ( | ) | [inline] |
Reset all flags.
void Dune::Amg::ParallelIndicesCoarsener< T, E >::ParallelAggregateRenumberer< G, I >::reset | ( | ) | [inline] |
void Dune::Amg::VertexProperties::reset | ( | ) | [inline] |
Reset all flags.
void Dune::Amg::EdgeProperties::resetDepends | ( | ) | [inline] |
Resets the depends flag.
References Dune::Amg::EdgeProperties::DEPEND.
void Dune::Amg::VertexProperties::resetExcludedBorder | ( | ) | [inline] |
Marks the vertex as included in the aggregation.
References Dune::Amg::VertexProperties::BORDER.
void Dune::Amg::VertexProperties::resetFront | ( | ) | [inline] |
Resets the front node flag.
References Dune::Amg::VertexProperties::FRONT.
void Dune::Amg::EdgeProperties::resetInfluences | ( | ) | [inline] |
Resets the influence flag.
References Dune::Amg::EdgeProperties::INFLUENCE.
void Dune::Amg::VertexProperties::resetIsolated | ( | ) | [inline] |
Resets the isolated flag.
References Dune::Amg::VertexProperties::ISOLATED.
void Dune::Amg::VertexProperties::resetVisited | ( | ) | [inline] |
Resets the visited flag.
References Dune::Amg::VertexProperties::VISITED.
void Dune::Amg::Transfer< V, V1, SequentialInformation >::restrict | ( | const AggregatesMap< Vertex > & | aggregates, |
Vector & | coarse, | ||
const Vector & | fine, | ||
const SequentialInformation & | comm | ||
) | [inline, static] |
void Dune::Amg::Transfer< V, V1, OwnerOverlapCopyCommunication< T1, T2 > >::restrict | ( | const AggregatesMap< Vertex > & | aggregates, |
Vector & | coarse, | ||
const Vector & | fine, | ||
OwnerOverlapCopyCommunication< T1, T2 > & | comm | ||
) | [inline, static] |
void Dune::Amg::Aggregate< G, S >::seed | ( | const Vertex & | vertex | ) |
Initialize the aggregate with one vertex.
Dune::Amg::SeqOverlappingSchwarzSmootherArgs< T >::SeqOverlappingSchwarzSmootherArgs | ( | Overlap | overlap_ = vertex , |
bool | onthefly_ = false |
||
) | [inline] |
Dune::Amg::SequentialCommunicationArgs::SequentialCommunicationArgs | ( | CollectiveCommunication< void * > | comm, |
int | cat | ||
) | [inline] |
void Dune::Amg::DirichletBoundarySetter< T >::set | ( | M & | coarse, |
const T & | pinfo, | ||
const O & | copy | ||
) | [static] |
void Dune::Amg::DirichletBoundarySetter< SequentialInformation >::set | ( | M & | coarse, |
const SequentialInformation & | pinfo, | ||
const O & | copy | ||
) | [static] |
void Dune::Amg::CoarseningParameters::setAccumulate | ( | AccumulationMode | accu | ) | [inline] |
Set whether he data should be accumulated on fewer processes on coarser levels.
void Dune::Amg::CoarseningParameters::setAccumulate | ( | bool | accu | ) | [inline] |
References Dune::Amg::noAccu, and Dune::Amg::successiveAccu.
void Dune::Amg::Parameters::setAdditive | ( | bool | additive | ) | [inline] |
Set whether to use additive multigrid.
additive | True if multigrid should be additive. |
int Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::VertexAdder::setAggregate | ( | const AggregateDescriptor & | aggregate_ | ) | [inline] |
int Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::NoneAdder::setAggregate | ( | const AggregateDescriptor & | aggregate_ | ) | [inline] |
int Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::AggregateAdder< VM >::setAggregate | ( | const AggregateDescriptor & | aggregate_ | ) | [inline] |
void Dune::Amg::DependencyParameters::setAlpha | ( | double | a | ) | [inline] |
Set the scaling value for marking connections as strong. Default value is 1/3.
void Dune::Amg::DefaultConstructionArgs< T >::setArgs | ( | const SmootherArgs & | args | ) | [inline] |
void Dune::Amg::DependencyParameters::setBeta | ( | double | b | ) | [inline] |
Set threshold for marking nodes as isolated. The default value is 1.0E-5.
void Dune::Amg::CoarseningParameters::setCoarsenTarget | ( | int | nodes | ) | [inline] |
Set the maximum number of unknowns allowed on the coarsest level.
void Dune::Amg::DefaultConstructionArgs< T >::setComm | ( | T1 & | comm | ) | [inline] |
void Dune::Amg::DefaultParallelConstructionArgs< T, C >::setComm | ( | const C & | comm | ) | [inline] |
void Dune::Amg::Parameters::setDebugLevel | ( | int | level | ) | [inline] |
Set the debugging level.
level | If 0 no debugging output will be generated. |
void Dune::Amg::AggregationCriterion< T >::setDefaultValuesAnisotropic | ( | std::size_t | dim, |
std::size_t | diameter = 2 |
||
) | [inline] |
Sets reasonable default values for an aisotropic problem.
Reasonable means that we should end up with cube aggregates with sides of diameter 2 and sides in one dimension that are longer (e.g. for 3D: 2x2x3).
dim | The dimension of the problem. |
diameter | The preferred diameter for the aggregation. |
void Dune::Amg::AggregationParameters::setDefaultValuesAnisotropic | ( | std::size_t | dim, |
std::size_t | diameter = 2 |
||
) | [inline] |
Sets reasonable default values for an aisotropic problem.
Reasonable means that we should end up with cube aggregates with sides of diameter 2 and sides in one dimension that are longer (e.g. for 3D: 2x2x3).
dim | The dimension of the problem. |
diameter | The preferred diameter for the aggregation. |
Reimplemented in Dune::Amg::AggregationCriterion< Dependency< M, Norm > >, and Dune::Amg::AggregationCriterion< SymmetricDependency< M, Norm > >.
References Dune::Amg::AggregationParameters::setDefaultValuesIsotropic().
void Dune::Amg::AggregationCriterion< T >::setDefaultValuesIsotropic | ( | std::size_t | dim, |
std::size_t | diameter = 2 |
||
) | [inline] |
Sets reasonable default values for an isotropic problem.
Reasonable means that we should end up with cube aggregates of diameter 2.
dim | The dimension of the problem. |
diameter | The preferred diameter for the aggregation. |
Referenced by Dune::Amg::AggregationCriterion< SymmetricDependency< M, Norm > >::setDefaultValuesAnisotropic().
void Dune::Amg::AggregationParameters::setDefaultValuesIsotropic | ( | std::size_t | dim, |
std::size_t | diameter = 2 |
||
) | [inline] |
Sets reasonable default values for an isotropic problem.
Reasonable means that we should end up with cube aggregates of diameter 2.
dim | The dimension of the problem. |
diameter | The preferred diameter for the aggregation. |
Reimplemented in Dune::Amg::AggregationCriterion< Dependency< M, Norm > >, and Dune::Amg::AggregationCriterion< SymmetricDependency< M, Norm > >.
Referenced by Dune::Amg::AggregationParameters::setDefaultValuesAnisotropic().
void Dune::Amg::EdgeProperties::setDepends | ( | ) | [inline] |
Marks the edge as one of which the end point depends on the starting point.
References Dune::Amg::EdgeProperties::DEPEND.
void Dune::Amg::VertexProperties::setExcludedBorder | ( | ) | [inline] |
Marks the vertex as excluded from the aggregation.
References Dune::Amg::VertexProperties::BORDER.
void Dune::Amg::VertexProperties::setFront | ( | ) | [inline] |
Marks the node as belonging to the current clusters front.
References Dune::Amg::VertexProperties::FRONT.
void Dune::Amg::Parameters::setGamma | ( | std::size_t | gamma | ) | [inline] |
Set the value of gamma; 1 for V-cycle, 2 for W-cycle.
void Dune::Amg::EdgeProperties::setInfluences | ( | ) | [inline] |
Marks the edge as one of which the start vertex by the end vertex.
References Dune::Amg::EdgeProperties::INFLUENCE.
void Dune::Amg::VertexProperties::setIsolated | ( | ) | [inline] |
Marks that node as being isolated.
A node is isolated if it ha not got any strong connections to other nodes in the matrix graph.
References Dune::Amg::VertexProperties::ISOLATED.
void Dune::Amg::DefaultConstructionArgs< T >::setMatrix | ( | const Matrix & | matrix | ) | [inline] |
virtual void Dune::Amg::DefaultConstructionArgs< T >::setMatrix | ( | const Matrix & | matrix, |
const AggregatesMap & | amap | ||
) | [inline, virtual] |
virtual void Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::setMatrix | ( | const M & | matrix, |
const AggregatesMap & | amap | ||
) | [inline, virtual] |
void Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::setMatrix | ( | const M & | matrix | ) | [inline] |
void Dune::Amg::AggregationParameters::setMaxAggregateSize | ( | std::size_t | size | ) | [inline] |
Set the maximum number of nodes a aggregate is allowed to have.
The default values is 6.
size | The maximum number of nodes. |
void Dune::Amg::AggregationParameters::setMaxConnectivity | ( | std::size_t | connectivity | ) | [inline] |
Set the maximum number of connections a aggregate is allowed to have.
This limit exists to achieve sparsity of the coarse matrix. the default value is 15.
connectivity | The maximum number of connections a aggregate is allowed to have. |
void Dune::Amg::AggregationParameters::setMaxDistance | ( | std::size_t | distance | ) | [inline] |
Set the maximal distance allowed between to nodes in a aggregate.
The distance between two nodes in a aggregate is the minimal number of edges it takes to travel from one node to the other without leaving the aggregate. The default value is 2.
distance | The maximum distance allowed. |
void Dune::Amg::CoarseningParameters::setMaxLevel | ( | int | l | ) | [inline] |
Set the maximum number of levels allowed in the hierarchy.
void Dune::Amg::AggregationParameters::setMinAggregateSize | ( | std::size_t | size | ) | [inline] |
Set the minimum number of nodes a aggregate has to consist of.
the default value is 4.
void Dune::Amg::CoarseningParameters::setMinCoarsenRate | ( | double | rate | ) | [inline] |
Set the minimum coarsening rate to be achieved in each coarsening.
The default value is 1.2
void Dune::Amg::ConstructionArgs< SeqILUn< M, X, Y > >::setN | ( | int | n | ) | [inline] |
void Dune::Amg::Parameters::setNoPostSmoothSteps | ( | std::size_t | steps | ) | [inline] |
Set the number of postsmoothing steps to apply.
steps | The number of steps: |
void Dune::Amg::Parameters::setNoPreSmoothSteps | ( | std::size_t | steps | ) | [inline] |
Set the number of presmoothing steps to apply.
steps | The number of steps: |
void Dune::Amg::CoarseningParameters::setProlongationDampingFactor | ( | double | d | ) | [inline] |
Set the damping factor for the prolongation.
d | The new damping factor. |
void Dune::Amg::AggregationParameters::setSkipIsolated | ( | bool | skip | ) | [inline] |
Set whether isolated aggregates will not be represented on the coarse level.
skip | True if these aggregates will be skipped. |
void Dune::Amg::VertexProperties::setVisited | ( | ) | [inline] |
Mark the node as already visited.
References Dune::Amg::VertexProperties::VISITED.
VertexList::size_type Dune::Amg::Aggregate< G, S >::size | ( | ) |
Get the size of the aggregate.
bool Dune::Amg::AggregationParameters::skipIsolated | ( | ) | const [inline] |
Whether isolated aggregates will not be represented on the coarse level.
Dune::Amg::SparsityBuilder< M >::SparsityBuilder | ( | M & | matrix | ) |
Constructor.
matrix | The matrix whose sparsity pattern we should set up. |
Dune::Amg::Aggregator< G >::Stack::Stack | ( | const MatrixGraph & | graph, |
const Aggregator< G > & | aggregatesBuilder, | ||
const AggregatesMap< Vertex > & | aggregates | ||
) |
std::size_t Dune::Amg::SparsityBuilder< M >::sumRowSize | ( | ) |
Dune::Amg::SymmetricCriterion< M, Norm >::SymmetricCriterion | ( | const Parameters & | parms | ) | [inline] |
Dune::Amg::SymmetricCriterion< M, Norm >::SymmetricCriterion | ( | ) | [inline] |
Dune::Amg::SymmetricDependency< M, N >::SymmetricDependency | ( | const Parameters & | parms | ) | [inline] |
Dune::Amg::SymmetricDependency< M, N >::SymmetricDependency | ( | ) | [inline] |
Dune::Amg::UnSymmetricCriterion< M, Norm >::UnSymmetricCriterion | ( | const Parameters & | parms | ) | [inline] |
Dune::Amg::UnSymmetricCriterion< M, Norm >::UnSymmetricCriterion | ( | ) | [inline] |
bool Dune::Amg::AMG< M, X, S, PI, A >::usesDirectCoarseLevelSolver | ( | ) | const |
Check whether the coarse solver used is a direct solver.
int Dune::Amg::Aggregator< G >::Counter::value | ( | ) |
Access the current count.
Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::VertexAdder::VertexAdder | ( | Vector & | subdomains_, |
const AggregatesMap & | aggregates_ | ||
) | [inline] |
Dune::Amg::VertexProperties::VertexProperties | ( | ) | [inline] |
Constructor.
bool Dune::Amg::VertexProperties::visited | ( | ) | const [inline] |
Checks wether the node is marked as visited.
References Dune::Amg::VertexProperties::VISITED.
int Dune::Amg::visitNeighbours | ( | const G & | graph, |
const typename G::VertexDescriptor & | vertex, | ||
V & | visitor | ||
) |
Visit all neighbour vertices of a vertex in a graph.
graph | The graph whose vertices to visit. |
vertex | The vertex whose neighbours we want to visit. |
visitor | The visitor evaluated for each EdgeIterator (by its method operator()(const ConstEdgeIterator& edge) |
Referenced by Dune::Amg::BaseConnectivityConstructor::constructOverlapConnectivity().
Dune::Amg::AggregatesMap< V >::~AggregatesMap | ( | ) |
Destructor.
Dune::Amg::Aggregator< G >::~Aggregator | ( | ) |
Destructor.
Dune::Amg::AMG< M, X, S, PI, A >::~AMG | ( | ) |
virtual Dune::Amg::DefaultConstructionArgs< T >::~DefaultConstructionArgs | ( | ) | [inline, virtual] |
virtual Dune::Amg::DefaultParallelConstructionArgs< T, C >::~DefaultParallelConstructionArgs | ( | ) | [inline, virtual] |
Dune::Amg::Hierarchy< T, A >::~Hierarchy | ( | ) |
Destructor.
References Dune::Amg::ConstructionTraits< T >::deconstruct().
Dune::Amg::MatrixHierarchy< M, IS, A >::~MatrixHierarchy | ( | ) |
Dune::Amg::Aggregator< G >::Stack::~Stack | ( | ) |
Aggregate* Dune::Amg::OverlapVertex< T >::aggregate |
The aggregate the vertex belongs to.
Referenced by Dune::Amg::BaseConnectivityConstructor::constructOverlapConnectivity(), Dune::Amg::ConnectivityConstructor< G, T >::examine(), and Dune::Amg::GalerkinProduct< T >::OVLess< A >::operator()().
SolverCategory::Category Dune::Amg::OwnerOverlapCopyCommunicationArgs::cat_ |
C* Dune::Amg::OverlappingSchwarzOperatorArgs< M, C >::comm_ |
C* Dune::Amg::NonoverlappingOperatorArgs< M, C >::comm_ |
CollectiveCommunication<void*> Dune::Amg::SequentialCommunicationArgs::comm_ |
Matrix::field_type Dune::Amg::Dependency< M, N >::diagonal_ [protected] |
The norm of the current diagonal.
Matrix::field_type Dune::Amg::SymmetricDependency< M, N >::diagonal_ [protected] |
The norm of the current diagonal.
const V Dune::Amg::AggregatesMap< V >::ISOLATED [static] |
Identifier of isolated vertices.
Referenced by Dune::Amg::MatrixHierarchy< M, PI, A >::getCoarsestAggregatesOnFinest(), Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::VertexAdder::operator()(), and Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::AggregateAdder< VM >::operator()().
int Dune::Amg::DefaultSmootherArgs< T >::iterations |
The numbe of iterations to perform.
Referenced by Dune::Amg::ConstructionTraits< SeqSSOR< M, X, Y, l > >::construct(), Dune::Amg::ConstructionTraits< SeqSOR< M, X, Y, l > >::construct(), Dune::Amg::ConstructionTraits< SeqJac< M, X, Y, l > >::construct(), and Dune::Amg::ConstructionTraits< ParSSOR< M, X, Y, C > >::construct().
M* Dune::Amg::OverlappingSchwarzOperatorArgs< M, C >::matrix_ |
M* Dune::Amg::NonoverlappingOperatorArgs< M, C >::matrix_ |
const Matrix* Dune::Amg::DefaultConstructionArgs< T >::matrix_ [protected] |
const Matrix* Dune::Amg::Dependency< M, N >::matrix_ [protected] |
The matrix we work on.
const Matrix* Dune::Amg::SymmetricDependency< M, N >::matrix_ [protected] |
The matrix we work on.
Matrix::field_type Dune::Amg::Dependency< M, N >::maxValue_ [protected] |
The current max value.
Matrix::field_type Dune::Amg::SymmetricDependency< M, N >::maxValue_ [protected] |
The current max value.
Norm Dune::Amg::Dependency< M, N >::norm_ [protected] |
The functor for calculating the norm.
Norm Dune::Amg::SymmetricDependency< M, N >::norm_ [protected] |
The functor for calculating the norm.
const Vertex Dune::Amg::Aggregator< G >::Stack::NullEntry [static] |
bool Dune::Amg::SeqOverlappingSchwarzSmootherArgs< T >::onthefly |
Overlap Dune::Amg::SeqOverlappingSchwarzSmootherArgs< T >::overlap |
RelaxationFactor Dune::Amg::DefaultSmootherArgs< T >::relaxationFactor |
The relaxation factor to use.
Referenced by Dune::Amg::ConstructionTraits< SeqSSOR< M, X, Y, l > >::construct(), Dune::Amg::ConstructionTraits< SeqSOR< M, X, Y, l > >::construct(), Dune::Amg::ConstructionTraits< SeqJac< M, X, Y, l > >::construct(), Dune::Amg::ConstructionTraits< SeqILU0< M, X, Y > >::construct(), Dune::Amg::ConstructionTraits< SeqILUn< M, X, Y > >::construct(), Dune::Amg::ConstructionTraits< ParSSOR< M, X, Y, C > >::construct(), and Dune::Amg::ConstructionTraits< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::construct().
int Dune::Amg::Dependency< M, N >::row_ [protected] |
index of the currently evaluated row.
int Dune::Amg::SymmetricDependency< M, N >::row_ [protected] |
index of the currently evaluated row.
const V Dune::Amg::AggregatesMap< V >::UNAGGREGATED [static] |
Identifier of not yet aggregated vertices.
Vertex Dune::Amg::OverlapVertex< T >::vertex |
The vertex descriptor.
Referenced by Dune::Amg::BaseConnectivityConstructor::constructOverlapConnectivity(), and Dune::Amg::ConnectivityConstructor< G, T >::examine().
friend class KAMG [friend] |
friend class KAmgTwoGrid< AMG > [friend] |
std::ostream& operator<< | ( | std::ostream & | os, |
const EdgeProperties & | props | ||
) | [friend] |
std::ostream& operator<< | ( | std::ostream & | os, |
const VertexProperties & | props | ||
) | [friend] |
friend class Stack [friend] |