Represents a monom template in two variables. Therefore negative exponents are not allowed. More...
#include <xyMonom.h>
Public Member Functions | |
void | createFromStream (std::stringstream &monomListStream) |
Constructors | |
xyMonom () | |
xyMonom (ccoeff _coeff, int _x_exp, int _y_exp) | |
xyMonom (std::stringstream &sstream) | |
constructs a monom from a input stringstream , see detailed description for format | |
xyMonom (std::string str) | |
Monom exponent access | |
unsigned int | getDegree () const |
unsigned int | getXExp () const |
unsigned int | getYExp () const |
void | setExp (int _x_exp, int _y_exp) |
Monom coefficient access | |
ccoeff | getCoeff () const |
void | setCoeff (ccoeff _coeff) |
evaluate xyMonom | |
template<class IMultiplyCoeffWithVariable , class IMultiplyVariables , class ResultType > | |
ResultType | substitute (const typename IMultiplyVariables::ElementType &x, const typename IMultiplyVariables::ElementType &y, const IMultiplyCoeffWithVariable &imultCoeffXVariable, const IMultiplyVariables &imultVariableXVariable) const |
template<class IMultiplyRing > | |
IMultiplyRing::ElementType | substitute2 (const typename IMultiplyRing::ElementType &x, const typename IMultiplyRing::ElementType &y, const IMultiplyRing &imult) const |
Protected Attributes | |
ccoeff | coeff |
monom coeffitient | |
xyExpPair | exponents |
monom exponents of x and y | |
std::string | monomString |
monom-representing string |
Definition at line 56 of file xyMonom.h.
Definition at line 183 of file xyMonom.h.
References xyMonom< ccoeff >::coeff, xyMonom< ccoeff >::exponents, and xyExpPair::set().
xyMonom< ccoeff >::xyMonom | ( | ccoeff | _coeff, | |
int | _x_exp, | |||
int | _y_exp | |||
) | [inline] |
Definition at line 379 of file xyMonom.h.
References xyMonom< ccoeff >::coeff, xyMonom< ccoeff >::exponents, and xyExpPair::set().
reads xy-monom from input stream.
/ For coefficient format conventions see class ccoeff and
/ for variable exponent format conventions xyExpPair(stringtream)
Definition at line 371 of file xyMonom.h.
References xyMonom< ccoeff >::createFromStream().
Definition at line 355 of file xyMonom.h.
References xyMonom< ccoeff >::createFromStream().
void xyMonom< ccoeff >::createFromStream | ( | std::stringstream & | monomListStream | ) | [inline] |
Definition at line 232 of file xyMonom.h.
References xyMonom< ccoeff >::coeff, xyMonom< ccoeff >::exponents, and extractChar().
Referenced by xyMonom< ccoeff >::xyMonom().
ccoeff xyMonom< ccoeff >::getCoeff | ( | ) | const [inline] |
Definition at line 213 of file xyMonom.h.
References xyMonom< ccoeff >::coeff.
unsigned int xyMonom< ccoeff >::getDegree | ( | ) | const [inline] |
Definition at line 190 of file xyMonom.h.
References xyMonom< ccoeff >::exponents, and xyExpPair::getDegree().
unsigned int xyMonom< ccoeff >::getXExp | ( | ) | const [inline] |
Definition at line 197 of file xyMonom.h.
References xyMonom< ccoeff >::exponents, and xyExpPair::getXExp().
unsigned int xyMonom< ccoeff >::getYExp | ( | ) | const [inline] |
Definition at line 205 of file xyMonom.h.
References xyMonom< ccoeff >::exponents, and xyExpPair::getYExp().
void xyMonom< ccoeff >::setCoeff | ( | ccoeff | _coeff | ) | [inline] |
Definition at line 226 of file xyMonom.h.
References xyMonom< ccoeff >::coeff.
void xyMonom< ccoeff >::setExp | ( | int | _x_exp, | |
int | _y_exp | |||
) | [inline] |
Definition at line 219 of file xyMonom.h.
References xyMonom< ccoeff >::exponents, and xyExpPair::set().
ResultType xyMonom< ccoeff >::substitute | ( | const typename IMultiplyVariables::ElementType & | x, | |
const typename IMultiplyVariables::ElementType & | y, | |||
const IMultiplyCoeffWithVariable & | imultCoeffXVariable, | |||
const IMultiplyVariables & | imultVariableXVariable | |||
) | const [inline] |
Definition at line 390 of file xyMonom.h.
References xyMonom< ccoeff >::coeff, xyMonom< ccoeff >::exponents, xyExpPair::getXExp(), and xyExpPair::getYExp().
IMultiplyRing::ElementType xyMonom< ccoeff >::substitute2 | ( | const typename IMultiplyRing::ElementType & | x, | |
const typename IMultiplyRing::ElementType & | y, | |||
const IMultiplyRing & | imult | |||
) | const [inline] |
es ist nur der Sonderfall implementiert, in welchem coeff*x^i*y^j wieder in IMultiplyRing::ElementType landet. Dies ist nicht immer der Fall.
res= imult.multiply(coeff, res);
Definition at line 430 of file xyMonom.h.
References xyMonom< ccoeff >::coeff, xyMonom< ccoeff >::exponents, xyExpPair::getXExp(), and xyExpPair::getYExp().
Definition at line 108 of file xyMonom.h.
Referenced by xyMonom< ccoeff >::createFromStream(), xyMonom< ccoeff >::getCoeff(), xyMonom< ccoeff >::setCoeff(), xyMonom< ccoeff >::substitute(), xyMonom< ccoeff >::substitute2(), and xyMonom< ccoeff >::xyMonom().
Definition at line 110 of file xyMonom.h.
Referenced by xyMonom< ccoeff >::createFromStream(), xyMonom< ccoeff >::getDegree(), xyMonom< ccoeff >::getXExp(), xyMonom< ccoeff >::getYExp(), xyMonom< ccoeff >::setExp(), xyMonom< ccoeff >::substitute(), xyMonom< ccoeff >::substitute2(), and xyMonom< ccoeff >::xyMonom().
std::string xyMonom< ccoeff >::monomString [protected] |