PolynomialRing< TPolynomXY, TRing > Class Template Reference

#include <polynomialRing.h>

List of all members.

Public Types

typedef TPolynomXY PolynomXY
typedef TRing RingType

Public Member Functions

 PolynomialRing (const RingType &ring)
additive Inverse

TPolynomXY addInv (const TPolynomXY &polynom) const
TPolynomXY * addInvReturnPtr (const TPolynomXY &polynom) const
void addInvInPlace (TPolynomXY &polynom) const
add polynoms

TPolynomXY add (const TPolynomXY &polynom1, const TPolynomXY &polynom2) const
TPolynomXY * addReturnPtr (const TPolynomXY &polynom1, const TPolynomXY &polynom2) const
void addInPlace (TPolynomXY &polynom1, const TPolynomXY &polynom2) const
scalar multiply

TPolynomXY scalarMultiply (const typename TPolynomXY::CoefficientType scalar, const TPolynomXY &polynom) const
void scalarMultiplyInPlace (const typename TPolynomXY::CoefficientType scalar, TPolynomXY &polynom) const
TPolynomXY * scalarMultiplyRetPtr (const typename TPolynomXY::CoefficientType scalar, const TPolynomXY &polynom) const

Public Attributes

const RingTypering_ref_m

convert



template<class TPolynomXY_Type >
void convertInPlace (TPolynomXY_Type &pxy) const
template<class TPolynomXY_SRC_Type , class TPolynomXY_DEST_Type >
static void copyPolynomWithGivenEpsPrecision (const TPolynomXY_SRC_Type &srcPol, TPolynomXY_DEST_Type &destPol, int epsPrecision)

Detailed Description

template<class TPolynomXY, class TRing>
class PolynomialRing< TPolynomXY, TRing >

Note:
naja, fast ein Polynomring, multiplikation und division wird erst implementiert, wenn diese gebraucht wird. TODO Variablentyp für MAximalen Polynomgrad muss TPolynomXY vorgeben! TODO typedef tring und tpolynomxy ueberall gleich durchfuehren!

Definition at line 42 of file polynomialRing.h.


Member Typedef Documentation

template<class TPolynomXY, class TRing>
typedef TPolynomXY PolynomialRing< TPolynomXY, TRing >::PolynomXY

Definition at line 47 of file polynomialRing.h.

template<class TPolynomXY, class TRing>
typedef TRing PolynomialRing< TPolynomXY, TRing >::RingType

Definition at line 49 of file polynomialRing.h.


Constructor & Destructor Documentation

template<class TPolynomXY , class TRing >
PolynomialRing< TPolynomXY, TRing >::PolynomialRing ( const RingType ring  )  [inline]
Todo:
hier kann man ganz viel code sparen...

Definition at line 5 of file polynomialRing.cpp.


Member Function Documentation

template<class TPolynomXY, class TRing >
TPolynomXY PolynomialRing< TPolynomXY, TRing >::add ( const TPolynomXY &  polynom1,
const TPolynomXY &  polynom2 
) const [inline]
template<class TPolynomXY, class TRing >
void PolynomialRing< TPolynomXY, TRing >::addInPlace ( TPolynomXY &  polynom1,
const TPolynomXY &  polynom2 
) const [inline]
template<class TPolynomXY, class TRing >
TPolynomXY PolynomialRing< TPolynomXY, TRing >::addInv ( const TPolynomXY &  _polynom_ref  )  const [inline]
Precondition:
der Ring ring 1 hat die Elemente vom Typ PolynomXY_Type::CoefficientType.

Definition at line 12 of file polynomialRing.cpp.

References PolynomialRing< TPolynomXY, TRing >::ring_ref_m.

Referenced by nCenterFocus::CenterFocusExperiment< variant >::performRegularExperiment().

template<class TPolynomXY, class TRing >
void PolynomialRing< TPolynomXY, TRing >::addInvInPlace ( TPolynomXY &  polynom  )  const [inline]
template<class TPolynomXY, class TRing >
TPolynomXY * PolynomialRing< TPolynomXY, TRing >::addInvReturnPtr ( const TPolynomXY &  _polynom_ref  )  const [inline]
Todo:
das Durchlaufen der Schleifen wiederholt sich, das kann man doch irgendwie abstrahieren!

Definition at line 33 of file polynomialRing.cpp.

References PolynomialRing< TPolynomXY, TRing >::ring_ref_m.

template<class TPolynomXY, class TRing >
TPolynomXY * PolynomialRing< TPolynomXY, TRing >::addReturnPtr ( const TPolynomXY &  polynom1,
const TPolynomXY &  polynom2 
) const [inline]
template<class TPolynomXY , class TRing >
template<class TPolynomXY_Type >
void PolynomialRing< TPolynomXY, TRing >::convertInPlace ( TPolynomXY_Type &  pxy  )  const [inline]
template<class TPolynomXY , class TRing >
template<class TPolynomXY_SRC_Type , class TPolynomXY_DEST_Type >
void PolynomialRing< TPolynomXY, TRing >::copyPolynomWithGivenEpsPrecision ( const TPolynomXY_SRC_Type &  srcPol,
TPolynomXY_DEST_Type &  destPol,
int  epsPrecision 
) [inline, static]
Precondition:
: srcPol!=destPol

Definition at line 286 of file polynomialRing.cpp.

template<class TPolynomXY, class TRing >
TPolynomXY PolynomialRing< TPolynomXY, TRing >::scalarMultiply ( const typename TPolynomXY::CoefficientType  scalar,
const TPolynomXY &  polynom 
) const [inline]
template<class TPolynomXY, class TRing >
void PolynomialRing< TPolynomXY, TRing >::scalarMultiplyInPlace ( const typename TPolynomXY::CoefficientType  scalar,
TPolynomXY &  polynom 
) const [inline]
template<class TPolynomXY, class TRing >
TPolynomXY * PolynomialRing< TPolynomXY, TRing >::scalarMultiplyRetPtr ( const typename TPolynomXY::CoefficientType  scalar,
const TPolynomXY &  polynom 
) const [inline]

Member Data Documentation

template<class TPolynomXY, class TRing>
const RingType& PolynomialRing< TPolynomXY, TRing >::ring_ref_m

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