Hi,

there was an interesting talk by William about the future of Sage,
that I just watched at

http://sage.math.washington.edu/home/wstein/sagedays15/

it's the file:

M2U00407-wstein-sage5.0-HORIZON.MPG

(you can watch the compressed version as I did)

So here are couple subjective comments that occured to me during it:

* I realized after moving to the US and actually teaching Calc I (I
was TAing the practical lessons, e.g. lots of calculations), that
being able to get the software to the state that can be used by every
single student in the class even if they never programmed before is
absolutely essential. There are 2 ways --- web notebook, and then the
actual program, which mostly means it has to be ported to windows (of
course it has to work on all other platforms that people use, but that
already works)

* The general approach the Sage uses to get to users is the right one

* I like how mathematica is designed, that one plays with symbolic
high level things, but in the background the right (fastest) algorithm
(and implementation) is used. It seems to me that Sage is also going
on this path. Btw in case you haven't noticed, Wolfram just launched:

http://www.wolframalpha.com/

try to type some integral in there, e.g.:

http://www.wolframalpha.com/input/?i=integrate+1%2F(1%2Bx**7)

and you get all kinds of information about it and graphs etc. Just
look at all the different ways the result can be represented. This is
just to show how much we are behind Mathematica with anything in Sage
or sympy. Sympy can do some of those transformations already, but it's
still a lot more work to be done.

* at the very end of the presentation there was a discussion about
numeric stuff. There are tons of computational programs in lots of
fields (atomic physics, quantum field theory, electromagnetics,
electronic structure calculations, fluid dynamics, atmospheric
sciences, nuclear engineering ....) and there is just no way how this
can all be in Sage. Nevertheless, people would like to teach with it,
let's say some electrodynamic course, or finite element course, or
(partial) differential equations course. Sage currently cannot do any
of that.

One way out is just to install the particular package for it, but it's
not easy. For example for the finite element solvers that our group[0]
is doing we need (besides python, numpy, scipy, cython) also lots of
solvers (petsc, umfpack, ...), then 3d plotting (mayavi) and other
dependencies. And also I would like to have more than our FEM library,
I would like to include libmesh and other things, unified with one
Python interface, so that one can compare, etc. Adding all of this
into Sage, it would get twice as big.

So the approach that I took with SPD [1] that William was also
discussing in the presentation, was to throw out most of Sage, except
the build system and the scipy+notebook combo. That way our group can
add the finite element + related stuff and have our package that we
can try to get to the end users (e.g. the combination of the web
notebook and the actual program that works on all platforms), and
other groups can do the same for atomic physics, fluid dynamics, etc.
And it is still fully compatible with Sage, e.g. the base packages are
the same, and I think all the other custom packages would also just
work when installed into Sage.

I however still want to be able to represent and manipulate symbolics
(e.g. represent some ordinary or partial differential equation and
then solve it with our C++ solver), so we'll just use sympy for that,
because it's small and it can convert expression from and to Sage, if
needed. I hope we could figure out more ways to collaborate with
pynac, Fredrik (sympy and mpmath dev) is at SD15, so I hope they'll
discuss it. :)

I also want to be able to use plots easily, which fortunately the Sage
notebook can do.

So overall I am very excited where all of this is going.

I am interested in your comments to the above.

Ondrej

[0] http://hpfem.math.unr.edu/
[1] http://code.google.com/p/spdproject/

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to 
sage-devel-unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to