48 namespace AbstractLinAlgPack {
59 full_space.get() == NULL, std::invalid_argument
60 ,
"VectorSpaceSubSpace::initialize(...): Error!" );
66 ,
"VectorSpaceSubSpace::initialize(...): Error, "
67 "rng = [" << rng.
lbound() <<
"," << rng.
ubound() <<
"] is not in the range "
68 "[1,vec->dim()] = [1," << n <<
"]" );
86 ,
"VectorSpaceSubSpace::validate_range(rng): Error, Uninitialized" );
89 ,
"VectorSpaceSubSpace::validate_range(rng): Error, "
90 "rng = [" << rng.
lbound() <<
"," << rng.
ubound() <<
"] is not in the range "
91 "[1,this->dim] = [1," << n <<
"]" );
108 ( this->
rng_ == a_space->
rng_ && this->full_space_->is_compatible(*a_space->
full_space_) );
123 namespace rcp = MemMngPack;
134 namespace rcp = MemMngPack;
142 namespace rcp = MemMngPack;
155 this_offset + rng.
lbound()
156 ,this_offset + rng.
ubound() )
void initialize(const space_ptr_t &full_space, const Range1D &rng)
Initialize.
space_ptr_t full_space_
If space_.get() == NULL, then uninitalized (dim == 0)
space_ptr_t sub_space(const Range1D &rng) const
bool is_compatible(const VectorSpace &) const
RTOp_index_type index_type
space_ptr_t clone() const
vec_mut_ptr_t create_member() const
Range1D rng_
The range of elements from this space to represent!
Concrete subclass for a default sub-space of a vector.
#define TEUCHOS_TEST_FOR_EXCEPTION(throw_exception_test, Exception, msg)
Index size() const
Return the size of the range (ubound() - lbound() + 1)
Index ubound() const
Return upper bound of the range.
virtual bool is_in_core() const
Returns true if the vectors are in core.
VectorSpaceSubSpace()
Constructs to uninitialized.
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)
. One-based subregion index range class.
Teuchos::RCP< const VectorSpace > space_ptr_t
void validate_range(const Range1D &rng) const
Validate rng.
Abstract interface for objects that represent a space for mutable coordinate vectors.
void set_uninitialized()
Set uninitilized.
bool full_range() const
Returns true if the range represents the entire region (constructed from Range1D()) ...
Concrete subclass for a sub-view of a VectorMutable object.
const Range1D & rng() const
virtual index_type dim() const =0
Return the dimmension of the vector space.
static const Range1D Invalid
Range1D(INVALID)
Index lbound() const
Return lower bound of the range.
const space_ptr_t & full_space() const
RangePack::Range1D Range1D