-
Notifications
You must be signed in to change notification settings - Fork 116
Moebius Transform Operator and Tustin's method for LTI-Systems #1614
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Codecov Report
|
c458e48
to
14a204b
Compare
Hey @artpelling it looks like this PR touches our CI config (and you are not in my contributor safelist), therefore I am not starting a gitlab-ci build for it and it will not be mergeable. |
Hey @artpelling it looks like this PR touches our CI config (and you are not in my contributor safelist), therefore I am not starting a gitlab-ci build for it and it will not be mergeable. |
I have somehow messed up the history again. @pmli if you are okay with the current state, I can rebase on main, squash everything into one commit and convert this to a non-draft PR. |
Rebasing would also make it easier to review. You don't have to squash it into one commit, e.g., using one commit per file changed would make the git history nicer (also, we often use git commit messages of the form |
cff0d12
to
429a78a
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It looks to me to be in a good shape. What is left are docstrings and some unit tests.
b5e2427
to
2bbf866
Compare
I renamed |
It would be good to add tests for Moebius transformations and maybe also for Also, now that it's settled that these transformations are not |
22c5c0a
to
1b597c4
Compare
Hey @artpelling it looks like this PR touches our CI config (and you are not in my contributor safelist), therefore I am not starting a gitlab-ci build for it and it will not be mergeable. |
22c5c0a
to
aa5e13e
Compare
Hey @artpelling it looks like this PR touches our CI config (and you are not in my contributor safelist), therefore I am not starting a gitlab-ci build for it and it will not be mergeable. |
1 similar comment
Hey @artpelling it looks like this PR touches our CI config (and you are not in my contributor safelist), therefore I am not starting a gitlab-ci build for it and it will not be mergeable. |
Hey @artpelling it looks like this PR touches our CI config (and you are not in my contributor safelist), therefore I am not starting a gitlab-ci build for it and it will not be mergeable. |
I've add you to the safelist now @artpelling , so this message should disappear with the next push/commit. |
Co-authored-by: Petar Mlinarić <petar.mlinaric@gmail.com>
Co-authored-by: Petar Mlinarić <petar.mlinaric@gmail.com>
fcc7988
to
a61db8a
Compare
…perator" This reverts commit f525e4b.
@artpelling, the problem with the failing test was that you are not allowed to call Further I have reverted your streamlined version of the matrix-matrix products as it seems to neglect one optimization for sparse-dense products. |
I have this code here that I would like to integrate in order to have Bilinear Transformations of LTI-systems similarly to Matlabs
c2d
andd2c
commands. So far I have implemented Tustin's method and I am looking to extend this to higher order approximations in the future.I am particularly interested in arbitrary Moebius substitutions of the frequency argument (not only the bilinear transformation) which is why I chose a more functional approach and implemented a
MoebiusTransform
operator directly. Maybe this can be used elsewhere in the future (I have added the CayleyTransform as an inspiration).I would love to get some feedback, IMO the method
LTIModel.moebius_substitution
could use some improvement in both naming and the code. The method substitutes the frequency argumentomega
by a MoebiusTransform (please see https://ieeexplore.ieee.org/document/489281/ for reference). I feel like I am not using pyMORs structure optimally in the current implementation.The docstrings are sparse and sketchy, I will obviously add proper ones and tests at a later stage.