>
> I guess Mathematica is the leader on solving differential equations
> symbolically, and pending other great ideas, I think their syntax is
> worth copying. Here's an example of the DSolve syntax in Mathematica:
>
> DSolve[{y''[x] + x^2 y[x] == 0 , y[0] == 0, y'[0] == 1}, y, x]
>
> The arguments are a list of equations, the dependent variable, which
> can also be a list if there is more than one dependant variable, and
> finally the independent variable (or variables for PDEs). What I
> really like about this is that boundary conditions are specified as
> equations, and not as a list of symbols separated from their meaning.
> I also like that there is only one function and one syntax, regardless
> of what order the equation is, or whether 0 or more boundary values
> are given, and whether the boundary values specify a Boundary Value
> Problem or an Initial Value Problem.
I'd recommend that the inputs be four lists. The first is the
differential equations, the second are the boundary/initial conditions
and the third are the dependent variables, and the fourth the
independent
variables. That way, the conditions are cleanly separated from the
equations which may be useful in the solution process.
Cheers,
Tim.
I think, Maple is better at that, especially for partial differential
equations. In particular, Lie symmetries and Heun functions are explored
much more in Maple than in Mathematica. It still has some bugs, but they
usually come from other sources, such as extremely buggy int, solve, or
simplify.
Alec
Yes, I've found that since you're often getting the boundary conditions
and the equations separately, it's easier to have them as two separate
lists. If I remember correctly, this is what Maple does. Yes, if there
are no boundary conditions, you'd have to provide an empty list. I
don't think that's really much of a problem.
Cheers,
Tim.
dsolve({ODE, ICs}, y(x), options)
Alec
The Axiom project has created a test suite based on the Kamke
(E. Kamke "Differential Equations, Methods of Solutions and
Solutions" Leipzig (1956)) which, I believe, is the same test
suite used by Maple.
Portions of the test suite, including answers where Axiom can produce them,
is available at
<http://axiom.svn.sourceforge.net/viewvc/axiom/trunk/axiom/src/input/kamke0.input.pamphlet>
(also kamke1, kamke2, kamke3, kamke4, kamke5, kamke6, and kamke7)
Maple clearly dominates this area and has, by far, the best
implementation of an ODE solver. Like all of the math projects,
they dominate because they have the best person for the job.
Tim