Go to the documentation of this file.
3 #ifndef DUNE_AMGCONSTRUCTION_HH
4 #define DUNE_AMGCONSTRUCTION_HH
6 #include <dune/common/unused.hh>
37 class ConstructionTraits
68 template<
class T,
class A>
84 template<
class M,
class C>
95 template<
class M,
class C>
107 struct OwnerOverlapCopyCommunicationArgs
110 : comm_(comm), cat_(cat)
123 DUNE_UNUSED_PARAMETER(cat);
126 CollectiveCommunication<void*>
comm_;
132 template<
class M,
class X,
class Y,
class C>
135 template<
class M,
class X,
class Y,
class C>
140 template<
class M,
class X,
class Y,
class C>
157 template<
class M,
class X,
class Y,
class C>
174 template<
class M,
class X,
class Y>
184 template<
class M,
class X,
class Y>
220 template<
class T1,
class T2>
221 class ConstructionTraits<OwnerOverlapCopyCommunication<T1,T2> >
224 typedef const OwnerOverlapCopyCommunicationArgs
Arguments;
228 return new OwnerOverlapCopyCommunication<T1,T2>(args.comm_, args.cat_);
231 static inline void deconstruct(OwnerOverlapCopyCommunication<T1,T2>* com)
NonoverlappingOperatorArgs< M, C > Arguments
Definition: construction.hh:161
Category
Definition: solvercategory.hh:21
static OverlappingSchwarzOperator< M, X, Y, C > * construct(const Arguments &args)
Definition: construction.hh:146
Adapter to turn a matrix into a linear operator.
Definition: operators.hh:133
NonoverlappingOperatorArgs(M &matrix, C &comm)
Definition: construction.hh:98
static NonoverlappingSchwarzOperator< M, X, Y, C > * construct(const Arguments &args)
Definition: construction.hh:163
Definition: construction.hh:118
C * comm_
Definition: construction.hh:103
C * comm_
Definition: construction.hh:92
M * matrix_
Definition: construction.hh:91
Traits class for generically constructing non default constructable types.
Definition: novlpschwarz.hh:247
Definition: construction.hh:96
static void deconstruct(MatrixAdapter< M, X, Y > *m)
Definition: construction.hh:195
static void deconstruct(OverlappingSchwarzOperator< M, X, Y, C > *t)
Definition: construction.hh:151
const typedef SequentialCommunicationArgs Arguments
Definition: construction.hh:205
M * matrix_
Definition: construction.hh:102
M * matrix_
Definition: construction.hh:181
A nonoverlapping operator with communication object.
Definition: novlpschwarz.hh:59
Define general, extensible interface for operators. The available implementation wraps a matrix.
static BlockVector< T, A > * construct(Arguments &n)
Definition: construction.hh:73
Definition: construction.hh:85
const typedef MatrixAdapterArgs< M, X, Y > Arguments
Definition: construction.hh:188
static void deconstruct(BlockVector< T, A > *t)
Definition: construction.hh:78
static MatrixAdapter< M, X, Y > * construct(Arguments &args)
Definition: construction.hh:190
static void deconstruct(SequentialInformation *si)
Definition: construction.hh:211
static void deconstruct(NonoverlappingSchwarzOperator< M, X, Y, C > *t)
Definition: construction.hh:168
const typedef void * Arguments
A type holding all the arguments needed to call the constructor.
Definition: construction.hh:44
Classes providing communication interfaces for overlapping Schwarz methods.
const typedef int Arguments
Definition: construction.hh:72
CollectiveCommunication< void * > comm_
Definition: construction.hh:126
static void deconstruct(T *t)
Destroys an object.
Definition: construction.hh:61
Definition: allocator.hh:7
static SequentialInformation * construct(Arguments &args)
Definition: construction.hh:206
OverlappingSchwarzOperatorArgs< M, C > Arguments
Definition: construction.hh:144
OverlappingSchwarzOperatorArgs(M &matrix, C &comm)
Definition: construction.hh:87
SequentialCommunicationArgs(CollectiveCommunication< void * > comm, int cat)
Definition: construction.hh:120
This file implements a vector space as a tensor product of a given vector space. The number of compon...
Definition: construction.hh:175
An overlapping schwarz operator.
Definition: construction.hh:133
static T * construct(Arguments &args)
Construct an object with the specified arguments.
Definition: construction.hh:52
A vector of blocks with memory management.
Definition: bvector.hh:316
MatrixAdapterArgs(M &matrix, const SequentialInformation &)
Definition: construction.hh:177