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
 

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)
 
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 Public Attributes

const static size_type csDim
 

Static Protected Member Functions

static size_type size ()
 

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

◆ ContainerType

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

◆ difference_type

◆ IndicesSet

◆ iterator

◆ MultipointersVector

◆ 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 >::const_iterator capd::vectalg::Container< int , capacity >::begin
inlineinherited

◆ begin() [2/2]

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

◆ 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 >::const_iterator capd::vectalg::Container< int , capacity >::end
inlineinherited

◆ end() [2/2]

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

◆ 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*=()

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

◆ operator+=() [1/2]

Vector< int , dim > & capd::vectalg::Vector< int , dim >::operator+= ( const Scalar 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 Scalar 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 Scalar 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

◆ rbegin() [1/2]

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

◆ rbegin() [2/2]

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

◆ rend() [1/2]

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

◆ rend() [2/2]

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

◆ resize()

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

◆ size()

static size_type capd::vectalg::Container< int , capacity >::size
inlinestaticprotectedinherited

◆ 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 static size_type capd::vectalg::Vector< int , dim >::csDim
staticinherited