|
dune-istl 2.8.0
|
Loading...
Searching...
No Matches
novlpschwarz.hh
Go to the documentation of this file.
???
This file implements a vector space as a tensor product of a given vector space. The number of compon...
Define base class for scalar product and norm.
Define general preconditioner interface.
Simple iterative methods like Jacobi, Gauss-Seidel, SOR, SSOR, etc. in a generic way.
Implementation of the BCRSMatrix class.
The incomplete LU factorization kernels.
Classes providing communication interfaces for overlapping Schwarz methods.
Implementations of the inverse operator interface.
Define general, extensible interface for operators. The available implementation wraps a matrix.
static constexpr size_type M()
std::shared_ptr< T > stackobject_to_shared_ptr(T &t)
A nonoverlapping operator with communication object.
Definition novlpschwarz.hh:62
C communication_type
The type of the communication object.
Definition novlpschwarz.hh:73
std::multimap< int, std::pair< int, RILIterator > > RIMap
Definition novlpschwarz.hh:83
void novlp_op_apply(const X &x, Y &y, field_type alpha) const
Definition novlpschwarz.hh:127
NonoverlappingSchwarzOperator(std::shared_ptr< const matrix_type > A, const communication_type &com)
Definition novlpschwarz.hh:97
M::ConstColIterator ColIterator
Definition novlpschwarz.hh:80
virtual void apply(const X &x, Y &y) const
apply operator to x:
Definition novlpschwarz.hh:102
X domain_type
The type of the domain.
Definition novlpschwarz.hh:67
virtual SolverCategory::Category category() const
Category of the linear operator (see SolverCategory::Category)
Definition novlpschwarz.hh:236
virtual const matrix_type & getmat() const
get matrix via *
Definition novlpschwarz.hh:122
RIL::const_iterator RILIterator
Definition novlpschwarz.hh:79
Y range_type
The type of the range.
Definition novlpschwarz.hh:69
M matrix_type
The type of the matrix we operate on.
Definition novlpschwarz.hh:65
M::ConstRowIterator RowIterator
Definition novlpschwarz.hh:81
const communication_type & getCommunication() const
Get the object responsible for communication.
Definition novlpschwarz.hh:242
virtual void applyscaleadd(field_type alpha, const X &x, Y &y) const
apply operator to x, scale and add:
Definition novlpschwarz.hh:110
X::field_type field_type
The field type of the range.
Definition novlpschwarz.hh:71
NonoverlappingSchwarzOperator(const matrix_type &A, const communication_type &com)
constructor: just store a reference to a matrix.
Definition novlpschwarz.hh:93
RI::const_iterator RIIterator
Definition novlpschwarz.hh:78
Nonoverlapping parallel preconditioner.
Definition novlpschwarz.hh:277
NonoverlappingBlockPreconditioner(P &p, const communication_type &c)
Constructor.
Definition novlpschwarz.hh:303
virtual SolverCategory::Category category() const
Category of the preconditioner (see SolverCategory::Category)
Definition novlpschwarz.hh:360
virtual void apply(domain_type &v, const range_type &d)
Apply the preconditioner.
Definition novlpschwarz.hh:333
P::range_type range_type
The range type of the preconditioner.
Definition novlpschwarz.hh:285
NonoverlappingBlockPreconditioner(const std::shared_ptr< P > &p, const communication_type &c)
Constructor.
Definition novlpschwarz.hh:314
virtual void post(domain_type &x)
Clean up.
Definition novlpschwarz.hh:354
C communication_type
The type of the communication object.
Definition novlpschwarz.hh:287
virtual void pre(domain_type &x, range_type &b)
Prepare the preconditioner.
Definition novlpschwarz.hh:323
void apply(X &v, const Y &d)
Apply one step of the preconditioner to the system A(v)=d.
Definition novlpschwarz.hh:343
P::domain_type domain_type
The domain type of the preconditioner.
Definition novlpschwarz.hh:283
A linear operator exporting itself in matrix form.
Definition operators.hh:107
Base class for matrix free definition of preconditioners.
Definition preconditioner.hh:30
@ nonoverlapping
Category for non-overlapping solvers.
Definition solvercategory.hh:25
T begin(T... args)
T end(T... args)
T equal_range(T... args)
T erase(T... args)
T find(T... args)
T insert(T... args)
T make_pair(T... args)
T resize(T... args)
T size(T... args)
Legal Statements / Impressum | Hosted by TU Dresden & Uni Heidelberg | Generated by
1.9.8