Opened 9 years ago
Closed 8 years ago
#15057 closed enhancement (fixed)
SymPy conversions for symbolic functions that are missing them
Reported by: | Eviatar Bach | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | sage-6.4 |
Component: | symbolics | Keywords: | |
Cc: | Burcin Erocal, Aaron Meurer | Merged in: | |
Authors: | Eviatar Bach | Reviewers: | Ralf Stephan |
Report Upstream: | N/A | Work issues: | |
Branch: | 341de9a (Commits, GitHub, GitLab) | Commit: | 341de9a2f88d2195cccf83204357a456c6bdd62c |
Dependencies: | Stopgaps: |
Description
Some symbolic functions are missing SymPy? conversions.
Attachments (3)
Change History (24)
Changed 9 years ago by
Attachment: | trac15057.patch added |
---|
comment:1 Changed 9 years ago by
Cc: | Burcin Erocal added |
---|---|
Status: | new → needs_review |
comment:2 Changed 9 years ago by
Cc: | Aaron Meurer added |
---|
comment:3 Changed 9 years ago by
You must be using an old version of SymPy?. KroneckerDelta? is just KroneckerDelta?. The rest look fine.
Changed 9 years ago by
Attachment: | trac15057_2.patch added |
---|
comment:4 Changed 9 years ago by
Ah, alright. I was using 0.7.1, which is the version currently in Sage. This should be merged after #14694 then. I also added doctests in case the names change again in the future.
comment:5 Changed 9 years ago by
Dependencies: | → #14694 |
---|
comment:6 Changed 9 years ago by
A bunch of new special functions have been added since then too, so this is probably not complete.
comment:7 Changed 9 years ago by
comment:9 Changed 9 years ago by
Actually, I didn't include the conversions for the exponential integrals and lambert_w
. Patch for that coming up.
Here are the functions in Sage that are not in SymPy? as far as I can tell. I haven't checked the ones in sage/rings/arith.py
yet, and of course there are tons of combinatorial functions.
- Dickman's function (
dickman_rho
in Sage) - Heaviside step function and unit step function (
heaviside
andunit_step
in Sage; they only seem to differ in thatheaviside
is undefined at 0) - Inverse Jacobi functions (
inverse_jacobi
in Sage) - Jacobi amplitude function (to be added in #14996 as
jacobi_am
) - Spherical Bessel and spherical Hankel functions (
spherical_bessel_J
,spherical_bessel_Y
,spherical_hankel1
, andspherical_hankel2
in Sage) - Symmetric zeta function (
zeta_symmetric
in Sage) - Derivatives of the zeta function (
zetaderiv
in Sage)
Note that some SymPy? conversions are going to be added in pending tickets that transition functions to use Sage's BuiltinFunction
instead of being simple Maxima wrappers. For example, #15046 and #14996.
comment:10 Changed 9 years ago by
SymPy? has Heaviside, which gives 1/2 at 0. It also has (I believe all) the bessel functions (I don't remember, but some of them may be new in the most recent version).
I opened https://code.google.com/p/sympy/issues/detail?id=3992 to implement the rest :)
comment:11 Changed 9 years ago by
Right, the spherical Bessel functions are implemented, but not the spherical Hankel functions. They're not in mpmath, but numeric evaluation is quite trivial to implement; see the function spherical_bessel_f
at http://trac.sagemath.org/attachment/ticket/15024/trac15024.patch.
comment:12 Changed 9 years ago by
This patch adds conversions for exponential integrals as well. I didn't add a Lambert W conversion since it has a different number of arguments in SymPy? (Sage allows you to choose the branch), and there doesn't seem to be a good way of doing more complicated conversions yet. It should be easy to add functionality for doing so, however.
Changed 9 years ago by
Attachment: | trac15057_3.patch added |
---|
comment:13 Changed 9 years ago by
Apparently SymPy? doesn't have Jacobi elliptic functions at all. That's another one to add to the list.
comment:14 Changed 9 years ago by
Milestone: | sage-6.1 → sage-6.2 |
---|
comment:15 Changed 8 years ago by
Milestone: | sage-6.2 → sage-6.3 |
---|
comment:16 Changed 8 years ago by
Milestone: | sage-6.3 → sage-6.4 |
---|
comment:18 Changed 8 years ago by
Branch: | → u/rws/sympy_conversions_for_symbolic_functions_that_are_missing_them |
---|
comment:19 Changed 8 years ago by
Authors: | → Eviatar Bach |
---|---|
Commit: | → 341de9a2f88d2195cccf83204357a456c6bdd62c |
Reviewers: | → Ralf Stephan |
Status: | needs_review → positive_review |
comment:20 Changed 8 years ago by
Dependencies: | #14694 |
---|
My release management script doesn't understand dependencies that predate the git transition ;-)
comment:21 Changed 8 years ago by
Branch: | u/rws/sympy_conversions_for_symbolic_functions_that_are_missing_them → 341de9a2f88d2195cccf83204357a456c6bdd62c |
---|---|
Resolution: | → fixed |
Status: | positive_review → closed |
The patch adds conversions for all the symbolic functions in Sage that I could find that have a SymPy? equivalent.
Patchbot apply trac15057.patch