[SciPy-Dev] GSoC17 scipy.diff & B-splines questions

Evgeni Burovski evgeny.burovskiy at gmail.com
Thu Mar 16 10:50:26 EDT 2017


On Tue, Mar 14, 2017 at 9:24 PM, Nikolay Mayorov
<nikolay.mayorov at zoho.com> wrote:
> Hi Evgeny,
>
> I'll give you my general opinion about your last question. In order to write
> a good proposal for B-splines project you'll need to have a rather good
> understanding of the subject, it's just how it is. So if you are really
> interested in this subject then go ahead and start thinking about your
> proposal and learn necessary (for the proposal) things about B-splines. But
> you definitely don't need to develop complete and expert knowledge of this
> subject to apply, just get a good idea of what you want to implement during
> GSoC and how you can achieve that.
>
> Also I would strongly recommend working on one of easier issues listed by
> Evgeni Burovski here https://github.com/scipy/scipy/issues/6730 as part of
> the application process.
>
> Evgeni himself might have his opinion different from mine :). I'm sure he
> will answer you too.
>
> Kind regards,
> Nikolay Mayorov.
>
>
> ---- On Tue, 14 Mar 2017 14:01:30 +0500 Evgeny Zhurko
> <evgeny.zhurko at gmail.com> wrote ----
>
> About B-spline improvement(i lost a part of question in previous message):
> Do you expect student with a good knowledge of splines or it's can be
> hard-working student that spend about quarter of the all time(maybe more) to
> reading the relevant literature? :-)
> Generally speaking, i find this idea the most interesting and the hardest
> for me, because i never worked with splines before.
>
> 2017-03-14 1:00 GMT+03:00 Evgeny Zhurko <evgeny.zhurko at gmail.com>:
>
> Hi,
>
> My name's Evgeny Zhurko. I'm a 3'rd year student of the Belarusian State
> University of Informatics and Radioelectronics, Minsk, Belarus. I want to
> participate in GSoC with Scipy.
>
> About scipy.diff:
> It's not necessary to invent the wheel, so, as for me, the best way to
> implement this idea will be moving numerical and algorithm differentiation
> from numdifftools to scipy with some changes (new class NDerivative for n> =
> 1 - from GSOC15 discussion).
> API proposed by Maniteja Nandana (GSoC15) i find reasonable, but with small
> controversal questions:
> I think it's not necessary to separate `richardson` as a special method,
> because we can include richardson interpolation as a required part of
> computing.
> N (derivative order) was proposed 1-4. Numdifftools can compute derivative
> of order 1-10, so scipy will compute the same :-)
>
> Current scipy functionality has parameter "method" as '2-point' or
> '3-point'. I adhere to the naming 'forward', 'backward', 'central',
> 'complex', 'multicomplex' for parameter "method". Boundary optional param
> should be added in new API as a change numdifftools.
>
> Estimates: it's not very hard task to move numdifftools to scipy with small
> changing functionality. So, optional part of idea can be partially
> implemented as required part of idea.
>
> About B-spline improvement:
> Do you want to be able to read the relevant literature? :-)
> Generally speaking, i find this idea the most interesting and the hardest
> for me, because i never worked with splines before.
>
> Best Regards,
> Evgeny Zhurko


Hi Evgeny,

To echo what Nikolay said: we certainly do not expect a student to
have a pre-existing expert knowledge on the subject! The ability to
read literature and implement algorithms off papers and/or books can
be essential however.

This project also can be naturally made into a series of sub-projects,
some of them algorithmic, some more of UI improvements. Thus a student
can use a "rolling wave" type approach to reading the literature,
where they read up as needed.

And also the first draft of the proposal does not need to be perfect:
it typically takes several iterations to converge.

Cheers,

Evgeni



More information about the SciPy-Dev mailing list