CAPD DynSys Library 5.2.0
capd::vectalg::Multipointer Class Reference

Multipointer always contains nondecreasing list of indexes of variables. More...

#include <capd/vectalg/Multiindex.h>

Public Types

typedef Vector< int, 0 >::iterator iterator
 
typedef Vector< int, 0 >::const_iterator const_iterator
 
typedef Vector< int, 0 >::size_type size_type
 
typedef std::vector< MultipointerMultipointersVector
 
typedef std::vector< MultipointersVectorIndicesSet
 
typedef int ScalarType
 
typedef Container< int, dim > ContainerType
 
typedef Vector< int, dim > VectorType
 
typedef __difference_type difference_type
 
typedef std::reverse_iterator< iteratorreverse_iterator
 
typedef std::reverse_iterator< const_iteratorconst_reverse_iterator
 

Public Member Functions

 Multipointer (void)
 
 Multipointer (size_type _dimension)
 
 Multipointer (const Multiindex &)
 
 Multipointer (const Multipointer &p)
 
 Multipointer (size_type dim, int data[])
 
 Multipointer (size_type dim, bool)
 
Multipointeroperator= (const Multipointer &v)
 
 Multipointer (Multipointer &&v)
 
Multipointeroperator= (Multipointer &&v)
 
 Multipointer (std::initializer_list< int > l)
 
size_type module () const
 order of derivative More...
 
bool hasNext (size_type dim)
 
long factorial () const
 
Multipointer subMultipointer (const Multipointer &mp) const
 Returns multipointer containing entries which indices are in mp. More...
 
size_type index (size_type dimension, size_type maxDegree) const
 
size_type index (size_type dimension, size_type maxDegree, const Multipointer &sub) const
 
Vectoroperator+= (const Vector &v)
 
Vectoroperator+= (const int &s)
 
Vectoroperator-= (const Vector &v)
 
Vectoroperator-= (const int &s)
 
Vectoroperator*= (const int &s)
 
Vectoroperator/= (const int &s)
 
size_type dimension () const
 
ScalarType euclNorm (void) const
 
bool normalize (void)
 
void sorting_permutation (typename rebind< int >::other &perm)
 
iterator begin ()
 
const_iterator begin () const
 
iterator end ()
 
const_iterator end () const
 
reverse_iterator rbegin ()
 
const_reverse_iterator rbegin () const
 
reverse_iterator rend ()
 
const_reverse_iterator rend () const
 
void resize (size_type newCapacity)
 
ScalarTypeoperator[] (size_type)
 
const ScalarTypeoperator[] (size_type) const
 
ScalarTypeoperator() (size_type)
 
const ScalarTypeoperator() (size_type) const
 
void clear ()
 

Static Public Member Functions

static const IndicesSetgenerateList (size_type p, size_type k)
 
static size_type degree ()
 
static VectormakeArray (size_type N, size_type _dim)
 
static size_type size ()
 

Static Public Attributes

static const size_type csDim
 

Protected Attributes

ScalarType data [capacity]
 

Detailed Description

Multipointer always contains nondecreasing list of indexes of variables.

For partial derivatives they denote variables with respect to which we differentiate. For example, a Multipointer mp=(0,0,2,3) corresponds to partial derivative $ \frac{\partial^4}{\partial x_0^2 \partial x_2 \partial x_3} $

For power series multipointer denotes variables that form monomial. e.g.Multipointer mp=(0,0,2,3) correspond to monomial $ x_0^2x_2x_3$

Member Typedef Documentation

◆ const_iterator

◆ const_reverse_iterator

typedef std::reverse_iterator<const_iterator> capd::vectalg::Container< int , capacity >::const_reverse_iterator
inherited

◆ ContainerType

typedef Container<int ,dim> capd::vectalg::Vector< int , dim >::ContainerType
inherited

◆ difference_type

typedef __difference_type capd::vectalg::Vector< int , dim >::difference_type
inherited

◆ IndicesSet

◆ iterator

◆ MultipointersVector

◆ reverse_iterator

typedef std::reverse_iterator<iterator> capd::vectalg::Container< int , capacity >::reverse_iterator
inherited

◆ ScalarType

typedef int capd::vectalg::Vector< int , dim >::ScalarType
inherited

◆ size_type

◆ VectorType

typedef Vector<int ,dim> capd::vectalg::Vector< int , dim >::VectorType
inherited

Constructor & Destructor Documentation

◆ Multipointer() [1/8]

capd::vectalg::Multipointer::Multipointer ( void  )
inline

◆ Multipointer() [2/8]

capd::vectalg::Multipointer::Multipointer ( size_type  _dimension)
inlineexplicit

◆ Multipointer() [3/8]

capd::vectalg::Multipointer::Multipointer ( const Multiindex mi)
explicit

◆ Multipointer() [4/8]

capd::vectalg::Multipointer::Multipointer ( const Multipointer p)
inline

◆ Multipointer() [5/8]

capd::vectalg::Multipointer::Multipointer ( size_type  dim,
int  data[] 
)
inline

◆ Multipointer() [6/8]

capd::vectalg::Multipointer::Multipointer ( size_type  dim,
bool   
)
inline

◆ Multipointer() [7/8]

capd::vectalg::Multipointer::Multipointer ( Multipointer &&  v)
inline

◆ Multipointer() [8/8]

capd::vectalg::Multipointer::Multipointer ( std::initializer_list< int l)
inline

Member Function Documentation

◆ begin() [1/2]

Container< int , capacity >::iterator capd::vectalg::Container< int , capacity >::begin
inlineinherited

◆ begin() [2/2]

Container< int , capacity >::const_iterator capd::vectalg::Container< int , capacity >::begin
inlineinherited

◆ clear()

void capd::vectalg::Container< int , capacity >::clear
inherited

◆ degree()

static size_type capd::vectalg::Vector< int , dim >::degree ( )
inlinestaticinherited

◆ dimension()

size_type capd::vectalg::Vector< int , dim >::dimension ( ) const
inlineinherited

◆ end() [1/2]

Container< int , capacity >::iterator capd::vectalg::Container< int , capacity >::end
inlineinherited

◆ end() [2/2]

Container< int , capacity >::const_iterator capd::vectalg::Container< int , capacity >::end
inlineinherited

◆ euclNorm()

Vector< int , dim >::ScalarType capd::vectalg::Vector< int , dim >::euclNorm ( void  ) const
inlineinherited

◆ factorial()

long capd::vectalg::Multipointer::factorial ( ) const

◆ generateList()

const Multipointer::IndicesSet & capd::vectalg::Multipointer::generateList ( size_type  p,
size_type  k 
)
static

◆ hasNext()

bool capd::vectalg::Multipointer::hasNext ( size_type  dim)

◆ index() [1/2]

Multipointer::size_type capd::vectalg::Multipointer::index ( size_type  dimension,
size_type  maxDegree 
) const

◆ index() [2/2]

Multipointer::size_type capd::vectalg::Multipointer::index ( size_type  dimension,
size_type  maxDegree,
const Multipointer sub 
) const

◆ makeArray()

Vector< int , dim > * capd::vectalg::Vector< int , dim >::makeArray ( size_type  N,
size_type  _dim 
)
staticinherited

◆ module()

size_type capd::vectalg::Multipointer::module ( ) const
inline

order of derivative

◆ normalize()

bool capd::vectalg::Vector< int , dim >::normalize ( void  )
inlineinherited

◆ operator()() [1/2]

int & capd::vectalg::Container< int , capacity >::operator() ( size_type  i)
inlineinherited

◆ operator()() [2/2]

const int & capd::vectalg::Container< int , capacity >::operator() ( size_type  i) const
inlineinherited

◆ operator*=()

Vector< int , dim > & capd::vectalg::Vector< int , dim >::operator*= ( const int s)
inlineinherited

◆ operator+=() [1/2]

Vector< int , dim > & capd::vectalg::Vector< int , dim >::operator+= ( const int s)
inlineinherited

◆ operator+=() [2/2]

Vector & capd::vectalg::Vector< int , dim >::operator+= ( const Vector< int, 0 > &  v)
inherited

◆ operator-=() [1/2]

Vector< int , dim > & capd::vectalg::Vector< int , dim >::operator-= ( const int s)
inlineinherited

◆ operator-=() [2/2]

Vector< int , dim > & capd::vectalg::Vector< int , dim >::operator-= ( const Vector< int, 0 > &  v)
inlineinherited

◆ operator/=()

Vector< int , dim > & capd::vectalg::Vector< int , dim >::operator/= ( const int s)
inlineinherited

◆ operator=() [1/2]

Multipointer & capd::vectalg::Multipointer::operator= ( const Multipointer v)
inline

◆ operator=() [2/2]

Multipointer & capd::vectalg::Multipointer::operator= ( Multipointer &&  v)
inline

◆ operator[]() [1/2]

int & capd::vectalg::Container< int , capacity >::operator[] ( size_type  i)
inlineinherited

◆ operator[]() [2/2]

const int & capd::vectalg::Container< int , capacity >::operator[] ( size_type  i) const
inlineinherited

◆ rbegin() [1/2]

Container< int , capacity >::reverse_iterator capd::vectalg::Container< int , capacity >::rbegin
inlineinherited

◆ rbegin() [2/2]

Container< int , capacity >::const_reverse_iterator capd::vectalg::Container< int , capacity >::rbegin
inlineinherited

◆ rend() [1/2]

Container< int , capacity >::reverse_iterator capd::vectalg::Container< int , capacity >::rend
inlineinherited

◆ rend() [2/2]

Container< int , capacity >::const_reverse_iterator capd::vectalg::Container< int , capacity >::rend
inlineinherited

◆ resize()

void capd::vectalg::Container< int , capacity >::resize ( size_type  newCapacity)
inherited

◆ size()

static size_type capd::vectalg::Container< int , capacity >::size ( )
inlinestaticinherited

◆ sorting_permutation()

void capd::vectalg::Vector< int , dim >::sorting_permutation ( typename rebind< int >::other &  perm)
inherited

◆ subMultipointer()

Multipointer capd::vectalg::Multipointer::subMultipointer ( const Multipointer mp) const

Returns multipointer containing entries which indices are in mp.

e.g. for a = (1,3,3,6,7) mp=(1,2,4) a.subMultipointer(mp) returns (3,3,7)

Member Data Documentation

◆ csDim

const size_type capd::vectalg::Vector< int , dim >::csDim
staticinherited

◆ data

ScalarType capd::vectalg::Container< int , capacity >::data[capacity]
protectedinherited