On Mar 20, 2:41 pm, Ondrej Certik <ond...@certik.cz> wrote:
> Yes, just search this list for examples of applications. Definitely
> start on this as soon as possible and prepare a schedule etc. You can
> then easily fit it on the template that PSF will put up.
>
> Ondrej

Well, Python posted their template, and there's not much to it (see
link above).

The other page says that I should create a page on the wiki.  Does
that still apply?

So far, I have this list of things that I would like to do.  I am
still not sure how they will fit into a timeline:

• Implement Issue 1336:  I actually posted this.  The idea is to
create a arbitrary constant type that will aid with the simplification
of ODE solutions.  See the issue page (http://code.google.com/p/sympy/
issues/detail?id=1336) to see why this is important.  I am not sure
where this should fit in my timeline.  On the one hand, it would make
sense to implement this first so that I won't have to modify my code
later on.  On the other hand, it should be modular enough that this
won't be an issue.  But more importantly, I think that implementing it
later on might be a better idea because this will require a stronger
understanding of the sympy code base than the other items, which I
should have more of later on in the summer.

• Add the ability to solve for initial conditions:  This should be
straightforward.  The solver engine is already there, I just have to
modify the dsolve function to accept initial conditions arguments.
This shouldn't take very long at all.

• Add the ability to solve differential equations of the following
forms/methods:
- Separable
- n-order linear homogeneous with constant coefficients.
- Exact differential equation.
- Some special cases of exact differential equations that aren't exact
but can be made exact with a simple substitution.
- Homogeneous differential equations (by this I mean equations that
can be written in the form dy/dx=f(y/x) or dy/dx=f(x/y)).
- n-Order non-homogeneous linear with constant coefficients via
undetermined coefficients or variation of parameters:  This should
take longer than any other of the methods, as the solution is more
algorithmic and less straight forward.
- non-homogeneous linear with non-constant coefficients via reduction
of order: perhaps this should go in the list below.

• If I have time, add these lesser used types/methods:
- Differential equations of the type dy/dx=p(x,y)/q(x,y) where p(x,y)
and q(x,y) are linear functions, both of coincident and non-coincident
lines.

These are take straight from my ODE text.  Am I missing anything
important?  I don't think I will have the time to do series ,
transformation, or numerical methods.

• Clean up bugs (obviously):  Should this fit into my timeline?  I
know that it will take up a significant amount of my time, but it
doesn't seem like that would be continuous to me (e.g., "Weeks 5-6:
fix bugs" would be kind of silly).

• Format:  In what order should the ODE engine try solution methods?
Will some methods fail if they are tried before others  are?  Will
some methods fail if the matcher catches them but they really can't be
solved?  I already have an example of this.  The Bernoulli method I
implemented, dsolve(f(x).diff(x)+x*f(x)-f(x),f(x)) catches f(x)^n with
n=1, but the solution involves the power of 1/(1-n), so it returns the
C1**(oo) in regular python and
0 ⎽⎽⎽⎽
╲╱ C₁
in isympy (is this a bug or intentional?).  I will submit a patch that
checks to make sure that n≠1, but even then, it should be recognized
as linear (f(x).diff(x)+x*f(x)-f(x)==f(x).diff(x)+(x-1)*f(x)).  Also,
speed and final format of the answer are considerations here.

• Am I missing anything important here?
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To post to this group, send email to sympy@googlegroups.com
To unsubscribe from this group, send email to sympy+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sympy?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to