Inherits pm::Generic< Top >.
|
template<typename Op > |
lazy_op< Op, void, BuildUnary< operations::neg > >::v_type | operator- (Op &&m) |
| negate
|
|
template<typename Left , typename Right > |
lazy_op< Left, Right, BuildBinary< operations::add > >::v_v_type | operator+ (Left &&l, Right &&r) |
| add a vector
|
|
template<typename Left , typename Right > |
lazy_op< Left, Right, BuildBinary< operations::sub > >::v_v_type | operator- (Left &&l, Right &&r) |
| subtract a vector
|
|
template<typename Left , typename Right > |
lazy_op< Left, Right, BuildBinary< operations::mul > >::v_s_type | operator* (Left &&l, Right &&r) |
| multiply with a scalar
|
|
template<typename Left , typename Right > |
lazy_op< Left, Right, BuildBinary< operations::mul > >::v_v_type | operator* (Left &&l, Right &&r) |
| scalar (dot) product
|
|
E | sqr (const GenericVector &v) |
| multiply a vector with itself
|
|
template<typename Left , typename Right > |
lazy_tensor< Left, Right, BuildBinary< operations::mul > >::v_v_type | tensor_product (Left &&l, Right &&r) |
| tensor product of two vectors
|
|
template<typename Left , typename Right > |
lazy_op< Left, Right, BuildBinary< operations::div > >::v_s_type | operator/ (Left &&l, Right &&r) |
| divide by a scalar
|
|
template<typename Left , typename Right > |
lazy_op< Left, Right, BuildBinary< operations::divexact > >::v_s_type | div_exact (Left &&l, Right &&r) |
| divide without residue by a scalar
|
|
template<typename TVector, typename E>
template<typename IndexSetRef >
IndexedSlice<const typename Unwary<TVector>::type&, typename final_index_set<IndexSetRef>::type> pm::GenericVector< TVector, E >::slice |
( |
IndexSetRef && |
indices, |
|
|
std::enable_if_t< isomorphic_to_container_of< pure_type_t< IndexSetRef >, int >::value, void ** > |
= nullptr |
|
) |
| const & |
|
inline |
Select a vector slice consisting of elements with given indices. The last variant selects a contiguous range of indices beginning with start. size==-1 means up to the end of the vector. The const variants of these methods create immutable slice objects. The indices must lie in the valid range.