Week 9
Finishing Phase 2 …. Hello everyone, hope this blog finds you well.
As the project is reaching towards the end of phase 2, my task for the past week was to address any comments or open reviews on my pull requests. I had discussions regarding how we were going to proceed with the controls plot implementations. Now we have a bunch of open pull requests at our hands and our aim is to get them into the codebase one by one.
Aim :
This week I made a pull request for unwrapping the phase in the bode plot implementation. It can be viewed here.
I also opened an issue to decide whether we should push code for the Nyquist Plot which I have already prepared.
Work : Let us go through the Pull Requests in brief.
-
Phase Unwrapping
:Before
After -
Nyquist Plot
:
I have implemented the Nyquist Plot. As of now, Sympy’s plotting module is not competent enough to replace the requirement of Matplotlib, I raised #25471.The Nyquist plots for
system = TransferFunction(2*s**2 + 5*s + 1, s**2 + 2*s + 3, s)
is:As you can see here, we will require support for Scatter Plot and Arrows within the Sympy plotting module. According to @moorepants comment here, we should not depend upon Matplotlib for these features.
Future Work :
This marks the end of phase 2 from my end. Now we only need to polish the work and send in pull requests as soon as we figure out the issues.
From next week onwards I would shift to Phase 3 work where I will work on State Space Models. The initial few days I will be focussing on learning about State Space Models through course textbooks and online lectures. This will be followed by the implementation.