[SciPy-Dev] GSOC 2014: LTI systems & control / ODE integration

Ralf Gommers ralf.gommers at gmail.com
Sun Mar 2 13:28:58 EST 2014


On Sun, Mar 2, 2014 at 2:24 PM, Juan Luis Cano <juanlu001 at gmail.com> wrote:

> Hello all,
>
> This is not my first message to this mailing list but let me introduce
> myself anyway - I'm Juan Luis Cano, a 5th year student of Aeronautical
> Engineering at TU Madrid. I am a self-taught Python programmer, editor
> of the blog Pybonacci about scientific Python in Spanish language and I
> have contributed to SciPy in the past (see
> https://github.com/scipy/scipy/commits/master?author=juanlu001).
>
> I showed interest last year about the ODE integration methods in SciPy,
> and in fact I rewrote the odeint function in modern Fortran 90 using
> f2py (see #2818) but the PR is on hold due to build problems on Windows
> and backwards compatibility issues. There was some discussion on the
> mailing list about totally revamping the integrators interface but it
> halted.
>
> Besides, I polished some functions in the signal.lti package but I
> noticed some limitations while writing an article on PID control with
> SciPy (original in Spanish in
>
> http://pybonacci.wordpress.com/2013/11/06/teoria-de-control-en-python-con-scipy-ii-control-pid/
> )
> and wanted to help building a solid framework for control theory within
> SciPy, polishing the LTI class, adding methods to connect several blocks
> and doing time response calculations and perhaps creating a graphical
> user interface.
>

There's enough to do here to be able to write an interesting GSoC
application. An unordered list of thoughts:

- Filter design has seen a significant for 0.14.0 with @endolith's work on
using zpk internally, but that's mostly still hidden from the user. An API
allowing ss and zpk usage instead of tf still needs to be worked out (see
discussion on https://github.com/scipy/scipy/issues/2443).
- MIMO systems also need work still:
https://github.com/scipy/scipy/pull/2862.
- There's the duplicate lsim/step/impulse functions that need fixing.
- Adding more functionality for LTI systems sounds good.
- Chuck has mentioned having an improved Remez algorithm lying around
before, that still needs integrating.
- There are lots of Kalman filters in Python floating around, including in
the Cookbook, in statsmodels and in pyKalman. You'd expect to find one in
scipy.signal though.
- PID tuning is kind of a large topic, but if you have a clear proposal I
could see it fitting in.
- A GUI is definitely out of scope for Scipy. Maybe some basic plotting
tools like for Bode plots using MPL could be in scope though.


> I would like to work on one (or both) of these topics as part of the
> GSOC program in case they are seen as potentially useful.


Both are useful imho. I'd definitely focus on one topic though, two
separate ones probably won't work too well in practice and your GSoC
proposal will not look very coherent.

Cheers,
Ralf

Any advice on narrowing the subject and/or writing a proposal would be
> greatly
> appreciated.
>

> Regards,
>
> Juan Luis Cano
> Aeronautical Engineering
> TU Madrid, Spain
> _______________________________________________
> SciPy-Dev mailing list
> SciPy-Dev at scipy.org
> http://mail.scipy.org/mailman/listinfo/scipy-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/scipy-dev/attachments/20140302/d4aeb273/attachment.html>


More information about the SciPy-Dev mailing list