On Dec 12, 2007 3:18 PM, pgdoyle <[EMAIL PROTECTED]> wrote:
>
>
> > I'll actually be posting a vague pie in the sky grant proposal to
> > sage-* for feedback in about 3 or 4 days
> > about improving special functions in Sage....
> >
>
> This sounds like a very good idea.  One of the main things I worry
> about missing from Mathematica is all the special functions.
                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

If you haven't already, you should also try doing:

sage: import scipy.special
sage: scipy.special.[tab key]

There's a *massive* number of double precision special functions
included in sage via scipy.

Even better, take a look at this page:

   http://new.scipy.org/SciPyPackages/Special

There's a list of over 15 families of Bessel functions.  We have not
yet done anything to make these easy to use from Sage yet -- which
for me means:
   (1) adding *lots* of examples,
   (2) wrapping them so they behave well with respect to Sage data types
   (3) Given them plot methods, and symbolic support.
In particular, you may want to turn of preparsing before using them or
explicitly coerce the inputs to native python types (e.g., float,
complex, etc.).
Here is an example:

sage: import scipy.special
sage: scipy.special.yv?
Type:           ufunc
Base Class:     <type 'numpy.ufunc'>
String Form:    <ufunc 'yv'>
Namespace:      Interactive
Docstring:
    y = yv(x1,x2) y=yv(v,z) returns the Bessel function of the second
kind of real
    order v at complex z.
sage: scipy.special.yv(int(2),complex(0,1))
(1.03440456978-0.135747669767j)

IMPORTANT NOTE: When David Joyner was using Pari/maxima to
implement the special functions stuff at the sage level that you've been
looking at, scipy wasn't even a part of Sage yet, otherwise he might
have used it.

By the way, I originally wrote the first ever pre-Sage <--> something else
interface 3 years ago when I needed access to a special function that
was only implemented in Mathematica (as far as I knew).   That's where
Sage talking to other programs really began...

> This is of course a tricky business, because of choices of branch-
> cuts, and keeping track of precision, and Mathematica's functions
> don't always work
> as they should.  I hope and expect that this kind of problem will be
> easier to deal with in an open system than in Mathematica, where
> you can't inspect the code.

Agreed.


 -- William

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://sage.math.washington.edu/sage/ and http://sage.scipy.org/sage/
-~----------~----~----~----~------~----~------~--~---

Reply via email to