Back to Arangodb

Vector

3rdParty/boost/1.78.0/libs/numeric/ublas/doc/vector.html

3.12.9.115.5 KB
Original Source

Vector

Vector

Description

The templated class vector<T, A> is the base container adaptor for dense vectors. For a n-dimensional vector and 0 <= i < n every element v__i is mapped to the _i-_th element of the container.

Example

#include <boost/numeric/ublas/vector.hpp>
#include <boost/numeric/ublas/io.hpp>

int main () {
    using namespace boost::numeric::ublas;
    vector<double> v (3);
    for (unsigned i = 0; i < v.size (); ++ i)
        v (i) = i;
    std::cout << v << std::endl;
}

Definition

Defined in the header vector.hpp.

Template parameters

ParameterDescriptionDefault
TThe type of object stored in the vector.
AThe type of the Storage array. [1]unbounded_array<T>

Model of

Vector, RandomAccessContainer

Type requirements

None, except for those imposed by the requirements of Vector and RandomAccessContainer.

Public base classes

vector_container<vector<T, A> >

Members

MemberWhere definedDescription
value_typeVectorExpression
referenceVectorExpression
const_referenceVectorExpression
size_typeVectorExpression
difference_typeVectorExpression
const_iteratorVectorExpression
iteratorVectorExpression
const_reverse_iteratorVectorExpression
reverse_iteratorVectorExpression
array_typeVector
vector ()VectorExpressionAllocates an uninitialized vector that holds zero elements.
vector (size_type size)VectorAllocates an uninitialized vector that holds size elements.
vector (const vector &v)The copy constructor.
`template<class AE>
vector (const vector_expression<AE> &ae)`The extended copy constructor.
`void resize (size_type size, bool preserve =
true)`VectorReallocates a vector to hold size elements. The existing elements of the vector are preseved when specified.
size_type size () constVectorExpressionReturns the size of the vector.
size_type max_size () constRandomAccessContainerReturns the upper bound on the size of the vector.
bool empty () constRandomAccessContainerEquivilent to size () == 0.
const array_type& data () constVector
array_type& data ()Vector
`const_reference operator () (size_type i)
const`VectorExpressionReturns a const reference of the i -th element.
reference operator () (size_type i)VectorExpressionReturns a reference of the i-th element.
const_reference operator [] (size_type i) constVectorReturns a const reference of the i -th element.
reference operator [] (size_type i)VectorReturns a reference of the i-th element.
vector &operator = (const vector &v)VectorExpressionThe assignment operator.
vector &assign_temporary (vector &v)VectorExpressionAssigns a temporary. May change the vector v.
`template<class AE>
vector &operator = (const vector_expression<AE>
&ae)`VectorExpressionThe extended assignment operator.
`template<class AE>
vector &assign (const vector_expression<AE>
&ae)`VectorExpressionAssigns a vector expression to the vector. Left and right hand side of the assignment should be independent.
`template<class AE>
vector &operator += (const vector_expression<AE>
&ae)`VectorExpressionA computed assignment operator. Adds the vector expression to the vector.
`template<class AE>
vector &plus_assign (const vector_expression<AE>
&ae)`VectorExpressionAdds a vector expression to the vector. Left and right hand side of the assignment should be independent.
`template<class AE>
vector &operator -= (const vector_expression<AE>
&ae)`VectorExpressionA computed assignment operator. Subtracts the vector expression from the vector.
`template<class AE>
vector &minus_assign (const vector_expression<AE>
&ae)`VectorExpressionSubtracts a vector expression from the vector. Left and right hand side of the assignment should be independent.
`template<class AT>
vector &operator *= (const AT &at)`VectorExpressionA computed assignment operator. Multiplies the vector with a scalar.
`template<class AT>
vector &operator /= (const AT &at)`VectorExpressionA computed assignment operator. Divides the vector through a scalar.
void swap (vector &v)VectorExpressionSwaps the contents of the vectors.
void insert_element (size_type i, const_reference t)VectorInserts the value t at the i-th element.
void erase_element (size_type i)VectorErases the value at the i-th element.
void clear ()VectorClears the vector.
const_iterator begin () constVectorExpressionReturns a const_iterator pointing to the beginning of the vector.
const_iterator end () constVectorExpressionReturns a const_iterator pointing to the end of the vector.
iterator begin ()VectorExpressionReturns a iterator pointing to the beginning of the vector.
iterator end ()VectorExpressionReturns a iterator pointing to the end of the vector.
const_reverse_iterator rbegin () constVectorExpressionReturns a const_reverse_iterator pointing to the beginning of the reversed vector.
const_reverse_iterator rend () constVectorExpressionReturns a const_reverse_iterator pointing to the end of the reversed vector.
reverse_iterator rbegin ()VectorExpressionReturns a reverse_iterator pointing to the beginning of the reversed vector.
reverse_iterator rend ()VectorExpressionReturns a reverse_iterator pointing to the end of the reversed vector.

Notes

[1] Common parameters for the Storage array are unbounded_array<T> , bounded_array<T> and std::vector<T> .

Unit Vector

Description

The templated class unit_vector<T, ALLOC> represents canonical unit vectors. For the k-th n-dimensional canonical unit vector and 0 <= i < n holds u k i = 0, if i <> k, and u k__i = 1.

Example

#include <boost/numeric/ublas/vector.hpp>
#include <boost/numeric/ublas/io.hpp>

int main () {
    using namespace boost::numeric::ublas;
    for (int i = 0; i < 3; ++ i) {
        unit_vector<double> v (3, i);
        std::cout << v << std::endl;
    }
}

Definition

Defined in the header vector.hpp.

Template parameters

ParameterDescriptionDefault
TThe type of object stored in the vector.int
ALLOCAn STL Allocator for size_type and difference_type.std::allocator

Model of

Vector .

Type requirements

None, except for those imposed by the requirements of Vector .

Public base classes

vector_container<unit_vector<T> >

Members

MemberDescription
unit_vector ()Constructs an unit_vector that holds zero elements.
unit_vector (size_type size, size_type index)Constructs the index-th unit_vector that holds size elements.
unit_vector (const unit_vector &v)The copy constructor.
`void resize (size_type size, bool preserve =
true)`Resizes a unit_vector to hold size elements. Therefore the existing elements of the unit_vector are always preseved.
size_type size () constReturns the size of the unit_vector.
size_type index () constReturns the index of the unit_vector.
`const_reference operator () (size_type i)
const`Returns the value of the i-th element.
`const_reference operator [] (size_type i)
const`Returns the value of the i-th element.
`unit_vector &operator = (const unit_vector
&v)`The assignment operator.
`unit_vector &assign_temporary (unit_vector
&v)`Assigns a temporary. May change the unit vector v .
void swap (unit_vector &v)Swaps the contents of the unit vectors.
const_iterator begin () constReturns a const_iterator pointing to the beginning of the unit_vector.
const_iterator end () constReturns a const_iterator pointing to the end of the unit_vector.
const_reverse_iterator rbegin () constReturns a const_reverse_iterator pointing to the beginning of the reversed unit_vector.
const_reverse_iterator rend () constReturns a const_reverse_iterator pointing to the end of the reversed unit_vector.

Zero Vector

Description

The templated class zero_vector<T, ALLOC> represents zero vectors. For a n-dimensional zero vector and 0 <= i < n holds z__i = 0.

Example

#include <boost/numeric/ublas/vector.hpp>
#include <boost/numeric/ublas/io.hpp>

int main () {
    using namespace boost::numeric::ublas;
    zero_vector<double> v (3);
    std::cout << v << std::endl;
}

Definition

Defined in the header vector.hpp.

Template parameters

ParameterDescriptionDefault
TThe type of object stored in the vector.int
ALLOCAn STL Allocator for size_type and difference_type.std::allocator

Model of

Vector .

Type requirements

None, except for those imposed by the requirements of Vector .

Public base classes

vector_container<zero_vector<T> >

Members

MemberDescription
zero_vector ()Constructs a zero_vector that holds zero elements.
zero_vector (size_type size)Constructs a zero_vector that holds size elements.
zero_vector (const zero_vector &v)The copy constructor.
`void resize (size_type size, bool preserve =
true)`Resizes a zero_vector to hold size elements. Therefore the existing elements of the zero_vector are always preseved.
size_type size () constReturns the size of the zero_vector.
`const_reference operator () (size_type i)
const`Returns the value of the i-th element.
`const_reference operator [] (size_type i)
const`Returns the value of the i-th element.
`zero_vector &operator = (const zero_vector
&v)`The assignment operator.
`zero_vector &assign_temporary (zero_vector
&v)`Assigns a temporary. May change the zero vector v .
void swap (zero_vector &v)Swaps the contents of the zero vectors.
const_iterator begin () constReturns a const_iterator pointing to the beginning of the zero_vector.
const_iterator end () constReturns a const_iterator pointing to the end of the zero_vector.
const_reverse_iterator rbegin () constReturns a const_reverse_iterator pointing to the beginning of the reversed zero_vector.
const_reverse_iterator rend () constReturns a const_reverse_iterator pointing to the end of the reversed zero_vector.

Scalar Vector

Description

The templated class scalar_vector<T, ALLOC> represents scalar vectors. For a n-dimensional scalar vector and 0 <= i < n holds z__i = s.

Example

#include <boost/numeric/ublas/vector.hpp>
#include <boost/numeric/ublas/io.hpp>

int main () {
    using namespace boost::numeric::ublas;
    scalar_vector<double> v (3);
    std::cout << v << std::endl;
}

Definition

Defined in the header vector.hpp.

Template parameters

ParameterDescriptionDefault
TThe type of object stored in the vector.int
ALLOCAn STL Allocator for size_type and difference_type.std::allocator

Model of

Vector .

Type requirements

None, except for those imposed by the requirements of Vector .

Public base classes

`vector_container<scalar_vector<T>

`

Members

MemberDescription
scalar_vector ()Constructs a scalar_vector that holds zero elements.
`scalar_vector (size_type size, const value_type
&value)`Constructs a scalar_vector that holds size elements each of the specified value.
scalar_vector (const scalar_vector &v)The copy constructor.
`void resize (size_type size, bool preserve =
true)`Resizes a scalar_vector to hold size elements. Therefore the existing elements of the scalar_vector are always preseved.
size_type size () constReturns the size of the scalar_vector.
`const_reference operator () (size_type i)
const`Returns the value of the i-th element.
`const_reference operator [] (size_type i)
const`Returns the value of the i-th element.
`scalar_vector &operator = (const scalar_vector
&v)`The assignment operator.
`scalar_vector &assign_temporary (scalar_vector
&v)`Assigns a temporary. May change the scalar vector v .
void swap (scalar_vector &v)Swaps the contents of the scalar vectors.
const_iterator begin () constReturns a const_iterator pointing to the beginning of the scalar_vector.
const_iterator end () constReturns a const_iterator pointing to the end of the scalar_vector.
const_reverse_iterator rbegin () constReturns a const_reverse_iterator pointing to the beginning of the reversed scalar_vector.
const_reverse_iterator rend () constReturns a const_reverse_iterator pointing to the end of the reversed scalar_vector.

Copyright (©) 2000-2002 Joerg Walter, Mathias Koch
Use, modification and distribution are subject to the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt).