Opened 9 years ago
Closed 5 years ago
#10955 closed task (fixed)
Get Maxima to easily accept flag values
Reported by: | kcrisman | Owned by: | burcin |
---|---|---|---|
Priority: | trivial | Milestone: | sage-6.3 |
Component: | calculus | Keywords: | maxima, calculus, flag, radexpand |
Cc: | robert.marik, burcin, nbruin, jason, wdj | Merged in: | |
Authors: | Peter Bruin | Reviewers: | Nils Bruin, Karl-Dieter Crisman |
Report Upstream: | N/A | Work issues: | |
Branch: | b94b48a (Commits) | Commit: | b94b48a873b29617f5562f18ffd1a61d67b1a7a6 |
Dependencies: | Stopgaps: |
Description
Maxima relatively recently decided that 1/sqrt(x) is not sqrt(1/x), for good reasons (1/sqrt(-1)=-i but sqrt(1/-1)=i in usual discussion). So for the following integral, they note that it depends on how you input it:
sage: integrate(sqrt(1/x^2+x),x) integrate(sqrt(x + 1/x^2), x) sage: integrate(1/sqrt(x^2+x),x) log(2*x + 2*sqrt(x^2 + x) + 1)
Fine. Then they suggest using the flag radexpand:all
to make the first one behave. But I can't figure out how to get it to evaluate.
sage: sage.calculus.calculus.maxima('radexpand:all') all sage: integrate(sqrt(1/x^2+x),x) integrate(sqrt(x + 1/x^2), x)
Trying maxima.eval only changes that I get 'all' instead of all. We should make this work, since this is the *calculus* instance of Sage!
Change History (5)
comment:1 Changed 6 years ago by
comment:2 Changed 5 years ago by
- Branch set to u/pbruin/10955-maxima_radexpand
- Commit set to b94b48a873b29617f5562f18ffd1a61d67b1a7a6
- Milestone set to sage-6.3
- Priority changed from minor to trivial
- Status changed from new to needs_review
- Type changed from defect to task
Works for me too; here is a doctest.
comment:3 Changed 5 years ago by
- Reviewers set to Nils Bruin, Karl-Dieter Crisman, Michael Orlitzky
- Status changed from needs_review to positive_review
As far as I can tell this is fine. I have no idea why this didn't work before. Passes tests, does right thing.
Wow, I am just now noticing that the suggestion made earlier was pretty bogus.
sage: integrate(1/sqrt(x^2+x),x) log(2*x + 2*sqrt(x^2 + x) + 1)
Totally not the same thing as sqrt(1/x^2+x)
! Should have been
sage: integrate(1/sqrt(x^2+x),x) log(2*x + 2*sqrt(x^2 + x) + 1) sage: integrate(sqrt(1/(x^2+x)),x) log(sqrt(x + 1)/sqrt(x) + 1) - log(sqrt(x + 1)/sqrt(x) - 1)
which also happens to be affected by radexpand:all
.
comment:4 Changed 5 years ago by
- Reviewers changed from Nils Bruin, Karl-Dieter Crisman, Michael Orlitzky to Nils Bruin, Karl-Dieter Crisman
comment:5 Changed 5 years ago by
- Branch changed from u/pbruin/10955-maxima_radexpand to b94b48a873b29617f5562f18ffd1a61d67b1a7a6
- Resolution set to fixed
- Status changed from positive_review to closed
Works for me on some flavour of 5.13.beta0
I didn't check if the answer makes sense, but at least setting the flag has effect.