Opened 9 years ago
Last modified 5 years ago
#9825 new defect
desolve_system unable to interpret ilt and Maxima's temporary variables
Reported by: | rhinton | Owned by: | burcin |
---|---|---|---|
Priority: | major | Milestone: | sage-6.4 |
Component: | calculus | Keywords: | calculus, maxima, symbolics |
Cc: | robert.marik | Merged in: | |
Authors: | Reviewers: | ||
Report Upstream: | Fixed upstream, in a later stable release. | Work issues: | |
Branch: | Commit: | ||
Dependencies: | Stopgaps: |
Description
desolve_system sometimes generates a Maxima result that includes temporary variables that Sage does not parse correctly.
sage: t = var('t') sage: x1 = function('x1', t) sage: x2 = function('x2', t) sage: de1 = (diff(x1,t) == -3*(x2^2-1)) sage: de2 = (diff(x2,t) == 1) sage: desolve_system([de1, de2], [x1, x2], ivar=t) ... TypeError: unable to make sense of Maxima expression 'x1(t)=ilt(-((3*laplace(x2(t)^2,t,?g1543)-x1(0))*?g1543-3)/?g1543^2,?g1543,t)' in Sage
Change History (16)
comment:1 follow-up: ↓ 2 Changed 9 years ago by
comment:2 in reply to: ↑ 1 Changed 9 years ago by
Replying to kcrisman:
On [ this Maxima list thread] we get the original system in Maxima notation - thanks to Stavros Macrackis:
Meaning this thread.
comment:3 Changed 8 years ago by
I've followed up again at this new thread - apparently it never actually made it to their bug tracker?
comment:4 Changed 7 years ago by
See also this ask.sagemath question.
comment:5 Changed 6 years ago by
And this ask.sagemath question, though here Maxima is actually asking a question about these variables!
comment:6 Changed 6 years ago by
- Milestone changed from sage-5.11 to sage-5.12
comment:7 Changed 6 years ago by
- Milestone changed from sage-6.1 to sage-6.2
comment:8 Changed 6 years ago by
- Milestone changed from sage-6.2 to sage-6.3
comment:9 Changed 5 years ago by
- Report Upstream changed from N/A to Reported upstream. No feedback yet.
comment:10 Changed 5 years ago by
Did you report it upstream to their bug tracker? I never heard on either of these emails, so I think this is how it will have to be reported.
comment:11 Changed 5 years ago by
I took your repeated mail to the list as report.
comment:12 Changed 5 years ago by
Sadly, that isn't always enough :( Reported upstream here, however, just now. There was internal discussion in the original Maxima thread so I took it that the experts had several possible resolutions.
comment:13 Changed 5 years ago by
- Milestone changed from sage-6.3 to sage-6.4
comment:14 Changed 5 years ago by
- Report Upstream changed from Reported upstream. No feedback yet. to Fixed upstream, in a later stable release.
Upstream seems to have made a change that would do something about this. Anyone want to give it a whirl?
comment:15 follow-up: ↓ 16 Changed 5 years ago by
- Summary changed from desolve_system unable to interpret Maxima's temporary variables to desolve_system unable to interpret ilt and Maxima's temporary variables
This now returns [x1(t) == ilt(-(3*g3390*laplace(x2(t)^2, t, g3390) - g3390*x1(0) - 3)/g3390^2, g3390, t), x2(t) == t + x2(0)]
so it becomes an issue to fix our Maxima interface.
comment:16 in reply to: ↑ 15 Changed 5 years ago by
Replying to rws:
This now returns
[x1(t) == ilt(-(3*g3390*laplace(x2(t)^2, t, g3390) - g3390*x1(0) - 3)/g3390^2, g3390, t), x2(t) == t + x2(0)]
so it becomes an issue to fix our Maxima interface.
According to the documentation of inverse_laplace
this is probably more or less correct. We might want to do something about "ilt" so that it is more closely tied to inverse_laplace
, though.
On [ this Maxima list thread] we get the original system in Maxima notation - thanks to Stavros Macrackis:
He also provides a simpler example which does this:
The suggestion is that the ilt should be replacing the
?g1234
type variables (which are indeed dummy variables, but native Lisp ones) by Maxima-type ones, so I am putting to reported upstream, developers acknowledge bug. However, my feeling is that we should fix this by parsing these things as well, should they come up again.