[SciPy-Dev] Proposal: calling signal.lti object returns transfer function value

Ralf Gommers ralf.gommers at gmail.com
Sat Jul 20 11:39:36 EDT 2013


On Tue, Jul 16, 2013 at 4:49 PM, Juan Luis Cano <juanlu001 at gmail.com> wrote:

> Hello all,
>
> I've been trying the scipy.signal module lately for some easy things and
> I had an idea, but I thought it would be better to bring it up in the
> mailing list before filing a PR on GitHub.
>
> My proposal is to implement the __call__ method on signal.lti objects so
> it returns the value on the transfer function.
>
> I took the idea from the `bode` function. This line:
>
>      y = numpy.polyval(sys.num, jw) / numpy.polyval(sys.den, jw)
>
> (https://github.com/scipy/scipy/blob/v0.12.0/scipy/signal/ltisys.py#L940)
>
> could be moved to signal.lti.__call__, and then in `bode` write
>
>      y = sys(jw)
>
> The detail is trivial (so is the implementation) but I think it would be
> a useful thing. What do others think? Shall I open a pull request?
>

Not sure, is writing
    y = lti_sys(jw)
instead of
    jw, y = lti_sys.freqresp(jw)
clearer and umambiguous? It may make sense, but would be good to get the
opinion of some users on this.

Ralf
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/scipy-dev/attachments/20130720/1ebdccd1/attachment.html>


More information about the SciPy-Dev mailing list