Givaro
Public Types | Public Member Functions
VectorDom< Domain, Sparse > Class Template Reference

#include <givvectorsparse.h>

Public Types

typedef Domain::Element Type_t
 
typedef Domain Domain_t
 
typedef size_t Indice_t
 
typedef Sparse StorageTag_t
 
typedef RetVectorStorage< Type_t, Sparse >::Storage_t Storage_t
 
typedef Storage_t Element
 
typedef VectorDom< Domain, SparseSelf_t
 
typedef RetVectorStorage< Type_t, Sparse >::Iterator_t Iterator_t
 
typedef RetVectorStorage< Type_t, Sparse >::constIterator_t constIterator_t
 
typedef RetVectorStorage< Type_t, Sparse >::IndiceIterator_t IndiceIterator_t
 

Public Member Functions

 ~VectorDom ()
 
 VectorDom (const Domain &D=Domain())
 
 VectorDom (const Self_t &V)
 
int operator== (const VectorDom< Domain, Sparse > &BC) const
 
int operator!= (const VectorDom< Domain, Sparse > &BC) const
 
void init (Element &r, size_t dim=0) const
 
void assign (Element &r, const Element &v)
 
int areEqual (const Element &P, const Element &Q) const
 
int areNEqual (const Element &P, const Element &Q) const
 
int isZero (const Element &P) const
 
size_t dim (const Element &u) const
 
const Domainsubdomain () const
 
void add (Element &res, const Element &op1, const Element &op2) const
 
void sub (Element &res, const Element &op1, const Element &op2) const
 
void dot (Type_t &res, const Element &u, const Element &v) const
 
void addin (Element &res, const Element &u) const
 
void add (Element &res, const Element &u, const Type_t &val) const
 
void add (Element &res, const Type_t &val, const Element &v) const
 
void subin (Element &res, const Element &u) const
 
void sub (Element &res, const Element &u, const Type_t &val) const
 
void sub (Element &res, const Type_t &val, const Element &v) const
 
void negin (Element &res) const
 
void neg (Element &res, const Element &u) const
 
void compact (Element &u, const VectorDom< Domain, Dense > &VDom, const typename VectorDom< Domain, Dense >::Element &v) const
 
void compact (Element &u, const VectorDom< Domain, Sparse > &VDom, const typename VectorDom< Domain, Sparse >::Element &v) const
 
template<class UNOP >
void map (Element &r, const UNOP &op, const Element &u) const
 
template<class UNOP >
void map (Element &r, UNOP &op, const Element &u) const
 
std::ostream & write (std::ostream &o) const
 
std::istream & read (std::istream &i)
 
std::ostream & write (std::ostream &o, const Element &r) const
 
std::istream & read (std::istream &i, Element &r) const
 
Iterator_t begin_data (Element &U) const
 
Iterator_t end_data (Element &U) const
 
constIterator_t begin_data (const Element &U) const
 
constIterator_t end_data (const Element &U) const
 
IndiceIterator_t begin_indice (const Element &U) const
 
IndiceIterator_t end_indice (const Element &U) const
 

Member Typedef Documentation

◆ Type_t

◆ Domain_t

typedef Domain Domain_t

◆ Indice_t

typedef size_t Indice_t

◆ StorageTag_t

◆ Storage_t

◆ Element

typedef Storage_t Element

◆ Self_t

◆ Iterator_t

◆ constIterator_t

◆ IndiceIterator_t

Constructor & Destructor Documentation

◆ ~VectorDom()

~VectorDom ( )
inline

◆ VectorDom() [1/2]

VectorDom ( const Domain D = Domain())
inline

◆ VectorDom() [2/2]

VectorDom ( const Self_t V)
inline

Member Function Documentation

◆ operator==()

int operator== ( const VectorDom< Domain, Sparse > &  BC) const
inline

◆ operator!=()

int operator!= ( const VectorDom< Domain, Sparse > &  BC) const
inline

◆ init()

void init ( Element r,
size_t  dim = 0 
) const
inline

◆ assign()

void assign ( Element r,
const Element v 
)
inline

◆ areEqual()

int areEqual ( const Element P,
const Element Q 
) const

◆ areNEqual()

int areNEqual ( const Element P,
const Element Q 
) const

◆ isZero()

int isZero ( const Element P) const

◆ dim()

size_t dim ( const Element u) const
inline

◆ subdomain()

const Domain& subdomain ( ) const
inline

◆ add() [1/3]

void add ( Element res,
const Element op1,
const Element op2 
) const
inline

◆ sub() [1/3]

void sub ( Element res,
const Element op1,
const Element op2 
) const
inline

◆ dot()

void dot ( Type_t res,
const Element u,
const Element v 
) const
inline

◆ addin()

void addin ( Element res,
const Element u 
) const
inline

◆ add() [2/3]

void add ( Element res,
const Element u,
const Type_t val 
) const
inline

◆ add() [3/3]

void add ( Element res,
const Type_t val,
const Element v 
) const
inline

◆ subin()

void subin ( Element res,
const Element u 
) const
inline

◆ sub() [2/3]

void sub ( Element res,
const Element u,
const Type_t val 
) const
inline

◆ sub() [3/3]

void sub ( Element res,
const Type_t val,
const Element v 
) const
inline

◆ negin()

void negin ( Element res) const
inline

◆ neg()

void neg ( Element res,
const Element u 
) const
inline

◆ compact() [1/2]

void compact ( Element u,
const VectorDom< Domain, Dense > &  VDom,
const typename VectorDom< Domain, Dense >::Element v 
) const

◆ compact() [2/2]

void compact ( Element u,
const VectorDom< Domain, Sparse > &  VDom,
const typename VectorDom< Domain, Sparse >::Element v 
) const

◆ map() [1/2]

void map ( Element r,
const UNOP &  op,
const Element u 
) const
inline

◆ map() [2/2]

void map ( Element r,
UNOP &  op,
const Element u 
) const
inline

◆ write() [1/2]

std::ostream & write ( std::ostream &  o) const

◆ read() [1/2]

std::istream & read ( std::istream &  i)

◆ write() [2/2]

std::ostream & write ( std::ostream &  o,
const Element r 
) const

◆ read() [2/2]

std::istream & read ( std::istream &  i,
Element r 
) const

◆ begin_data() [1/2]

Iterator_t begin_data ( Element U) const
inline

◆ end_data() [1/2]

Iterator_t end_data ( Element U) const
inline

◆ begin_data() [2/2]

constIterator_t begin_data ( const Element U) const
inline

◆ end_data() [2/2]

constIterator_t end_data ( const Element U) const
inline

◆ begin_indice()

IndiceIterator_t begin_indice ( const Element U) const
inline

◆ end_indice()

IndiceIterator_t end_indice ( const Element U) const
inline

The documentation for this class was generated from the following files: