Class for a scalar vector.
|
| TScalarVector (const value_type_t avalue_type=real_valued) |
| construct zero sized vector
|
|
| TScalarVector (const size_t n, const idx_t offset=0, const value_type_t avalue_type=real_valued) |
| construct vector of size n with offset offset
|
|
| TScalarVector (const TIndexSet &ais, const value_type_t avalue_type=real_valued) |
| construct vector with size defined by indexset ais
|
|
| TScalarVector (const TIndexSet &ais, const BLAS::Vector< real > &bvec) |
|
| TScalarVector (const TIndexSet &ais, const BLAS::Vector< complex > &bvec) |
|
| TScalarVector (const TScalarVector &v) |
| standard copy constructor
|
|
| TScalarVector (TScalarVector &&v) |
| standard move constructor
|
|
| TScalarVector (const TIndexSet &ais, BLAS::Vector< real > &&bvec) |
|
| TScalarVector (const TIndexSet &ais, BLAS::Vector< complex > &&bvec) |
|
virtual | ~TScalarVector () |
| destructor
|
|
virtual size_t | size () const |
| return size of vector
|
|
virtual real | entry (const idx_t i) const |
| access coefficent i (real valued)
|
|
virtual const complex | centry (const idx_t i) const |
| access coefficent i (complex valued)
|
|
virtual void | set_entry (const idx_t i, const real f) |
| set coefficient i to f (real valued)
|
|
virtual void | set_centry (const idx_t i, const complex f) |
| set coefficient i to f (complex valued)
|
|
virtual void | add_entry (const idx_t i, const real f) |
| add f to i'th entry
|
|
virtual void | add_centry (const idx_t i, const complex f) |
| add f to i'th entry (complex valued)
|
|
BLAS::Vector< real > & | blas_rvec () |
| return real valued data
|
|
const BLAS::Vector< real > & | blas_rvec () const |
| return constant real valued data
|
|
BLAS::Vector< complex > & | blas_cvec () |
| return complex valued data
|
|
const BLAS::Vector< complex > & | blas_cvec () const |
| return constant complex valued data
|
|
virtual void | set_size (const size_t n) |
| set size of vector
|
|
virtual void | set_cluster (const TCluster *c) |
| define vector by cluster
|
|
virtual void | set_is (const TIndexSet &ais) |
| define vector by indexset
|
|
virtual void | set_vector (const BLAS::Vector< real > &vec, const idx_t offset) |
| set internal data directly (real valued)
|
|
virtual void | set_vector (const BLAS::Vector< complex > &vec, const idx_t offset) |
| set internal data directly (complex valued)
|
|
virtual void | copy_from (const TScalarVector *v) |
| copy from vector v
|
|
virtual void | copy_to (TScalarVector *v) const |
| copy to vector v
|
|
virtual void | copy_from (const real *v) |
| copy from C array v
|
|
virtual void | copy_to (real *v) |
| copy to C array v
|
|
TScalarVector & | operator= (const TScalarVector &v) |
| standard copy operator
|
|
void | permute (const TPermutation &perm) |
| permute entries according to perm
|
|
virtual void | fill (const real alpha) |
| fill vector with constant α
|
|
virtual void | fill_rand (const uint seed) |
| fill vector with random numbers
|
|
virtual void | scale (const real alpha) |
| set this ≔ α · this
|
|
virtual void | assign (const real alpha, const TVector *x) |
| set this ≔ α · x
|
|
virtual real | norm2 () const |
| compute ‖·‖₂
|
|
virtual real | norm_inf () const |
| compute ‖·‖∞
|
|
virtual void | axpy (const real alpha, const TVector *x) |
| set this ≔ this + α · x
|
|
virtual void | add_sub_mt (const TScalarVector &x) |
| set this ≔ this + x (thread safe, is(x) ⊆ is(this))
|
|
virtual void | conjugate () |
| conjugate coefficients
|
|
virtual void | cfill (const complex &alpha) |
| fill vector with constant α
|
|
virtual void | cscale (const complex &alpha) |
| set this ≔ α · this
|
|
virtual void | cassign (const complex &alpha, const TVector *x) |
| set this ≔ α · x
|
|
virtual complex | dot (const TVector *x) const |
| return inner product <this, x> = this^H · x
|
|
virtual complex | dotu (const TVector *x) const |
| return inner product <this, x> = this^T · x
|
|
virtual void | caxpy (const complex &f, const TVector *x) |
| set this ≔ this + α · x
|
|
virtual size_t | byte_size () const |
| return size in bytes used by this object
|
|
virtual auto | copy () const -> std::unique_ptr< TVector > |
| return copy of vector
|
|
virtual auto | create () const -> std::unique_ptr< TVector > |
| return object of same class
|
|
virtual auto | restrict_re () const -> std::unique_ptr< TVector > |
| return vector restricted to real part of coefficients
|
|
virtual auto | restrict_im () const -> std::unique_ptr< TVector > |
| return vector restricted to imaginary part of coefficients
|
|
virtual auto | restrict_abs () const -> std::unique_ptr< TVector > |
| return vector restricted to absolute value of coefficients
|
|
virtual void | print (const uint ofs=0) const |
| print vector information
|
|
virtual void | read (TByteStream &s) |
| read vector from stream
|
|
virtual void | write (TByteStream &s) const |
| write vector to stream
|
|
virtual size_t | bs_size () const |
| returns size of object in bytestream
|
|
virtual void | sum (const TProcSet &ps) |
| pointwise summation between all vectors in ps
|
|
virtual void | copy_to (TVector *x) const |
| assign local values to vector x
|
|
virtual void | sum (const TProcSet &p, const uint pid, const uint nparts, TByteStream *bs=NULL) |
|
virtual void | sum (const TProcSet &p) |
| same as More...
|
|
| TVector (const idx_t offset=0, const value_type_t avalue_type=real_valued) |
| construct real or complex valued vector with first index offset
|
|
| TVector (const TVector &v) |
| copy constructor
|
|
virtual | ~TVector () |
| dtor
|
|
idx_t | ofs () const |
| return first index (offset)
|
|
virtual void | set_ofs (const idx_t n) |
| set first index (offset)
|
|
TIndexSet | is () const |
| return index set
|
|
value_type_t | value_type () const |
| return value type of vector
|
|
bool | is_complex () const |
| return true if vector is complex valued
|
|
void | set_complex (const bool b) |
| change between real and complex valued representation
|
|
TVector & | operator= (const TVector &v) |
| copy operator for all vectors
|
|
virtual size_t | global_byte_size () const |
|
virtual void | copy_to (TVector *x) const |
| assign local values to vector x
|
|
virtual void | sum (const TProcSet &p, const uint pid, const uint nparts, TByteStream *bs=NULL) |
|
virtual typeid_t | type () const =0 |
| return type ID of object
|
|
virtual bool | is_type (const typeid_t t) const |
| return true if local object is of given type ID t
|
|
virtual std::string | typestr () const |
| return string representation of type
|
|