|
dune-istl 2.10
|
Loading...
Searching...
No Matches
Dune::NonoverlappingSchwarzOperator< M, X, Y, C > Class Template Reference
A nonoverlapping operator with communication object. More...
#include <dune/istl/novlpschwarz.hh>
Inheritance diagram for Dune::NonoverlappingSchwarzOperator< M, X, Y, C >:

Public Types | |
| typedef M | matrix_type |
| The type of the matrix we operate on. | |
| typedef X | domain_type |
| The type of the domain. | |
| typedef Y | range_type |
| The type of the range. | |
| typedef X::field_type | field_type |
| The field type of the range. | |
| typedef C | communication_type |
| The type of the communication object. | |
| typedef C::PIS | PIS |
| typedef C::RI | RI |
| typedef RI::RemoteIndexList | RIL |
| typedef RI::const_iterator | RIIterator |
| typedef RIL::const_iterator | RILIterator |
| typedef M::ConstColIterator | ColIterator |
| typedef M::ConstRowIterator | RowIterator |
| typedef std::multimap< int, int > | MM |
| typedef std::multimap< int, std::pair< int, RILIterator > > | RIMap |
| typedef RIMap::iterator | RIMapit |
Public Member Functions | |
| NonoverlappingSchwarzOperator (const matrix_type &A, const communication_type &com) | |
| constructor: just store a reference to a matrix. | |
| NonoverlappingSchwarzOperator (std::shared_ptr< const matrix_type > A, const communication_type &com) | |
| virtual void | apply (const X &x, Y &y) const |
| apply operator to x: \( y = A(x) \) | |
| virtual void | applyscaleadd (field_type alpha, const X &x, Y &y) const |
| apply operator to x, scale and add: \( y = y + \alpha A(x) \) | |
| virtual const matrix_type & | getmat () const |
| get matrix via * | |
| void | novlp_op_apply (const X &x, Y &y, field_type alpha) const |
| virtual SolverCategory::Category | category () const |
| Category of the linear operator (see SolverCategory::Category) | |
| const communication_type & | getCommunication () const |
| Get the object responsible for communication. | |
Detailed Description
template<class M, class X, class Y, class C>
class Dune::NonoverlappingSchwarzOperator< M, X, Y, C >
class Dune::NonoverlappingSchwarzOperator< M, X, Y, C >
A nonoverlapping operator with communication object.
Member Typedef Documentation
◆ ColIterator
template<class M , class X , class Y , class C >
| typedef M::ConstColIterator Dune::NonoverlappingSchwarzOperator< M, X, Y, C >::ColIterator |
◆ communication_type
template<class M , class X , class Y , class C >
| typedef C Dune::NonoverlappingSchwarzOperator< M, X, Y, C >::communication_type |
The type of the communication object.
◆ domain_type
template<class M , class X , class Y , class C >
| typedef X Dune::NonoverlappingSchwarzOperator< M, X, Y, C >::domain_type |
The type of the domain.
◆ field_type
template<class M , class X , class Y , class C >
| typedef X::field_type Dune::NonoverlappingSchwarzOperator< M, X, Y, C >::field_type |
The field type of the range.
◆ matrix_type
template<class M , class X , class Y , class C >
| typedef M Dune::NonoverlappingSchwarzOperator< M, X, Y, C >::matrix_type |
The type of the matrix we operate on.
◆ MM
template<class M , class X , class Y , class C >
| typedef std::multimap<int,int> Dune::NonoverlappingSchwarzOperator< M, X, Y, C >::MM |
◆ PIS
template<class M , class X , class Y , class C >
| typedef C::PIS Dune::NonoverlappingSchwarzOperator< M, X, Y, C >::PIS |
◆ range_type
template<class M , class X , class Y , class C >
| typedef Y Dune::NonoverlappingSchwarzOperator< M, X, Y, C >::range_type |
The type of the range.
◆ RI
template<class M , class X , class Y , class C >
| typedef C::RI Dune::NonoverlappingSchwarzOperator< M, X, Y, C >::RI |
◆ RIIterator
template<class M , class X , class Y , class C >
| typedef RI::const_iterator Dune::NonoverlappingSchwarzOperator< M, X, Y, C >::RIIterator |
◆ RIL
template<class M , class X , class Y , class C >
| typedef RI::RemoteIndexList Dune::NonoverlappingSchwarzOperator< M, X, Y, C >::RIL |
◆ RILIterator
template<class M , class X , class Y , class C >
| typedef RIL::const_iterator Dune::NonoverlappingSchwarzOperator< M, X, Y, C >::RILIterator |
◆ RIMap
template<class M , class X , class Y , class C >
| typedef std::multimap<int,std::pair<int,RILIterator> > Dune::NonoverlappingSchwarzOperator< M, X, Y, C >::RIMap |
◆ RIMapit
template<class M , class X , class Y , class C >
| typedef RIMap::iterator Dune::NonoverlappingSchwarzOperator< M, X, Y, C >::RIMapit |
◆ RowIterator
template<class M , class X , class Y , class C >
| typedef M::ConstRowIterator Dune::NonoverlappingSchwarzOperator< M, X, Y, C >::RowIterator |
Constructor & Destructor Documentation
◆ NonoverlappingSchwarzOperator() [1/2]
template<class M , class X , class Y , class C >
|
inline |
constructor: just store a reference to a matrix.
- Parameters
-
A The assembled matrix. com The communication object for syncing owner and copy data points. (E.~g. OwnerOverlapCommunication )
◆ NonoverlappingSchwarzOperator() [2/2]
template<class M , class X , class Y , class C >
|
inline |
Member Function Documentation
◆ apply()
template<class M , class X , class Y , class C >
|
inlinevirtual |
apply operator to x: \( y = A(x) \)
Implements Dune::LinearOperator< X, Y >.
◆ applyscaleadd()
template<class M , class X , class Y , class C >
|
inlinevirtual |
apply operator to x, scale and add: \( y = y + \alpha A(x) \)
Implements Dune::LinearOperator< X, Y >.
◆ category()
template<class M , class X , class Y , class C >
|
inlinevirtual |
Category of the linear operator (see SolverCategory::Category)
Implements Dune::LinearOperator< X, Y >.
◆ getCommunication()
template<class M , class X , class Y , class C >
|
inline |
Get the object responsible for communication.
◆ getmat()
template<class M , class X , class Y , class C >
|
inlinevirtual |
get matrix via *
Implements Dune::AssembledLinearOperator< M, X, Y >.
◆ novlp_op_apply()
template<class M , class X , class Y , class C >
|
inline |
The documentation for this class was generated from the following file:
Legal Statements / Impressum | Hosted by TU Dresden & Uni Heidelberg | Generated by
1.9.8