Classes | |
| class | NullValueException |
| class | Future |
Public Types | |
| typedef BackEnd::tag::simplecsr | BackEndType |
| typedef std::tuple< VectorDistribution const *, Integer > | ResourceType |
| typedef Future< Real > | FutureType |
| typedef Alien::StdTimer | TimerType |
| typedef TimerType::Sentry | SentryType |
| Public Types inherited from Alien::IInternalLinearAlgebra< CSRMatrix, CSRVector > | |
| typedef CSRMatrix | Matrix |
| Type of the matrix used. | |
| typedef CSRVector | Vector |
| Type of the vector used. | |
| typedef IInternalLinearAlgebra< Matrix, Vector > *(* | Factory) () |
| Type of the the linear algebra. | |
| using | MatrixType |
| using | VectorType |
| using | ValueType |
Public Member Functions | |
| Real | norm0 (const Vector &x) const |
| Real | norm1 (const Vector &x) const |
| Real | norm2 (const Vector &x) const |
| Real | normInf (const Vector &x) const |
| void | synchronize (const Matrix &A, Vector &x) const |
| void | mult (const Matrix &A, const Vector &x, Vector &r) const |
| void | addLMult (Real alpha, const Matrix &A, const Vector &x, Vector &y) const |
| void | addUMult (Real alpha, const Matrix &A, const Vector &x, Vector &y) const |
| void | multDiag (const Matrix &A, Vector &y) const |
| void | computeDiag (const Matrix &a, Vector &inv_diag) const |
| void | multInvDiag (const Matrix &A, Vector &y) const |
| void | computeInvDiag (const Matrix &a, Vector &inv_diag) const |
| void | axpy (Real alpha, const Vector &x, Vector &r) const |
| void | aypx (Real alpha, Vector &y, const Vector &x) const |
| void | copy (const Vector &x, Vector &r) const |
| void | axpy (Real alpha, const Vector &x, Integer stride_x, Vector &r, Integer stride_r) const |
| void | aypx (Real alpha, Vector &y, Integer stride_y, const Vector &x, Integer stride_x) const |
| void | copy (const Vector &x, Integer stride_x, Vector &r, Integer stride_r) const |
| Real | dot (const Vector &x, const Vector &y) const |
| void | dot (const Vector &x, const Vector &y, FutureType &res) const |
| void | scal (Real alpha, Vector &x) const |
| void | scal (const Vector &x, Matrix &a) const |
| void | diagonal (const Matrix &a, Vector &x) const |
| void | reciprocal (Vector &x) const |
| void | pointwiseMult (const Vector &x, const Vector &y, Vector &w) const |
| void | assign (Vector &x, Real alpha) const |
| template<typename LambdaT> | |
| void | assign (Vector &x, LambdaT const &lambda) const |
| template<typename PrecondT> | |
| void | exec (PrecondT &precond, Vector const &x, Vector &y) |
| Integer | computeCxr (const Matrix &a, Matrix &cxr_a) const |
| Integer | computeCxr (const Matrix &a, Vector const &diag_scal, Matrix &cxr_a) const |
| void | allocate (ResourceType resource, Vector &v) |
| template<typename T0, typename... T> | |
| void | allocate (ResourceType resource, T0 &v0, T &... args) |
| void | free (Vector &v) |
| template<typename T0, typename... T> | |
| void | free (T0 &v0, T &... args) |
| Public Member Functions inherited from Alien::IInternalLinearAlgebra< CSRMatrix, CSRVector > | |
| virtual | ~IInternalLinearAlgebra () |
| Free resources. | |
| virtual Real | norm0 (const Vector &x) const=0 |
| Compute L0 norm of a vector. | |
| virtual Real | norm1 (const Vector &x) const=0 |
| Compute L1 norm of a vector. | |
| virtual Real | norm2 (const Vector &x) const=0 |
| Compute L2 norm of a vector. | |
| virtual Real | normInf (const Vector &x) const=0 |
| Compute LInf norm of a vector. | |
| virtual void | mult (const Matrix &a, const Vector &x, Vector &r) const=0 |
| Compute a matrix vector product. | |
| virtual void | axpy (Real alpha, const Vector &x, Vector &y) const=0 |
| Scale a vector by a factor and adds the result to another vector. | |
| virtual void | aypx (Real alpha, Vector &y, const Vector &x) const=0 |
| Scale a vector by a factor and adds the result to another vector. | |
| virtual void | copy (const Vector &x, Vector &r) const=0 |
| Copy a vector in another one. | |
| virtual Real | dot (const Vector &x, const Vector &y) const=0 |
| Compute the dot product of two vectors. | |
| virtual void | scal (Real alpha, Vector &x) const=0 |
| Scale a vector by a factor. | |
| virtual void | diagonal (const Matrix &a, Vector &x) const=0 |
| Extract the diagonal of a matrix in a vector. | |
| virtual void | reciprocal (Vector &x) const=0 |
| Compute the reciprocal of a vector. | |
| virtual void | pointwiseMult (const Vector &x, const Vector &y, Vector &w) const=0 |
| Compute the point wise multiplication of two vectors and store the result in another one. | |
| virtual void | dump (Matrix const &a, std::string const &filename) const |
| Dumps a matrix to a file. | |
Static Public Member Functions | |
| static ResourceType | resource (Matrix const &A) |
Definition at line 46 of file SimpleCSRInternalLinearAlgebra.h.
| typedef BackEnd::tag::simplecsr Alien::SimpleCSRInternalLinearAlgebra::BackEndType |
Definition at line 50 of file SimpleCSRInternalLinearAlgebra.h.
| typedef Future<Real> Alien::SimpleCSRInternalLinearAlgebra::FutureType |
Definition at line 91 of file SimpleCSRInternalLinearAlgebra.h.
| typedef std::tuple<VectorDistribution const*,Integer> Alien::SimpleCSRInternalLinearAlgebra::ResourceType |
Definition at line 52 of file SimpleCSRInternalLinearAlgebra.h.
| typedef TimerType::Sentry Alien::SimpleCSRInternalLinearAlgebra::SentryType |
Definition at line 94 of file SimpleCSRInternalLinearAlgebra.h.
| typedef Alien::StdTimer Alien::SimpleCSRInternalLinearAlgebra::TimerType |
Definition at line 93 of file SimpleCSRInternalLinearAlgebra.h.
| Alien::SimpleCSRInternalLinearAlgebra::SimpleCSRInternalLinearAlgebra | ( | ) |
Definition at line 52 of file SimpleCSRInternalLinearAlgebra.cc.
|
virtual |
Definition at line 58 of file SimpleCSRInternalLinearAlgebra.cc.
| void Alien::SimpleCSRInternalLinearAlgebra::addLMult | ( | Real | alpha, |
| const Matrix & | A, | ||
| const Vector & | x, | ||
| Vector & | y ) const |
Definition at line 141 of file SimpleCSRInternalLinearAlgebra.cc.
| void Alien::SimpleCSRInternalLinearAlgebra::addUMult | ( | Real | alpha, |
| const Matrix & | A, | ||
| const Vector & | x, | ||
| Vector & | y ) const |
Definition at line 152 of file SimpleCSRInternalLinearAlgebra.cc.
|
inline |
Definition at line 159 of file SimpleCSRInternalLinearAlgebra.h.
| void Alien::SimpleCSRInternalLinearAlgebra::allocate | ( | ResourceType | resource, |
| Vector & | v ) |
Definition at line 73 of file SimpleCSRInternalLinearAlgebra.cc.
|
inline |
Definition at line 137 of file SimpleCSRInternalLinearAlgebra.h.
| void Alien::SimpleCSRInternalLinearAlgebra::computeDiag | ( | const Matrix & | a, |
| Vector & | inv_diag ) const |
Definition at line 171 of file SimpleCSRInternalLinearAlgebra.cc.
| void Alien::SimpleCSRInternalLinearAlgebra::computeInvDiag | ( | const Matrix & | a, |
| Vector & | inv_diag ) const |
Definition at line 187 of file SimpleCSRInternalLinearAlgebra.cc.
| void Alien::SimpleCSRInternalLinearAlgebra::copy | ( | const Vector & | x, |
| Integer | stride_x, | ||
| Vector & | r, | ||
| Integer | stride_r ) const |
Definition at line 249 of file SimpleCSRInternalLinearAlgebra.cc.
Definition at line 294 of file SimpleCSRInternalLinearAlgebra.cc.
|
inline |
Definition at line 146 of file SimpleCSRInternalLinearAlgebra.h.
|
inline |
Definition at line 168 of file SimpleCSRInternalLinearAlgebra.h.
| void Alien::SimpleCSRInternalLinearAlgebra::free | ( | Vector & | v | ) |
Definition at line 78 of file SimpleCSRInternalLinearAlgebra.cc.
| void Alien::SimpleCSRInternalLinearAlgebra::mult | ( | const Matrix & | A, |
| const Vector & | x, | ||
| Vector & | r ) const |
Definition at line 131 of file SimpleCSRInternalLinearAlgebra.cc.
Definition at line 163 of file SimpleCSRInternalLinearAlgebra.cc.
Definition at line 179 of file SimpleCSRInternalLinearAlgebra.cc.
| Real Alien::SimpleCSRInternalLinearAlgebra::norm0 | ( | const Vector & | x | ) | const |
Definition at line 83 of file SimpleCSRInternalLinearAlgebra.cc.
| Real Alien::SimpleCSRInternalLinearAlgebra::norm1 | ( | const Vector & | x | ) | const |
Definition at line 94 of file SimpleCSRInternalLinearAlgebra.cc.
| Real Alien::SimpleCSRInternalLinearAlgebra::norm2 | ( | const Vector & | x | ) | const |
Definition at line 105 of file SimpleCSRInternalLinearAlgebra.cc.
| Real Alien::SimpleCSRInternalLinearAlgebra::normInf | ( | const Vector & | x | ) | const |
Definition at line 115 of file SimpleCSRInternalLinearAlgebra.cc.
| void Alien::SimpleCSRInternalLinearAlgebra::pointwiseMult | ( | const Vector & | x, |
| const Vector & | y, | ||
| Vector & | w ) const |
Definition at line 309 of file SimpleCSRInternalLinearAlgebra.cc.
| void Alien::SimpleCSRInternalLinearAlgebra::reciprocal | ( | Vector & | x | ) | const |
Definition at line 303 of file SimpleCSRInternalLinearAlgebra.cc.
|
static |
Definition at line 68 of file SimpleCSRInternalLinearAlgebra.cc.
Definition at line 125 of file SimpleCSRInternalLinearAlgebra.cc.