#4102: make bessel_J symbolic
--------------------------------------------------------------+-------------
       Reporter:  jwmerrill                                   |         Owner:  
burcin                            
           Type:  enhancement                                 |        Status:  
needs_review                      
       Priority:  major                                       |     Milestone:  
sage-5.11                         
      Component:  calculus                                    |    Resolution:  
                                  
       Keywords:  sd48                                        |   Work issues:  
                                  
Report Upstream:  N/A                                         |     Reviewers:  
Karl-Dieter Crisman, Burcin Erocal
        Authors:  Benjamin Jones, Eviatar Bach, Volker Braun  |     Merged in:  
                                  
   Dependencies:                                              |      Stopgaps:  
                                  
--------------------------------------------------------------+-------------
Changes (by {'newvalue': u'Benjamin Jones, Eviatar Bach, Volker Braun', 
'oldvalue': u'Benjamin Jones'}):

  * keywords:  => sd48
  * reviewer:  Karl-Dieter Crisman => Karl-Dieter Crisman, Burcin Erocal
  * author:  Benjamin Jones => Benjamin Jones, Eviatar Bach, Volker Braun


Old description:

> The motivation for this is
>
> {{{
> sage: plot(bessel_J(1, x), (x, 1, 10))
> Traceback (most recent call last):
> ...
> TypeError: Unable to convert x
> (='1-1/8*x^2+1/192*x^4-1/9216*x^6+1/737280*x^8-1/88473600*x^10+1/14863564800*x^12-1/3329438515200*x^14+1/958878292377600*x^16+O(x^17)')
> to real number.
> }}}
>
> The problem is that special functions, or at least {{{bessel_J}}}, can't
> currently be partially evaluated--that is, called with a
> {{{SymbolicExpression}}} as an argument.  The model of good behavior is
> {{{polylog}}}, for which the above method produces a perfectly nice plot
>
> {{{
> sage: plot(polylog(1,x),(x,.1,.9)) #makes a fine plot
> }}}
>
> See discussion at http://groups.google.com/group/sage-
> support/browse_thread/thread/1b985b080ba2369e/7dee9eed953857f5#7dee9eed953857f5
>
> ----
>
> Release manager:
>
> Apply: attachment:trac_symbolic_bessel_v7.2.patch,
> attachment:trac_symbolic_bessel_v7-doctests.patch

New description:

 The motivation for this is

 {{{
 sage: plot(bessel_J(1, x), (x, 1, 10))
 Traceback (most recent call last):
 ...
 TypeError: Unable to convert x
 
(='1-1/8*x^2+1/192*x^4-1/9216*x^6+1/737280*x^8-1/88473600*x^10+1/14863564800*x^12-1/3329438515200*x^14+1/958878292377600*x^16+O(x^17)')
 to real number.
 }}}

 The problem is that special functions, or at least {{{bessel_J}}}, can't
 currently be partially evaluated--that is, called with a
 {{{SymbolicExpression}}} as an argument.  The model of good behavior is
 {{{polylog}}}, for which the above method produces a perfectly nice plot

 {{{
 sage: plot(polylog(1,x),(x,.1,.9)) #makes a fine plot
 }}}

 See discussion at http://groups.google.com/group/sage-
 support/browse_thread/thread/1b985b080ba2369e/7dee9eed953857f5#7dee9eed953857f5

 ----

 Release manager:

 Apply:
  * attachment:trac_symbolic_bessel_v7.2.patch,
  * attachment:trac_symbolic_bessel_v7-doctests.patch,
  * attachment:bessel_2.2.patch

--

Comment:

 All patches look good to me. We can switch this to positive review once
 the patchbot gives it a green light.

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/4102#comment:70>
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/groups/opt_out.


Reply via email to