If you are interested in contributing to series, study the logic of the ring
series module
<https://github.com/sympy/sympy/blob/master/sympy/polys/ring_series.py>
which is documented here
<http://docs.sympy.org/latest/modules/polys/ringseries.html>.
It has a bunch of helper functions like rs_exp or rs_cos which expand the
exponential, or the cosine, etc of the given expression. Here is an example:
from sympy import *
from sympy.polys.ring_series import *
R, x = ring('x', QQ)
print(rs_cosh(6*x, x, 7))
Great, we got a few terms of the power series of cosh(6*x), namely
324/5*x**6 + 54*x**4 + 18*x**2 + 1
(You may want to read the code of that function to see how it did that: it
used the expansion of exp and inverted it.)
But the following, which should do the same, throws an exception:
t = symbols('t')
print(rs_series(cosh(6*t), t, 7))
Why? Apparently, the dictionary here
<https://github.com/sympy/sympy/blob/master/sympy/polys/ring_series.py#L1841>
is
lacking an entry for cosh that would point evaluation to rs_cosh. Try
adding it and see if the above works correctly.
Then consider linking other hyperbolic trigonometric functions for which
the helpers already exist.
Later, after familiarizing yourself with the process of obtaining new
series from old (by arithmetic operations, integration, differentiation,
etc - all are already implemented), try adding a new rs_ helper; for
example, for sine integral
<https://en.wikipedia.org/wiki/Trigonometric_integral> function Si. It's
just the sine series, divided by argument and then integrated.
Ask in Gitter chat <https://gitter.im/sympy/sympy> if you get stuck.
--
You received this message because you are subscribed to the Google Groups
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sympy.
To view this discussion on the web visit
https://groups.google.com/d/msgid/sympy/c0bfa7c7-aa71-4757-9885-eb5524c036df%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.