Developer documentation

mmx::tensor::eenv Struct Reference

#include <tensor_eenv.hpp>

Public Member Functions

void construct (int nvr_, int const *szs_, int const *vrs_, int *mem)
 
int * szs ()
 
int * szs_data ()
 
int * str ()
 
int * vrs ()
 
void cstr ()
 
void cvrs ()
 
int * alloc (int nvr_)
 
void dealloc ()
 
eenvcdup ()
 
int nvr () const
 number of variables More...
 
int const * szs () const
 point to an array representing the order for each variable More...
 
int const * str () const
 point to an array representing the stride for each variable More...
 
int const * vrs () const
 point to an array representing the global id for each variable More...
 
int sz () const
 return the total number of coefficients of the dense representation More...
 
int sz (int v) const
 return the order for variable v More...
 
int st (int v) const
 return the stride for variable v More...
 
int vr (int lv) const
 return the global id for variable lv More...
 
bool hasvar (int &lv, int gv) const
 
int msz () const
 memory size used by the eenv representation in bytes. More...
 
int localv (int i) const
 
int vridx (int i) const
 
int mxvr () const
 
int mnvr () const
 
 eenv ()
 constructors More...
 
template<class C , class O >
 eenv (const sparse::monomial_seq< C, O > &mpl)
 
 eenv (int *data)
 
 eenv (int nvr_, int const *szs_=0, int const *vrs_=0, int *mem=0)
 
 eenv (const eenv &e)
 copy constructors More...
 
eenvoperator= (const eenv &e)
 
void swap (eenv &e)
 
 ~eenv ()
 
bool operator< (const eenv &b) const
 
bool operator== (const eenv &a) const
 
bool operator!= (const eenv &a) const
 
void vswap (int *perm)
 

Static Public Member Functions

static int msz (int nvr_)
 
static eenvcopy (eenv &e, const eenv &b)
 
static void new_copy (eenv &e, const eenv &b)
 
static eenv mrgvrs (const eenv &a, const eenv &b)
 
static eenv common (const eenv &a, const eenv &b)
 
static eenv mul (const eenv &a, const eenv &b)
 
static eenv diff (const eenv &b, int lv)
 
static bool vmap (int *vmap, const eenv &o, const eenv &i)
 variable names translation from environment i to environment o More...
 
static bool oaddress (const eenv &oenv, unsigned *osupp, const eenv &ienv, unsigned *isupp=0, unsigned nsp=0)
 addresses translation from environment i to environment o More...
 
static bool equiv (const eenv &a, const eenv &b)
 
static bool equal (const eenv &a, const eenv &b)
 
static bool subset (const eenv &a, const eenv &b)
 
static eenv elevation (const eenv &a, const eenv &b)
 
static eenv rewrite (const eenv &o, const eenv &i)
 

Public Attributes

int * data
 

Friends

std::ostream & operator<< (std::ostream &o, const eenv &env)
 

Constructor & Destructor Documentation

mmx::tensor::eenv::eenv ( )
inline

constructors

template<class C , class O >
mmx::tensor::eenv::eenv ( const sparse::monomial_seq< C, O > &  mpl)
inline
mmx::tensor::eenv::eenv ( int *  data)
mmx::tensor::eenv::eenv ( int  nvr_,
int const *  szs_ = 0,
int const *  vrs_ = 0,
int *  mem = 0 
)
inline

create an allocated but uninitialized environement sizes and names given by szs_ and vrs_

mmx::tensor::eenv::eenv ( const eenv e)
inline

copy constructors

mmx::tensor::eenv::~eenv ( )
inline

Member Function Documentation

int * mmx::tensor::eenv::alloc ( int  nvr_)
inline
eenv & mmx::tensor::eenv::cdup ( )
inline
eenv mmx::tensor::eenv::common ( const eenv a,
const eenv b 
)
inlinestatic
void mmx::tensor::eenv::construct ( int  nvr_,
int const *  szs_,
int const *  vrs_,
int *  mem 
)
inline
eenv & mmx::tensor::eenv::copy ( eenv e,
const eenv b 
)
inlinestatic
void mmx::tensor::eenv::cstr ( )
inline
void mmx::tensor::eenv::cvrs ( )
void mmx::tensor::eenv::dealloc ( )
inline
eenv mmx::tensor::eenv::diff ( const eenv b,
int  lv 
)
inlinestatic
eenv mmx::tensor::eenv::elevation ( const eenv a,
const eenv b 
)
inlinestatic
bool mmx::tensor::eenv::equal ( const eenv a,
const eenv b 
)
inlinestatic
bool mmx::tensor::eenv::equiv ( const eenv a,
const eenv b 
)
inlinestatic
bool mmx::tensor::eenv::hasvar ( int &  lv,
int  gv 
) const
inline

return true if gv is in the variable set lv is the corresponding local name.

int mmx::tensor::eenv::localv ( int  i) const
inline
int mmx::tensor::eenv::mnvr ( ) const
inline
eenv mmx::tensor::eenv::mrgvrs ( const eenv a,
const eenv b 
)
inlinestatic
int mmx::tensor::eenv::msz ( int  nvr_)
inlinestatic
int mmx::tensor::eenv::msz ( ) const
inline

memory size used by the eenv representation in bytes.

eenv mmx::tensor::eenv::mul ( const eenv a,
const eenv b 
)
inlinestatic
int mmx::tensor::eenv::mxvr ( ) const
inline
void mmx::tensor::eenv::new_copy ( eenv e,
const eenv b 
)
inlinestatic
int mmx::tensor::eenv::nvr ( ) const
inline

number of variables

bool mmx::tensor::eenv::oaddress ( const eenv oenv,
unsigned *  osupp,
const eenv ienv,
unsigned *  isupp = 0,
unsigned  nsp = 0 
)
inlinestatic

addresses translation from environment i to environment o

bool mmx::tensor::eenv::operator!= ( const eenv a) const
inline
bool mmx::tensor::eenv::operator< ( const eenv b) const
inline
eenv & mmx::tensor::eenv::operator= ( const eenv e)
inline
bool mmx::tensor::eenv::operator== ( const eenv a) const
inline
eenv mmx::tensor::eenv::rewrite ( const eenv o,
const eenv i 
)
inlinestatic
int mmx::tensor::eenv::st ( int  v) const
inline

return the stride for variable v

int * mmx::tensor::eenv::str ( )
inline
const int * mmx::tensor::eenv::str ( ) const
inline

point to an array representing the stride for each variable

bool mmx::tensor::eenv::subset ( const eenv a,
const eenv b 
)
inlinestatic
void mmx::tensor::eenv::swap ( eenv e)
inline
int mmx::tensor::eenv::sz ( ) const
inline

return the total number of coefficients of the dense representation

int mmx::tensor::eenv::sz ( int  v) const
inline

return the order for variable v

int * mmx::tensor::eenv::szs ( )
inline
const int * mmx::tensor::eenv::szs ( ) const
inline

point to an array representing the order for each variable

int * mmx::tensor::eenv::szs_data ( )
inline
bool mmx::tensor::eenv::vmap ( int *  vmap,
const eenv o,
const eenv i 
)
inlinestatic

variable names translation from environment i to environment o

int mmx::tensor::eenv::vr ( int  lv) const
inline

return the global id for variable lv

int mmx::tensor::eenv::vridx ( int  i) const
inline
int * mmx::tensor::eenv::vrs ( )
inline
const int * mmx::tensor::eenv::vrs ( ) const
inline

point to an array representing the global id for each variable

void mmx::tensor::eenv::vswap ( int *  perm)

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  o,
const eenv env 
)
friend

Member Data Documentation

int* mmx::tensor::eenv::data

The documentation for this struct was generated from the following files:
Home