Hi. 
On Mar 21, 2011, at 1:10 PM, Yuri Karadzhov wrote:

> Hello:
> 
> I am PhD student of the Kiev Institute of Mathematics, National
> Academy of Science, Ukraine. I have an honors master's degree in
> mathematical physics and computer sciences.
> 
> Currently in applied math department I study the theory of Lie groups
> and it's application to the differential equations. The most recent
> works however concerned with supersymmetry of Schrödinger-Pauli
> equation of arbitrary dimension. The obtained results widely extend
> the number of exactly solvable Quantum Mechanic problems as well as
> generalize the approach of finding such problems.
> 
> I am interested in participating in Sympy 2011 GsoC project. I have
> required mathematical skills as well as good knowledge of different
> CAS (Mathematica, Maple, Sage) and experience to write extensions for
> them. The proposed ideas were interesting for me and I would be glad
> to help with most of them, especially with ones concerned with
> integration, series, ordinary and partial differential equation, Lie
> groups, supersymmetry and quantum mechanics.
> 
> I would also like to propose my own ideas which I found helpful in my
> study.
> 1. Implement functions to be able to collect similar members of
> expression containing functions and to gather coefficients of linearly
> independent members.
> 
> e.g. expression
> x*(a+b*y+sin(y))+y*(c+3*x+x^2)+x*sin(y+3)+x*cos(y)+f(x,y,t)
> 
> should be translated to
> a*x+(b+c)*y+3*x*y+x^2*y+(1+cos(3))*x*sin(y)+(1+sin(3))*x*cos(y)
> +f(x,y,t)
> 
> and functions and coefficients should be gathered
> [a, b+c, 3, 1, 1+cos(3), 1+sin(3), 1]
> [x, y, x*y, x^2*y, x*sin(y), x*cos(y), f(x,y,t)]
> 
> where x, y are variables and a, b, c, t - unknown constants
> That is, to do the same things that collect and coeffs functions do
> with polynomials.

This would be useful, but would be very easy to implement.

> 2. Implement case wise methods for expressions depending on
> parameters.
> e.g. Solve ODE containing constant parameters
> diff(f(r),r)=a*f(r)+b*r+c
> 
> has two significantly different solutions
> f(r)=C1*exp(a*r)-b*r/a-(b+a*c)/a^2 if a != 0
>       f(r)=b*r^2/2+c*r+C1 if a = 0
> 
>       where r - independent variable, f - dependent variable, a, b, c -
> arbitrary constants
> This problems become extremely painful, when we have bunch of more
> complex equations and expressions. Unfortunately there are no
> solutions in commercial CAS, such as Maple, Mathematica and MatLab as
> well as in open source such as Maxima and Sage. Actually Symbolic
> Tools Box (former MuPad) in MatLab tried to solve the second problem,
> but the solution does not work well. Mentioned problems are connected
> with each other and with improvement of pattern matching problem in
> Sympy. I have complete solution for Maple and porting it to
> Mathematica. I think it won't be a problem to implement this algorithm
> in Sympy.

This would be useful, I think, though it's a difficult problem to solve in 
general.  But something like this would allow us to solve Sturm-Liouville 
problems and hence improve the PDE solver too, I think.

> 
> Also I want to concentrate attention on some small problems, solution
> of which can improve usability of Sympy
> e.g. It is possible to simplify usage of dsolve function in case when
> dependent and independent variables are obvious.
> The equation
> eq=diff(y,x)+a*y+b*x+c
> has y as dependent variable and x as independent, so it is better to
> write
> dsolve(eq)
> The solution is complete (as patch for Sage, but it can be easily
> adopt to Sympy).

This would also be easy to implement.

> 
> I think that it can be interesting to implement this algorithms in
> Sympy in terms of the GSoC project.
> 
> If you are interested in my proposal please contact me and I will send
> you precise plan and if not, I will be glad to participate in one of
> the proposed projects.
> 
> Best regards,
> Yuri Karadzhov

The first and third item would be useful to have, but they are not really big 
enough projects for a summer of code.  The second one could be, though.  I 
would need to see a more detailed plan on what you plan to implement to see if 
it is big enough.

Aaron Meurer

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sympy?hl=en.

Reply via email to