Schur elimination operator on a linear system. More...
#include <core/alien/expression/schur/SchurOp.h>
Public Types | |
| enum | eErrorType { NoError , WithErrors } |
| Type of algorithm. More... | |
| typedef SimpleCSRMatrix< Arccore::Real > | MatrixImpl |
| Type of the matrix implementation. | |
| typedef SimpleCSRVector< Arccore::Real > | VectorImpl |
| Type of the vector implementation. | |
Public Member Functions | |
| SchurOp (IMatrix &A, IVector &b) | |
| Constructor. | |
| virtual | ~SchurOp () |
| Free resources. | |
| eErrorType | computePrimarySystem (IMatrix &pA, IVector &pb) const |
| Shur the linear system. | |
| eErrorType | computeSolutionFromPrimaryUnknowns (IVector const &pX, IVector &sX) const |
Private Member Functions | |
| eErrorType | _apply_schur (Integer block_size, MatrixImpl &A, VectorImpl &B, Integer p_block_size, MatrixImpl &pA, VectorImpl &pB) const |
| eErrorType | _apply_schur (Integer block_size, MatrixImpl &A, VectorImpl &B, VBlock const *p_vblock, MatrixImpl &pA, VectorImpl &pB) const |
| eErrorType | _apply_schur (VBlock const *vblock, MatrixImpl &A, VectorImpl &B, Integer p_block_size, MatrixImpl &pA, VectorImpl &pB) const |
| eErrorType | _apply_schur (VBlock const *vblock, MatrixImpl &A, VectorImpl &B, VBlock const *p_vblock, MatrixImpl &pA, VectorImpl &pB) const |
| eErrorType | _compute_solution (VBlock const *vblock, MatrixImpl const &A, VectorImpl const &B, Integer p_block_size, VectorImpl const &px, VectorImpl &x) const |
| eErrorType | _compute_solution (VBlock const *vblock, MatrixImpl const &A, VectorImpl const &B, VBlock const *p_vblock, VectorImpl const &px, VectorImpl &x) const |
| void | _copy (ConstArrayView< Real > in, ArrayView< Real > out) const |
| void | _copy (ConstArray2View< Real > in, Array2View< Real > out) const |
Private Attributes | |
| IMatrix & | m_A |
| IVector & | m_B |
| UniqueArray< Real > | m_ghost_diag_values |
| typedef SimpleCSRMatrix<Arccore::Real> Alien::SchurOp::MatrixImpl |
| typedef SimpleCSRVector<Arccore::Real> Alien::SchurOp::VectorImpl |
Constructor.
Definition at line 28 of file SchurOp.cc.
|
inlinevirtual |
|
private |
Definition at line 86 of file SchurOp.cc.
|
private |
Definition at line 124 of file SchurOp.cc.
|
private |
Definition at line 135 of file SchurOp.cc.
|
private |
Definition at line 349 of file SchurOp.cc.
|
private |
Definition at line 621 of file SchurOp.cc.
|
private |
Definition at line 667 of file SchurOp.cc.
|
inlineprivate |
|
inlineprivate |
| SchurOp::eErrorType Alien::SchurOp::computePrimarySystem | ( | IMatrix & | pA, |
| IVector & | pb ) const |
Shur the linear system.
| [in] | matrix | The matrix |
| [in] | vector | The vector |
Definition at line 40 of file SchurOp.cc.
References Alien::IMatrixImpl::block(), Alien::MultiMatrixImpl::get(), Alien::MultiVectorImpl::get(), Alien::IMatrix::impl(), Alien::IVector::impl(), Alien::Block::size(), and Alien::IMatrixImpl::vblock().
| SchurOp::eErrorType Alien::SchurOp::computeSolutionFromPrimaryUnknowns | ( | IVector const & | pX, |
| IVector & | sX ) const |
Definition at line 602 of file SchurOp.cc.
|
mutableprivate |