X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=ginac%2Fnumeric.h;h=09603f660d33f1542995733b05dbdb96de4fc973;hp=2cf93480cf9eb16fb812cc4403882f526c20f33b;hb=a57c586be1fb226e9dd234b481c6b1da91013925;hpb=56fe6d8d9e7bd113e44bf2eadf26af0b9d480a01 diff --git a/ginac/numeric.h b/ginac/numeric.h index 2cf93480..09603f66 100644 --- a/ginac/numeric.h +++ b/ginac/numeric.h @@ -105,6 +105,7 @@ public: public: unsigned precedence() const {return 30;} bool info(unsigned inf) const; + bool is_polynomial(const ex & var) const; int degree(const ex & s) const; int ldegree(const ex & s) const; ex coeff(const ex & s, int n = 1) const; @@ -119,6 +120,8 @@ public: ex smod(const numeric &xi) const; numeric max_coefficient() const; ex conjugate() const; + ex real_part() const; + ex imag_part() const; protected: /** Implementation of ex::diff for a numeric always returns 0. * @see ex::diff */ @@ -148,7 +151,7 @@ public: const numeric & operator=(double d); const numeric & operator=(const char *s); const numeric inverse() const; - int step() const; + numeric step() const; int csgn() const; int compare(const numeric &other) const; bool is_equal(const numeric &other) const; @@ -251,7 +254,7 @@ inline const numeric pow(const numeric &x, const numeric &y) inline const numeric inverse(const numeric &x) { return x.inverse(); } -inline int step(const numeric &x) +inline numeric step(const numeric &x) { return x.step(); } inline int csgn(const numeric &x)