Skip to content

Comments

Add Interactive Root Locus GUI with High-Resolution Catmull-Rom Interpolation#1175

Closed
AndrewTrepagnier wants to merge 6 commits intopython-control:mainfrom
AndrewTrepagnier:main
Closed

Add Interactive Root Locus GUI with High-Resolution Catmull-Rom Interpolation#1175
AndrewTrepagnier wants to merge 6 commits intopython-control:mainfrom
AndrewTrepagnier:main

Conversation

@AndrewTrepagnier
Copy link

@AndrewTrepagnier AndrewTrepagnier commented Jul 26, 2025

No description provided.

- Add RootLocusGUI class for interactive matplotlib-based root locus plots
- Implement hover detection to show gain, damping, and frequency information
- Use original root locus plotting style with small info box overlay
- Add comprehensive tests and documentation
- Include simple example demonstrating usage
- Integrate with main control namespace via interactive module

This provides a more intuitive hover-based interaction compared to the
existing click-based functionality, while maintaining the familiar
matplotlib plot appearance.
- Implement RootLocusGUI class with matplotlib-based interactive plotting
- Add green dot cursor marker with linear interpolation for smooth movement
- Use wide default limits (-5,2)x(-3,3) and large distance threshold (10.0)
- Include real-time gain, damping, and frequency display
- Add comprehensive test suite (17 tests passing)
- Add complex system example demonstrating multiple asymptotes
@ilayn
Copy link

ilayn commented Jul 26, 2025

It seems like the whole thing is written with AI and it gets wackier towards the end dummy functions returning classes, 10k resolution points etc. User's profile is also not instilling trust if I have to be honest. I guess this is the new world as promised.

@AndrewTrepagnier
Copy link
Author

Ilayn, I am sorry you feel that way about my additions, I am relatively new to GitHub and still trying to learn through open sourcing and collaborating. The 10k resolution can absolutely be changed, however I found this gave extremely smooth lookup tables for the root locus gains. What can I change to make this a better addition to the package?

@ilayn
Copy link

ilayn commented Jul 27, 2025

Don't mind me. I have been dealing with tons of AI submissions lately, I just don't know what to make of them yet.

@murrayrm
Copy link
Member

Quick comments on the failing unit tests:

  • Ruff checks are self explanatory (see the error log) and should be quick to fix
  • For the keyword check (kwargs_test.py), you need to make sure that if a bad keyword is passed, this generates an error message. Once you have a unit test that covers that, you can specify it in the unit test file.

@AndrewTrepagnier
Copy link
Author

Thank you, I will work on this!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants