On Mon, 29 Mar 2021 at 10:42, Naveen Saisreenivas Thota
<naveensaisreeni...@gmail.com> wrote:
>
> > I think you underestimate how much work is involved in really making
> > the implementation robust and complete. Note that it's much better to
> > have a well-tested, complete, efficient implementation of a single
> > algorithm with nicely organised and documented code than it is to have
> > multiple half-implemented algorithms. As Nijso emphasised earlier the
> > most important thing first is to establish a systematic test base. We
> > should get the Kamke examples in and you should verify that this does
> > find all the rational function solutions for all of the Ricatti ODEs.
>
> I was thinking as much, but I wanted to ask just to know your opinion as 
> well. I did test the current code with some examples, but I am yet to test it 
> with all of them. So, from what you say, I am planning to include Rational 
> Riccati Solver and ODE test bank (Kamke and Murphy) as the primary items to 
> be done and leave computation of rational solutions for a general 1st order 
> equation as a bonus? Will this be okay?

Yes, I think that sounds good.

Note, as I said in reply to some other queries about GSOC exactly what
you would or wouldn't achieve within the duration of the project is
less important than demonstrating that you are capable of making
significant contributions to SymPy. All tasks can turn out to be
harder or easier than expected so it's hard to estimate in advance
what is possible given a fixed timeframe.

When reviewing GSOC applications (just speaking for myself - I am not
the only reviewer) I am most interested in ensuring that we can get
the best contributors who are capable of making the most valuable
contributions to important parts of SymPy. What you are proposing here
is a significant improvement to an important part of SymPy so the main
points to focus on in your application are:
1) making it clear why this is important and how significant the improvement is
2) demonstrating that you personally understand what needs doing and
are capable of doing the necessary work

Then if your application is successful and it turns out that (based on
the work you have already done) it is not hard to complete some of the
tasks listed then there is no shortage of other things to be done for
ODEs in SymPy. On the other hand if one of the tasks turns out to be
more involved than expected then it is better to limit the scope of
the project later and make sure that the parts that are implemented
are done well.

A general point that I often make to students is that (usually) it is
better to do half a job well than to do the whole job badly. If half a
job is done well then it makes a good starting point for someone in
future to finish that work. If the whole job is done badly it
potentially makes it more difficult for someone else to improve that
work than it would be for them if starting from scratch.

Oscar

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sympy+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/CAHVvXxRD0%3DE-L%2BThuHPb4udVWvpR9ERh21Mrq%3DhxZQBuBtmvGA%40mail.gmail.com.

Reply via email to