Skip to content

Implemement lft (Linear Fractional Transform) for state-space systems#245

Merged
murrayrm merged 5 commits intopython-control:masterfrom
hungpham2511:master
Apr 7, 2019
Merged

Implemement lft (Linear Fractional Transform) for state-space systems#245
murrayrm merged 5 commits intopython-control:masterfrom
hungpham2511:master

Conversation

@hungpham2511
Copy link
Copy Markdown
Contributor

The lft interconnection is implemented. Some test cases, which are generated using matlab's lft functionality, are also included.

@coveralls
Copy link
Copy Markdown

Coverage Status

Coverage increased (+0.2%) to 79.113% when pulling 084727c on hungpham2511:master into 4b0101c on python-control:master.

5 similar comments
@coveralls
Copy link
Copy Markdown

Coverage Status

Coverage increased (+0.2%) to 79.113% when pulling 084727c on hungpham2511:master into 4b0101c on python-control:master.

@coveralls
Copy link
Copy Markdown

Coverage Status

Coverage increased (+0.2%) to 79.113% when pulling 084727c on hungpham2511:master into 4b0101c on python-control:master.

@coveralls
Copy link
Copy Markdown

Coverage Status

Coverage increased (+0.2%) to 79.113% when pulling 084727c on hungpham2511:master into 4b0101c on python-control:master.

@coveralls
Copy link
Copy Markdown

Coverage Status

Coverage increased (+0.2%) to 79.113% when pulling 084727c on hungpham2511:master into 4b0101c on python-control:master.

@coveralls
Copy link
Copy Markdown

Coverage Status

Coverage increased (+0.2%) to 79.113% when pulling 084727c on hungpham2511:master into 4b0101c on python-control:master.

@coveralls
Copy link
Copy Markdown

coveralls commented Nov 14, 2018

Coverage Status

Coverage increased (+0.2%) to 78.424% when pulling 5955fd2 on hungpham2511:master into bcf5382 on python-control:master.

@hungpham2511
Copy link
Copy Markdown
Contributor Author

Error on testLQR.py. Strange, since the PR does not even touch this part of the code base.

The error, which is reported below, seems similar the error observed in PR #242

======================================================================
ERROR: testLQR (control.tests.matlab_test.TestMatlab)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/travis/build/python-control/python-control/control/tests/matlab_test.py", line 418, in testLQR
    np.eye(1), [[1], [1], [2]])
  File "/home/travis/build/python-control/python-control/control/statefbk.py", line 325, in lqr
    X,rcond,w,S,U,A_inv = sb02md(nstates, A_b, G, Q_b, 'C')
  File "/home/travis/miniconda/envs/test-environment/lib/python3.5/site-packages/slycot/synthesis.py", line 350, in sb02md
    raise e
ValueError: the Hamiltonian or symplectic matrix H has less than n stable eigenvalues

Copy link
Copy Markdown
Member

@murrayrm murrayrm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some small suggestions for improvements.

This PR seems to have pulled in some other PRs => we may see an issue when merging...

"""Return the Linear Fractional Transformation.

See definition here:
https://www.mathworks.com/help/control/ref/lft.html
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we reference a textbook or some other more "definitive" source for the definition of LFT?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A definition can be found in the Appendix of Skogestad's Multivariable Feedback Control.

@murrayrm
Copy link
Copy Markdown
Member

murrayrm commented Jan 4, 2019

@hungpham2511 Can you rebase this against the current master and also address comments above?

@hungpham2511
Copy link
Copy Markdown
Contributor Author

hungpham2511 commented Jan 4, 2019 via email

@murrayrm murrayrm added this to the 0.8.2 milestone Apr 7, 2019
@murrayrm murrayrm merged commit 3738718 into python-control:master Apr 7, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants