42 #ifndef VECTOR_WITH_OP_MUTABLE_BLOCK_STD_H
43 #define VECTOR_WITH_OP_MUTABLE_BLOCK_STD_H
47 #include "AbstractLinAlgPack_VectorMutable.hpp"
48 #include "AbstractLinAlgPack_VectorSpaceBlocked.hpp"
50 namespace AbstractLinAlgPack {
134 index_type
dim()
const;
139 const RTOpPack::RTOp& op
140 ,
const size_t num_vecs,
const Vector* vecs[]
143 ,
const index_type first_ele,
const index_type sub_dim,
const index_type global_offset
146 index_type
nz()
const;
149 std::ostream& out,
bool print_dim,
bool newline
150 ,index_type global_offset
153 value_type
get_ele(index_type i)
const;
155 value_type
norm_1()
const;
173 void axpy( value_type alpha,
const Vector& x );
179 void set_ele( index_type i, value_type val );
198 typedef std::vector<VectorMutable::vec_mut_ptr_t> vecs_t;
203 #ifdef DOXYGEN_COMPILE
210 mutable index_type nz_;
211 mutable value_type norm_1_, norm_inf_;
217 void assert_in_range(
int k)
const;
220 void assert_initialized()
const;
236 assert_initialized();
258 #endif // VECTOR_WITH_OP_MUTABLE_BLOCK_STD_H
void free_sub_vector(RTOpPack::SubVector *sub_vec) const
VectorMutable & operator=(value_type)
void set_sub_vector(const RTOpPack::SparseSubVector &sub_vec)
Abstract interface for immutable, finite dimensional, coordinate vectors {abstract}.
void axpy(value_type alpha, const Vector &x)
value_type norm_1() const
value_type inner_product(const Vector &) const
vec_mut_ptr_t sub_view(const Range1D &rng)
Concrete subclass for a blocked vector.
value_type get_ele(index_type i) const
void apply_op(const RTOpPack::RTOp &op, const size_t num_vecs, const Vector *vecs[], const size_t num_targ_vecs, VectorMutable *targ_vecs[], RTOpPack::ReductTarget *reduct_obj, const index_type first_ele, const index_type sub_dim, const index_type global_offset) const
void get_sub_vector(const Range1D &rng, RTOpPack::SubVector *sub_vec) const
Teuchos::RCP< const VectorSpaceBlocked > vec_space_comp_ptr_t
Abstract interface for objects that represent a space for mutable coordinate vectors.
void set_ele(index_type i, value_type val)
VectorSpace subclass for the composite of one or more VectorSpace objects.
const VectorSpaceBlocked & block_space() const
Return the underlying block vector space.
std::ostream & output(std::ostream &out, bool print_dim, bool newline, index_type global_offset) const
Abstract interface for mutable coordinate vectors {abstract}.
const VectorSpace & space() const
void initialize(VectorMutable::vec_mut_ptr_t *vecs, const vec_space_comp_ptr_t &vec_space)
Initialize given a list of constituent vectors.
value_type norm_inf() const
const Vector & get_vector(int k) const
Get the kth (zero based) constituent vector.