concepts::BelosLinProb< T, MV, OP > Class Template Reference
Decorator that decorates the Class Belos::LinearProblem<T, MV, OP> with interfaces to Concepts SparseMatrix and Vector. More...
#include <belosLinProb.hh>
Public Member Functions | |
BelosLinProb () | |
Default Constructor. More... | |
BelosLinProb (concepts::SparseMatrix< T > &sparse, Teuchos::RCP< const Teuchos::Comm< int > > comm) | |
Copies the informations of a concepts::SparseMatrix into a Tpetra::CrsMatrix and sets it to the operator of the problem. More... | |
BelosLinProb (Teuchos::RCP< const Teuchos::Comm< int > > comm) | |
Copies the informations of a concepts::SparseMatrix into a Tpetra::CrsMatrix and sets it to the Operator of the problem. More... | |
Teuchos::RCP< Tpetra::CrsMatrix< T, int, int > > | getCrsMat () |
Getter for CRS matrix used for preconditoner. More... | |
void | setConceptsRHS (const Vector< T > &rhs, Teuchos::RCP< const Teuchos::Comm< int > > comm) |
Copies the informations of a concepts::Vector into a Tpetra::Multivector and sets it to the rhs vector of the problem. More... | |
void | setConceptsRHS (Teuchos::RCP< const Teuchos::Comm< int > > comm) |
Copies the informations of a concepts::Vector into a Tpetra::Multivector and sets it to the rhs vector of the problem. More... | |
void | setCrsMat (Teuchos::RCP< Tpetra::CrsMatrix< T, int, int > > A) |
Setter for CRS matrix. More... | |
void | writeSolution (Teuchos::RCP< const Teuchos::Comm< int > > comm) |
Copies the solution vector of this problem in a concepts::Vector. More... | |
void | writeSolution (Vector< T > &vec, Teuchos::RCP< const Teuchos::Comm< int > > comm) |
Copies the solution vector of this problem in a concepts::Vector If started parallel this method should just be used by threads with id != 0. More... | |
virtual | ~BelosLinProb () |
Default Destructor. More... | |
Private Attributes | |
Teuchos::RCP< Tpetra::CrsMatrix< T, int, int > > | A_ |
matrix of the problem More... | |
Detailed Description
template<class T, class MV = Tpetra::MultiVector<T, int>, class OP = Tpetra::Operator<T>>
class concepts::BelosLinProb< T, MV, OP >
Decorator that decorates the Class Belos::LinearProblem<T, MV, OP> with interfaces to Concepts SparseMatrix and Vector.
Definition at line 26 of file belosLinProb.hh.
Constructor & Destructor Documentation
◆ BelosLinProb() [1/3]
|
inline |
Default Constructor.
Definition at line 30 of file belosLinProb.hh.
◆ ~BelosLinProb()
|
inlinevirtual |
Default Destructor.
Definition at line 35 of file belosLinProb.hh.
◆ BelosLinProb() [2/3]
concepts::BelosLinProb< T, MV, OP >::BelosLinProb | ( | Teuchos::RCP< const Teuchos::Comm< int > > | comm | ) |
Copies the informations of a concepts::SparseMatrix into a Tpetra::CrsMatrix and sets it to the Operator of the problem.
If started parallel this method should just be used by the threads with id != 0. If started sequentiell use the other Constructor.
@waring The thread with id 0 must be called with BelosLinProb(concepts::SparseMatrix<T>& sparse, Teuchos::RCP<const Teuchos::Comm<int> > comm) otherwise the recieve operation in this method will cause a DEADLOCK.
Definition at line 323 of file belosLinProb.hh.
◆ BelosLinProb() [3/3]
concepts::BelosLinProb< T, MV, OP >::BelosLinProb | ( | concepts::SparseMatrix< T > & | sparse, |
Teuchos::RCP< const Teuchos::Comm< int > > | comm | ||
) |
Copies the informations of a concepts::SparseMatrix into a Tpetra::CrsMatrix and sets it to the operator of the problem.
If started parallel this method should just be used by the thread with id 0. All other threads must use BelosLinProb(Teuchos::RCP<const Teuchos::Comm<int> > comm), they recieve the informations of the seriell object concepts::SparseMatrix via this method
- Warning
- if the other threads do not call BelosLinProb(Teuchos::RCP<const Teuchos::Comm<int> > comm) the send() instruction in this constructor will cause a DEADLOCK.
Definition at line 126 of file belosLinProb.hh.
Member Function Documentation
◆ getCrsMat()
|
inline |
Getter for CRS matrix used for preconditoner.
Definition at line 109 of file belosLinProb.hh.
◆ setConceptsRHS() [1/2]
void concepts::BelosLinProb< T, MV, OP >::setConceptsRHS | ( | const Vector< T > & | rhs, |
Teuchos::RCP< const Teuchos::Comm< int > > | comm | ||
) |
Copies the informations of a concepts::Vector into a Tpetra::Multivector and sets it to the rhs vector of the problem.
If started parallel this method should just be used by the thread with id 0. All other threads must use setRHS(Teuchos::RCP<const Teuchos::Comm<int> > comm), they recieve the informations of the seriell object concepts::Vector via this method
- Warning
- if the other threads do not call setRHS(Teuchos::RCP<const Teuchos::Comm<int> > comm) the send() instruction will cause a DEADLOCK.
Definition at line 425 of file belosLinProb.hh.
◆ setConceptsRHS() [2/2]
void concepts::BelosLinProb< T, MV, OP >::setConceptsRHS | ( | Teuchos::RCP< const Teuchos::Comm< int > > | comm | ) |
Copies the informations of a concepts::Vector into a Tpetra::Multivector and sets it to the rhs vector of the problem.
If started parallel this method should just be used by threads with id != 0.
@waring The threads with id 0 must be called with void setRHS(Vector<T>& rhs, Teuchos::RCP<const Teuchos::Comm<int> > comm); otherwise the recieve operation in this method will cause a DEADLOCK.
Definition at line 494 of file belosLinProb.hh.
◆ setCrsMat()
|
inline |
Setter for CRS matrix.
Definition at line 114 of file belosLinProb.hh.
◆ writeSolution() [1/2]
void concepts::BelosLinProb< T, MV, OP >::writeSolution | ( | Teuchos::RCP< const Teuchos::Comm< int > > | comm | ) |
Copies the solution vector of this problem in a concepts::Vector.
If started parallel this method should just be used by threads with id != 0.
@waring The threads with id 0 must be called with void writeSolution(Vector<T>& vec, Teuchos::RCP<const Teuchos::Comm<int> > comm) otherwise the recieve operation in this method will cause a DEADLOCK.
Definition at line 581 of file belosLinProb.hh.
◆ writeSolution() [2/2]
void concepts::BelosLinProb< T, MV, OP >::writeSolution | ( | Vector< T > & | vec, |
Teuchos::RCP< const Teuchos::Comm< int > > | comm | ||
) |
Copies the solution vector of this problem in a concepts::Vector If started parallel this method should just be used by threads with id != 0.
- Warning
- if the other threads do not call writeSolution(Teuchos::RCP<const Teuchos::Comm<int> > comm) the send() instruction will cause a DEADLOCK.
Definition at line 543 of file belosLinProb.hh.
Member Data Documentation
◆ A_
|
private |
matrix of the problem
Definition at line 122 of file belosLinProb.hh.
The documentation for this class was generated from the following file:
- operator/belosLinProb.hh