#9421: desolve mixes user parameters and integration constants
-----------------------------------+-------------------------------
       Reporter:  zimmerma         |        Owner:  burcin
           Type:  defect           |       Status:  positive_review
       Priority:  major            |    Milestone:  sage-6.2
      Component:  calculus         |   Resolution:
       Keywords:                   |    Merged in:
        Authors:  Paul Zimmermann  |    Reviewers:  Ralf Stephan
Report Upstream:  N/A              |  Work issues:
         Branch:                   |       Commit:
   Dependencies:                   |     Stopgaps:
-----------------------------------+-------------------------------

Comment (by nbruin):

 You might want to consider this one too:
 {{{
 sage: desolve(diff(f(x),x,x)-f(x),f(x))
 k2*e^(-x) + k1*e^x
 }}}
 We can recognize the variables as distinct before they are converted from
 maxima:
 {{{
 sage: function('f',x)
 f(x)
 sage: var('c')
 c
 sage: V=diff(f(x),x)-f(x)+c
 sage: v=maxima_calculus(V)
 sage: v.ode2(f(x),x)
 'f(x)=(c*%e^-x+%c)*%e^x
 sage: v.ode2(f(x),x).ecl()
 <ECL: ((MEQUAL SIMP) ((%F SIMP) $X)
  ((MTIMES SIMP)
   ((MPLUS SIMP) $%C
    ((MTIMES SIMP) $C ((MEXPT SIMP) $%E ((MTIMES SIMP) -1 $X))))
   ((MEXPT SIMP) $%E $X)))>
 }}}
 so perhaps the right solution is to warn when sage's "forget the %" causes
 a name collision (with the righter solution being: making sage's "forget
 the %" more intelligent, so that collisions can be avoided)

--
Ticket URL: <http://trac.sagemath.org/ticket/9421#comment:9>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" 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 http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.

Reply via email to