Week 6 & 7 - GSoC 2020

Hi everyone :) Long time no see.

First of all, GOOD NEWS: My PR on adding a SISO transfer function object is finally merged. Yay!! A robust transfer function object is now available for Single Input Single Output (SISO) block diagram algebra.. Here is the documentation.

woohoo

I ended up week 5 by adding unit tests for Feedback class. So, in week 6, I decided to start off with its implementation. A couple of useful methods like doit(), _eval_rewrite_as_TransferFunction(), __neg__(), etc. were implemented. In case you don’t already know - The Feedback class is used to represent negative feedback interconnection between two input/output systems. Here’s how we solve a basic block diagram problem (having a negative feedback) with this class:

block

example

We get the same result from .rewrite(TransferFunction) as we get from .doit() method.

Then, in week 7, I added the documentation for Series, Parallel classes (which was pending) along with the docs for Feedback class. Also, a new page for Control package was added in sphinx docs. All this time, I also applied the suggestions from the code reviews in these two weeks.

And finally it was merged on July 12!

In the next few days, I started working on my next task i.e. adding TransferFunctionMatrix class in physics.control. PR-19761.

That’s all for this time!!