6 #ifndef MYRAMATH_ITERATIVE_ACTIONBASE_H 7 #define MYRAMATH_ITERATIVE_ACTIONBASE_H 14 #include <myramath/MYRAMATH_EXPORT.h> 22 template<
class Number>
class Matrix;
23 template<
class Number>
class CMatrixRange;
24 template<
class Number>
class MatrixRange;
25 template<
class Number>
class Action;
30 template<
class Number>
class MYRAMATH_EXPORT ActionBase
35 typedef CMatrixRange<Number> X;
36 typedef MatrixRange<Number> B;
39 virtual std::pair<int,int> size()
const = 0;
47 virtual void multiply(
const X& x,
const B& b, Number alpha, Number beta)
const;
50 virtual void multiply(
const X& x,
const B& b)
const;
53 virtual ~ActionBase();
56 virtual ActionBase<Number>* clone()
const = 0;
59 friend class ::myra::Action<Number>;
79 virtual std::pair<int,int> size()
const 80 {
return std::pair<int,int>(0,0); }
83 virtual void multiply(
const X& x,
const B& b, Number alpha, Number beta)
const 87 virtual void multiply(
const X& x,
const B& b)
const
Represents a const MatrixRange.
Definition: bothcat.h:22
Definition: ActionBase.h:64
Definition: random.cpp:45
Various utility functions/classes related to scalar Number types.
Represents a mutable MatrixRange.
Definition: conjugate.h:26