6 #ifndef SYMENGINE_SERIES_GENERIC_H
7 #define SYMENGINE_SERIES_GENERIC_H
10 #include <symengine/polys/uexprpoly.h>
17 :
public SeriesBase<UExprDict, Expression, UnivariateSeries>
26 const unsigned degree)
29 SYMENGINE_ASSIGN_TYPEID()
32 static RCP<const UnivariateSeries> create(
const RCP<const Symbol> &var,
33 const unsigned int &prec,
36 return make_rcp<const UnivariateSeries>(std::move(s), var->get_name(),
40 static RCP<const UnivariateSeries>
41 series(
const RCP<const Basic> &t,
const std::string &x,
unsigned int prec);
42 hash_t __hash__()
const override;
43 int compare(
const Basic &o)
const override;
44 bool operator==(
const UnivariateSeries &u)
const;
45 RCP<const Basic> as_basic()
const override;
46 umap_int_basic as_dict()
const override;
47 RCP<const Basic> get_coeff(
int)
const override;
48 static UExprDict var(
const std::string &s);
50 static Expression convert(
const Basic &x);
52 static int ldegree(
const UExprDict &s);
53 static UExprDict
mul(
const UExprDict &s,
const UExprDict &r,
unsigned prec);
54 static UExprDict pow(
const UExprDict &s,
int n,
unsigned prec);
55 static Expression find_cf(
const UExprDict &s,
const UExprDict &var,
57 static Expression root(Expression &c,
unsigned n);
58 static UExprDict diff(
const UExprDict &s,
const UExprDict &var);
59 static UExprDict integrate(
const UExprDict &s,
const UExprDict &var);
60 static UExprDict subs(
const UExprDict &s,
const UExprDict &var,
61 const UExprDict &r,
unsigned prec);
63 static Expression
sin(
const Expression &c);
64 static Expression
cos(
const Expression &c);
65 static Expression
tan(
const Expression &c);
66 static Expression
asin(
const Expression &c);
67 static Expression
acos(
const Expression &c);
68 static Expression
atan(
const Expression &c);
69 static Expression
sinh(
const Expression &c);
70 static Expression
cosh(
const Expression &c);
71 static Expression
tanh(
const Expression &c);
72 static Expression
asinh(
const Expression &c);
73 static Expression
acosh(
const Expression &c);
74 static Expression
atanh(
const Expression &c);
75 static Expression
exp(
const Expression &c);
76 static Expression
log(
const Expression &c);
79 inline RCP<const UnivariateSeries>
80 univariate_series(RCP<const Symbol> i,
unsigned int prec,
const UExprDict &s)
82 return make_rcp<const UnivariateSeries>(std::move(s), i->get_name(), prec);
#define IMPLEMENT_TYPEID(SYMENGINE_ID)
Inline members and functions.
RCP< const Number > mul(const Number &other) const override
Multiplication.
RCP< const Number > pow(const Number &other) const override
Power.
Main namespace for SymEngine package.
RCP< const Basic > atan(const RCP< const Basic > &arg)
Canonicalize ATan:
RCP< const Basic > cos(const RCP< const Basic > &arg)
Canonicalize Cos:
RCP< const Basic > sinh(const RCP< const Basic > &arg)
Canonicalize Sinh:
RCP< const Basic > sin(const RCP< const Basic > &arg)
Canonicalize Sin:
RCP< const Basic > mul(const RCP< const Basic > &a, const RCP< const Basic > &b)
Multiplication.
RCP< const Basic > tan(const RCP< const Basic > &arg)
Canonicalize Tan:
RCP< const Basic > acos(const RCP< const Basic > &arg)
Canonicalize ACos:
RCP< const Basic > tanh(const RCP< const Basic > &arg)
Canonicalize Tanh:
RCP< const Basic > asin(const RCP< const Basic > &arg)
Canonicalize ASin:
RCP< const Basic > cosh(const RCP< const Basic > &arg)
Canonicalize Cosh:
RCP< const Basic > exp(const RCP< const Basic > &x)
Returns the natural exponential function E**x = pow(E, x)
RCP< const Basic > atanh(const RCP< const Basic > &arg)
Canonicalize ATanh:
RCP< const Basic > acosh(const RCP< const Basic > &arg)
Canonicalize ACosh:
RCP< const Basic > asinh(const RCP< const Basic > &arg)
Canonicalize ASinh:
RCP< const Basic > log(const RCP< const Basic > &arg)
Returns the Natural Logarithm from argument arg