Week 12 - GSoC 2020

This is the final blog post highlighting the work done in the final week of Google Summer of Code program 2020.

Merged PRs for this week:

  • PR-19896: This PR added some other useful methods in the TransferFunction class. It was a part of the “other” functionality Jason wanted in this package. It includes dc_gain, poles(), zeros(), _roots function, and is_stable method. dc_gain can be used to compute the gain of the response as the frequency approaches zero. poles and zeros could be used to find the poles (roots of the denominator polynomial) and zeros (roots of the numerator polynomial) of the transfer function. _roots was basically a helper function that was added which is like roots but for works only for higher-order polynomials, and uses the code from the ode module of SymPy. And is_stable method can be used to check the asymptotic stability of the transfer function. All these were tested, documented, and polished properly before merging.

  • PR-20008: Once the aforementioned PR was merged, I noticed there was a rendering fault. I added the comment in an appropriate position and then this PR was accepted.

Open PRs for this week:

  • PR-19761: Since only one week is left before the deadline, and the scope of this PR is big, I discussed with my mentors that it’s okay to reduce the scope and focus only on the necessary functionality now. Whole week, I worked on the documentation and MIMO transfer function algebra. I added the class level docstring and docstring for all other methods in the TransferFunctionMatrix class. I also added a lot of unit-tests related to MIMO transfer function algebra and then made sure that all the tests added till now pass. Still I have to make changes as per the review and will deal with them in the buffer week.

This leads us to the completion of Google Summer of Code 2020. I’m really thankful to my mentors for reviewing my PRs and always supporting me. There were times when I felt like things were getting out of control because of the big scope of this project, but Nikhil called out a meeting to discuss things with me, that was nice! Thanks SymPy and Google for this amazing experience.