|
dune-istl 2.8.0
|
Loading...
Searching...
No Matches
smoother.hh
Go to the documentation of this file.
349 static inline std::shared_ptr<NonoverlappingBlockPreconditioner<C,T>> construct(Arguments& args)
764 Dune::dinfo <<std::endl<< "Created "<<pairs.size()<<" ("<<total<<") pair domains"<<std::endl<<std::endl;
782 Dune::dinfo<<"Subdomain size: min="<<minsize<<" max="<<maxsize<<" avg="<<(sum/subdomains.size())
840 Dune::dinfo<<"Subdomain size: min="<<minsize<<" max="<<maxsize<<" avg="<<(sum/subdomains.size())
Provides classes for the Coloring process of AMG.
Helper classes for the construction of classes without empty constructor.
Define general preconditioner interface.
DefaultSmootherArgs< typename X::field_type > Arguments
Definition smoother.hh:72
static void postSmooth(Smoother &smoother, Domain &v, Range &d)
Definition smoother.hh:492
void operator()(const T &edge)
Definition smoother.hh:687
static void preSmooth(Smoother &smoother, Domain &v, const Range &d)
Definition smoother.hh:516
static std::shared_ptr< SeqJac< M, X, Y, l > > construct(Arguments &args)
Definition smoother.hh:254
ConstructionArgs< SeqILU< M, X, Y > > Arguments
Definition smoother.hh:307
const Matrix & getMatrix() const
Definition smoother.hh:112
Smoother::range_type Range
Definition smoother.hh:513
int setAggregate(const AggregateDescriptor &aggregate_)
Definition smoother.hh:689
DefaultSmootherArgs< typename T::matrix_type::field_type > Arguments
Definition smoother.hh:65
int setAggregate(const AggregateDescriptor &aggregate_)
Definition smoother.hh:668
ConstructionTraits< T > SeqConstructionTraits
Definition smoother.hh:348
void setArgs(const SmootherArgs &args)
Definition smoother.hh:117
ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > > Arguments
Definition smoother.hh:853
Dune::Amg::SmootherApplier< NonoverlappingBlockPreconditioner< C, SeqSOR< M, X, Y, l > > >::Smoother
NonoverlappingBlockPreconditioner< C, SeqSOR< M, X, Y, l > > Smoother
Definition smoother.hh:482
static void postSmooth(Smoother &smoother, Domain &v, Range &d)
Definition smoother.hh:454
AggregateAdder(Vector &subdomains_, const AggregatesMap &aggregates_, const MatrixGraph< const M > &graph_, VM &visitedMap_)
Definition smoother.hh:702
void setComm(const C &comm)
Definition smoother.hh:156
DefaultConstructionArgs< Richardson< X, Y > > Arguments
Definition smoother.hh:267
virtual ~DefaultConstructionArgs()
Definition smoother.hh:178
SeqOverlappingSchwarzSmootherArgs< typename M::field_type > Arguments
Definition smoother.hh:550
Vector::value_type Subdomain
Definition smoother.hh:564
static void preSmooth(Smoother &smoother, Domain &v, Range &d)
Definition smoother.hh:486
Smoother::range_type Range
Definition smoother.hh:483
SeqSOR< M, X, Y, l > Smoother
Definition smoother.hh:444
Dune::Amg::ConstructionArgs< SeqOverlappingSchwarz< M, X, TM, TS, TA > >::AggregateAdder::operator()
void operator()(const T &edge)
Definition smoother.hh:708
static std::shared_ptr< SeqSSOR< M, X, Y, l > > construct(Arguments &args)
Definition smoother.hh:222
AggregatesMap::AggregateDescriptor AggregateDescriptor
Definition smoother.hh:562
DefaultConstructionArgs< SeqSOR< M, X, Y, l > > Arguments
Definition smoother.hh:236
virtual void setMatrix(const M &matrix, const AggregatesMap &amap)
Definition smoother.hh:566
void setMatrix(const Args &...)
Definition smoother.hh:182
DefaultConstructionArgs< SeqJac< M, X, Y, l > > Arguments
Definition smoother.hh:252
DefaultConstructionArgs< SeqSSOR< M, X, Y, l > > Arguments
Definition smoother.hh:220
const SmootherArgs getArgs() const
Definition smoother.hh:131
VertexAdder(Vector &subdomains_, const AggregatesMap &aggregates_)
Definition smoother.hh:659
const Vector & getSubDomains()
Definition smoother.hh:651
SeqOverlappingSchwarz< M, X, TM, TS, TA >::subdomain_vector Vector
Definition smoother.hh:563
static std::shared_ptr< SeqOverlappingSchwarz< M, X, TM, TS, TA > > construct(Arguments &args)
Definition smoother.hh:855
static void preSmooth(Smoother &smoother, Domain &v, Range &d)
Definition smoother.hh:467
void setMatrix(const Matrix &matrix)
Definition smoother.hh:102
static void preSmooth(Smoother &smoother, Domain &v, Range &d)
Definition smoother.hh:448
BlockPreconditioner< X, Y, C, SeqSOR< M, X, Y, l > > Smoother
Definition smoother.hh:463
void setComm(T1 &comm)
Definition smoother.hh:191
int noSubdomains() const
Definition smoother.hh:674
void presmooth(LevelContext &levelContext, size_t steps)
Apply pre smoothing on the current level.
Definition smoother.hh:404
Smoother::domain_type Domain
Definition smoother.hh:514
SeqOverlappingSchwarzSmootherArgs(Overlap overlap_=vertex, bool onthefly_=false)
Definition smoother.hh:541
DefaultParallelConstructionArgs< T, C > Arguments
Definition smoother.hh:335
DefaultParallelConstructionArgs< T, C > Arguments
Definition smoother.hh:347
const SequentialInformation & getComm()
Definition smoother.hh:126
V AggregateDescriptor
The aggregate descriptor type.
Definition aggregates.hh:578
static const V ISOLATED
Identifier of isolated vertices.
Definition aggregates.hh:569
DefaultSmootherArgs()
Default constructor.
Definition smoother.hh:54
void setMatrix(const M &matrix)
Definition smoother.hh:604
void operator()(const T &edge)
Definition smoother.hh:663
static void postSmooth(Smoother &smoother, Domain &v, const Range &d)
apply post smoothing in forward direction
Definition smoother.hh:392
FieldTraits< T >::real_type RelaxationFactor
The type of the relaxation factor.
Definition smoother.hh:40
Smoother::domain_type Domain
Definition smoother.hh:484
static std::shared_ptr< BlockPreconditioner< X, Y, C, T > > construct(Arguments &args)
Definition smoother.hh:337
SLList< VertexDescriptor, Allocator > VertexList
The type of a single linked list of vertex descriptors.
Definition aggregates.hh:590
static std::shared_ptr< NonoverlappingBlockPreconditioner< C, T > > construct(Arguments &args)
Definition smoother.hh:349
SeqOverlappingSchwarz< M, X, MultiplicativeSchwarzMode, MS, TA > Smoother
Definition smoother.hh:512
static std::shared_ptr< ParSSOR< M, X, Y, C > > construct(Arguments &args)
Definition smoother.hh:324
MatrixGraph< M >::VertexDescriptor VertexDescriptor
Definition smoother.hh:560
static std::shared_ptr< SeqILU< M, X, Y > > construct(Arguments &args)
Definition smoother.hh:309
int noSubdomains() const
Definition smoother.hh:729
const SequentialInformation & getComm()
Definition smoother.hh:194
static std::shared_ptr< SeqSOR< M, X, Y, l > > construct(Arguments &args)
Definition smoother.hh:238
static std::shared_ptr< Richardson< X, Y > > construct(Arguments &args)
Definition smoother.hh:269
virtual void setMatrix(const Matrix &matrix, const AggregatesMap &amap)
Definition smoother.hh:106
int noSubdomains() const
Definition smoother.hh:693
void postsmooth(LevelContext &levelContext, size_t steps)
Apply post smoothing on the current level.
Definition smoother.hh:426
Dune::Amg::AggregatesMap< VertexDescriptor > AggregatesMap
Definition smoother.hh:561
const SmootherArgs getArgs() const
Definition smoother.hh:199
static void postSmooth(Smoother &smoother, Domain &v, const Range &d)
Definition smoother.hh:522
DefaultParallelConstructionArgs< M, C > Arguments
Definition smoother.hh:322
RelaxationFactor relaxationFactor
The relaxation factor to use.
Definition smoother.hh:49
virtual ~DefaultParallelConstructionArgs()
Definition smoother.hh:153
Smoother::domain_type Domain
Definition smoother.hh:446
int setAggregate(const AggregateDescriptor &aggregate_)
Definition smoother.hh:723
Smoother::range_type Range
Definition smoother.hh:445
const C & getComm() const
Definition smoother.hh:161
virtual ~DefaultConstructionArgs()
Definition smoother.hh:99
static void preSmooth(Smoother &smoother, Domain &v, const Range &d)
apply pre smoothing in forward direction
Definition smoother.hh:380
static void postSmooth(Smoother &smoother, Domain &v, Range &d)
Definition smoother.hh:473
ConstructionTraits< T > SeqConstructionTraits
Definition smoother.hh:336
ConstructionArgs(int n=0)
Definition smoother.hh:282
Smoother::range_type Range
Definition smoother.hh:464
void setArgs(const SmootherArgs &args)
Definition smoother.hh:185
int iterations
The numbe of iterations to perform.
Definition smoother.hh:45
Smoother::domain_type Domain
Definition smoother.hh:465
int size() const
void clear()
static constexpr size_type M()
#define DUNE_THROW(E, m)
DInfoType dinfo
Reference get(const RAPropertyMapHelper< Reference, PropertyMap > &pmap, const Key &key)
T real_type
Sequential overlapping Schwarz preconditioner.
Definition overlappingschwarz.hh:753
X range_type
The range type of the preconditioner.
Definition overlappingschwarz.hh:768
X domain_type
The domain type of the preconditioner.
Definition overlappingschwarz.hh:763
Nonoverlapping parallel preconditioner.
Definition novlpschwarz.hh:277
P::range_type range_type
The range type of the preconditioner.
Definition novlpschwarz.hh:285
P::domain_type domain_type
The domain type of the preconditioner.
Definition novlpschwarz.hh:283
Tag that tells the Schwarz method to be multiplicative.
Definition overlappingschwarz.hh:124
Class providing information about the mapping of the vertices onto aggregates.
Definition aggregates.hh:558
M::size_type VertexDescriptor
The vertex descriptor.
Definition graph.hh:71
Iterator over all edges starting from a vertex.
Definition graph.hh:93
The vertex iterator type of the graph.
Definition graph.hh:207
Definition pinfo.hh:26
The default class for the smoother arguments.
Definition smoother.hh:36
Traits class for getting the attribute class of a smoother.
Definition smoother.hh:64
Construction Arguments for the default smoothers.
Definition smoother.hh:91
Definition smoother.hh:146
Definition smoother.hh:151
Definition smoother.hh:172
Definition smoother.hh:280
Definition smoother.hh:535
Definition smoother.hh:556
X domain_type
The domain type of the preconditioner.
Definition preconditioners.hh:264
Y range_type
The range type of the preconditioner.
Definition preconditioners.hh:266
X domain_type
The domain type of the preconditioner.
Definition schwarz.hh:286
Y range_type
The range type of the preconditioner.
Definition schwarz.hh:291
T begin(T... args)
T endl(T... args)
T make_pair(T... args)
T max(T... args)
T min(T... args)
Legal Statements / Impressum | Hosted by TU Dresden & Uni Heidelberg | Generated by
1.9.8