fast_polynomXY_pair< defs, TNum > Class Template Reference

This class manages coefficient pairs of a polynom in (x,y) with template type TNum, see detailed description, Designed for (dxA, dyA)-Pair, but there is no performance gain... More...

#include <fast_polynom_pair.h>

Collaboration diagram for fast_polynomXY_pair< defs, TNum >:
Collaboration graph
[legend]

List of all members.

Public Member Functions

Constructors / Destructor

 fast_polynomXY_pair (short _degree)
 fast_polynomXY_pair (string _name, short _degree)
virtual ~fast_polynomXY_pair ()
init

void clear (short _degree)
void clear ()
data set

void setCoeff (const short x_exp, const short y_exp, P_or_QPolynom p_or_q, TNum value)
void setFirstCoeff (const short x_exp, const short y_exp, TNum value)
void setSecondCoeff (const short x_exp, const short y_exp, TNum value)
data get

TNum getCoeff (const short x_exp, const short y_exp, P_or_QPolynom p_or_q)
TNum const * getCoeffConstAddr (const short x_exp, const short y_exp) const
TNum * getCoeffAddr (const short x_exp, const short y_exp)
TNum * getCoeffGroupAddr (const short degree)
TNum const * getCoeffGroupConstAddr (const short degree)
IO

void outputMatrix (std::ostream &os)
void outputMatrix ()

Public Attributes

TNum *const koeff
 koeff[x_exp*defsmaxdegree+y_exp] = value;
string name

Private Attributes

const short maxDegree
const short maxDegreePlusOne

Detailed Description

template<class defs, class TNum>
class fast_polynomXY_pair< defs, TNum >

Todo:
maxDegree dynamisch und statisch

fast_polynomXY_pair has differences in comparison to polynomXY:
firstly, the position of a single monom coefficient is computed by shift operations at the cost for higher memory usage
secondly, the type of coefficients is parametrized during compile time

Definition at line 40 of file fast_polynom_pair.h.


Constructor & Destructor Documentation

template<class defs , class TNum >
fast_polynomXY_pair< defs, TNum >::fast_polynomXY_pair ( short  _degree  )  [inline]
template<class defs , class TNum >
fast_polynomXY_pair< defs, TNum >::fast_polynomXY_pair ( string  _name,
short  _degree 
) [inline]
template<class defs , class TNum >
fast_polynomXY_pair< defs, TNum >::~fast_polynomXY_pair (  )  [inline, virtual]

Definition at line 324 of file fast_polynom_pair.h.

References fast_polynomXY_pair< defs, TNum >::koeff.


Member Function Documentation

template<class defs , class TNum >
void fast_polynomXY_pair< defs, TNum >::clear (  )  [inline]

Definition at line 262 of file fast_polynom_pair.h.

References fast_polynomXY_pair< defs, TNum >::koeff.

template<class defs , class TNum >
void fast_polynomXY_pair< defs, TNum >::clear ( short  _degree  )  [inline]

Definition at line 247 of file fast_polynom_pair.h.

References fast_polynomXY_pair< defs, TNum >::koeff.

template<class defs , class TNum >
TNum fast_polynomXY_pair< defs, TNum >::getCoeff ( const short  x_exp,
const short  y_exp,
P_or_QPolynom  p_or_q 
) [inline]

Definition at line 163 of file fast_polynom_pair.h.

References fast_polynomXY_pair< defs, TNum >::koeff, and PCoefficient.

template<class defs , class TNum >
TNum * fast_polynomXY_pair< defs, TNum >::getCoeffAddr ( const short  x_exp,
const short  y_exp 
) [inline]
template<class defs , class TNum >
TNum const * fast_polynomXY_pair< defs, TNum >::getCoeffConstAddr ( const short  x_exp,
const short  y_exp 
) const [inline]

Definition at line 131 of file fast_polynom_pair.h.

References fast_polynomXY_pair< defs, TNum >::koeff.

template<class defs , class TNum >
TNum * fast_polynomXY_pair< defs, TNum >::getCoeffGroupAddr ( const short  degree  )  [inline]
Todo:
write testMonomDegree function

Definition at line 218 of file fast_polynom_pair.h.

References fast_polynomXY_pair< defs, TNum >::koeff.

template<class defs , class TNum >
TNum const * fast_polynomXY_pair< defs, TNum >::getCoeffGroupConstAddr ( const short  degree  )  [inline]

Definition at line 232 of file fast_polynom_pair.h.

References fast_polynomXY_pair< defs, TNum >::koeff.

template<class defs , class TNum >
void fast_polynomXY_pair< defs, TNum >::outputMatrix (  )  [inline]

Definition at line 89 of file fast_polynom_pair.h.

References fast_polynomXY_pair< defs, TNum >::outputMatrix().

Referenced by fast_polynomXY_pair< defs, TNum >::outputMatrix().

Here is the call graph for this function:

template<class defs , class TNum >
void fast_polynomXY_pair< defs, TNum >::outputMatrix ( std::ostream &  os  ) 
template<class defs , class TNum >
void fast_polynomXY_pair< defs, TNum >::setCoeff ( const short  x_exp,
const short  y_exp,
P_or_QPolynom  p_or_q,
TNum  value 
) [inline]

Definition at line 146 of file fast_polynom_pair.h.

References PCoefficient, fast_polynomXY_pair< defs, TNum >::setFirstCoeff(), and fast_polynomXY_pair< defs, TNum >::setSecondCoeff().

Here is the call graph for this function:

template<class defs , class TNum >
void fast_polynomXY_pair< defs, TNum >::setFirstCoeff ( const short  x_exp,
const short  y_exp,
TNum  value 
) [inline]
template<class defs , class TNum >
void fast_polynomXY_pair< defs, TNum >::setSecondCoeff ( const short  x_exp,
const short  y_exp,
TNum  value 
) [inline]

Definition at line 187 of file fast_polynom_pair.h.

References fast_polynomXY_pair< defs, TNum >::getCoeffAddr().

Referenced by fast_polynomXY_pair< defs, TNum >::setCoeff().

Here is the call graph for this function:


Member Data Documentation

template<class defs , class TNum >
TNum* const fast_polynomXY_pair< defs, TNum >::koeff
template<class defs , class TNum >
const short fast_polynomXY_pair< defs, TNum >::maxDegree [private]
template<class defs , class TNum >
const short fast_polynomXY_pair< defs, TNum >::maxDegreePlusOne [private]

Definition at line 44 of file fast_polynom_pair.h.

template<class defs , class TNum >
string fast_polynomXY_pair< defs, TNum >::name

The documentation for this class was generated from the following file:
Generated on Tue Nov 23 13:10:53 2010 for centerfocus by  doxygen 1.6.3