]> www.ginac.de Git - ginac.git/blobdiff - ginac/mul.h
Added methods for taking real and imaginary parts.
[ginac.git] / ginac / mul.h
index afb9abc80e05ccf9a31ba4d1c02e3b752ccd5810..d9023c2f30755d2374e621d24f2f3a03864ecce8 100644 (file)
@@ -52,8 +52,11 @@ public:
        int degree(const ex & s) const;
        int ldegree(const ex & s) const;
        ex coeff(const ex & s, int n = 1) const;
+       bool has(const ex & other, unsigned options = 0) const;
        ex eval(int level=0) const;
        ex evalf(int level=0) const;
+       ex real_part() const;
+       ex imag_part() const;
        ex evalm() const;
        ex series(const relational & s, int order, unsigned options = 0) const;
        ex normal(exmap & repl, exmap & rev_lookup, int level = 0) const;
@@ -65,7 +68,7 @@ protected:
        ex derivative(const symbol & s) const;
        ex eval_ncmul(const exvector & v) const;
        unsigned return_type() const;
-       const basic* return_type_tinfo() const;
+       tinfo_t return_type_tinfo() const;
        ex thisexpairseq(const epvector & v, const ex & oc) const;
        ex thisexpairseq(std::auto_ptr<epvector> vp, const ex & oc) const;
        expair split_ex_to_pair(const ex & e) const;
@@ -78,6 +81,7 @@ protected:
        void combine_overall_coeff(const ex & c1, const ex & c2);
        bool can_make_flat(const expair & p) const;
        ex expand(unsigned options=0) const;
+       void find_real_imag(ex&, ex&) const;
        
        // new virtual functions which can be overridden by derived classes
        // none