By the way, Naveen, could you create a repository for your work? It will be 
easier to work with.

Best regards,
Nijso

On Tuesday, 30 March 2021 at 09:48:48 UTC+2 nijso.be...@gmail.com wrote:

> Hi Naveen, Oscar,
> I agree with Oscar that there is still much work to be done, even having 
> 'only' the rational Riccati solver implemented and tested is still a lot of 
> work, after all you have to implement and test all subcases (movable poles, 
> fixed poles, poles at infinity). And the solver should not only work on the 
> solvable ODEs, but should also not get stuck on ODEs that are not solvable 
> using this method. Also sometimes we will find only special solutions and 
> we would need to construct the general solution from them. Since this is a 
> core solver for possibly many other solvers, it is important that it 
> functions very well.
>
> I have put the first 367 kamke odes (the ODEs of first order and first 
> degree) in sympy format in a list, it is here: 
> https://github.com/bigfooted/sympy_ode
>
> I think a modular approach is best and the solver should consist of a 
> number of independent functions that can be re-used elsewhere. For instance:
> isRiccati(ode)  : return True if the input ODE is Riccati, False otherwise,
> Riccati2Normal(ode) : returns the Riccati ode in normal form,
> Poles(ode) : returns the poles, and their order and multiplicities, 
> etc..
> But I think you have made a good start.
>
> Regarding the GSoC application: I would focus a bit more on that now, it's 
> always good to be able to get some feedback before submitting (not sure how 
> that works regarding independent reviewing, though).
>
> Best regards,
> Nijso
>
>
> ...
>
>
>
> On Tuesday, 30 March 2021 at 08:34:12 UTC+2 naveensai...@gmail.com wrote:
>
>> Hi Oscar,
>>
>> Should we add all the ODEs of Kamke and Murphy or only Riccati ODEs? In 
>> either case, how do we plan on parsing the solution from Maple/Mathematica? 
>> I could see that there is a Mathematica Parser, but even that seems to be 
>> very basic and is not parsing some complex expressions.
>>
>> Naveen
>> On Monday, March 29, 2021 at 7:17:25 PM UTC+5:30 Naveen Saisreenivas 
>> Thota wrote:
>>
>>> > 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
>>>
>>> Okay, thank you for the advice, Oscar! I'll make the proposal and post 
>>> it here so that you and others can review it.
>>>
>>> Naveen
>>> On Monday, March 29, 2021 at 5:03:53 PM UTC+5:30 Oscar wrote:
>>>
>>>> On Mon, 29 Mar 2021 at 10:42, Naveen Saisreenivas Thota 
>>>> <naveensai...@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/ec01c77e-7ca7-48bc-aec8-94dcd3977567n%40googlegroups.com.

Reply via email to