Opened 9 years ago
Closed 9 years ago
#16785 closed defect (fixed)
derivative operator translation to maxima
Reported by: | nbruin | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | sage-6.4 |
Component: | interfaces | Keywords: | |
Cc: | kcrisman, rws, burcin | Merged in: | |
Authors: | Nils Bruin | Reviewers: | Ralf Stephan |
Report Upstream: | N/A | Work issues: | |
Branch: | 9c0f66d (Commits, GitHub, GitLab) | Commit: | 9c0f66dca5d59aef571c69fe7561b6446ec23d71 |
Dependencies: | Stopgaps: |
Description
Currently, we are failing to properly convert certain expressions to maxima when they contain differential operators:
sage: function('f') sage: maxima_calculus(f(x).diff(x)) 'diff(f(_SAGE_VAR_x),_SAGE_VAR_x,1) sage: maxima_calculus(f(x+1).diff(x)) #this is bad! ?%at('diff(f(t0),t0,1),[t0=x+1])
note the bare x
in the bottom line. That should be a _SAGE_VAR_
.
As it turns out, a lot of conversion here is happening with string manipulations, circumventing the standard conversion machinery. That also means that functions that have a non-trivial _maxima_init_evaled_
will not get translated using it. It's better to do everything using the standard conversion.
Change History (5)
comment:1 Changed 9 years ago by
Branch: | → u/nbruin/ticket/16785 |
---|
comment:2 Changed 9 years ago by
Cc: | kcrisman rws burcin added |
---|---|
Commit: | → 9c0f66dca5d59aef571c69fe7561b6446ec23d71 |
Status: | new → needs_review |
comment:3 Changed 9 years ago by
Authors: | → Nils Bruin |
---|---|
Reviewers: | → Ralf Stephan |
Status: | needs_review → positive_review |
Passes ptestlong and looks good.
comment:4 Changed 9 years ago by
Milestone: | sage-6.3 → sage-6.4 |
---|
comment:5 Changed 9 years ago by
Branch: | u/nbruin/ticket/16785 → 9c0f66dca5d59aef571c69fe7561b6446ec23d71 |
---|---|
Resolution: | → fixed |
Status: | positive_review → closed |
Note: See
TracTickets for help on using
tickets.
Hopefully these changes do the trick.
maxima_lib.sr_to_max
was already doing something along these lines, so no changes are required there.New commits:
trac #16785: improve differential operator translation to maxima