Title: create_statefbk_iosystem and optimal control enhancements by murrayrm · Pull Request #930 · python-control/python-control · GitHub
Open Graph Title: create_statefbk_iosystem and optimal control enhancements by murrayrm · Pull Request #930 · python-control/python-control
X Title: create_statefbk_iosystem and optimal control enhancements by murrayrm · Pull Request #930 · python-control/python-control
Description: This PR has two primary changes. motivated by some debugging I was doing in #929: The create_statefbk_iosystem function now allows you to pass an I/O system instead of the a gain (or gain schedule) for the controller. This allows a more general state feedback controller (like an MPC controller) to be created using create_statefbk_iosystem. (I needed this so that I could gain easy access to the inputs in issue #929, since the feedback function does not pass through the controller inputs as a system output, but create_statefbk_iosystem does.) The create_mpc_iosystem function now properly allows keyword parameters that go to the underlying OptimalControlProblem, for example setting the minimization method. Prior to this, the keyword parameters were passed to OptimalControlProblem but were also passed to NonlinearIOSystem, where they would generate an error. Unit tests and documentation updated as well. More specifically, the documentation for the solve_ocp function has been updated to make more clear how the final time point is handled (see issue #929 for some discussion on this). Had to modify the install_examples.yml workflow to explicitly include the latest python version, otherwise an early version of matplotlib got installed that was not current enough to work with current code (not sure why this was suddenly required...).
Open Graph Description: This PR has two primary changes. motivated by some debugging I was doing in #929: The create_statefbk_iosystem function now allows you to pass an I/O system instead of the a gain (or gain schedule...
X Description: This PR has two primary changes. motivated by some debugging I was doing in #929: The create_statefbk_iosystem function now allows you to pass an I/O system instead of the a gain (or gain schedule...
Opengraph URL: https://github.com/python-control/python-control/pull/930
X: @github
Domain: github.com
| route-pattern | /:user_id/:repository/pull/:id/checks(.:format) |
| route-controller | pull_requests |
| route-action | checks |
| fetch-nonce | v2:a345509a-910c-c9d2-a3e3-c4201b7d1eed |
| current-catalog-service-hash | 87dc3bc62d9b466312751bfd5f889726f4f1337bdff4e8be7da7c93d6c00a25a |
| request-id | 9F6E:1F4DB9:1E1ACD3:2869083:697AAD75 |
| html-safe-nonce | 22fc9190b985284ee04bc67ab5c39842011ca242984a00d71a5c7a914d6011a5 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI5RjZFOjFGNERCOToxRTFBQ0QzOjI4NjkwODM6Njk3QUFENzUiLCJ2aXNpdG9yX2lkIjoiMzAyNzQwMjc2OTQ1NjM0NDQzNyIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9 |
| visitor-hmac | 31bf2608cff5c90ac874303632dcaeecfd81b4c9b5438e18daca36a88efe484a |
| hovercard-subject-tag | pull_request:1509314754 |
| github-keyboard-shortcuts | repository,pull-request-list,pull-request-conversation,pull-request-files-changed,checks,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/python-control/python-control/pull/930/checks |
| twitter:image | https://avatars.githubusercontent.com/u/293362?s=400&v=4 |
| twitter:card | summary_large_image |
| og:image | https://avatars.githubusercontent.com/u/293362?s=400&v=4 |
| og:image:alt | This PR has two primary changes. motivated by some debugging I was doing in #929: The create_statefbk_iosystem function now allows you to pass an I/O system instead of the a gain (or gain schedule... |
| og:site_name | GitHub |
| og:type | object |
| hostname | github.com |
| expected-hostname | github.com |
| None | 33acda8ebf71b04c9d33b494d2b6e0db48193ec89eb3ad92a9539d491fa9a3da |
| turbo-cache-control | no-preview |
| go-import | github.com/python-control/python-control git https://github.com/python-control/python-control.git |
| octolytics-dimension-user_id | 2285872 |
| octolytics-dimension-user_login | python-control |
| octolytics-dimension-repository_id | 22791752 |
| octolytics-dimension-repository_nwo | python-control/python-control |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 22791752 |
| octolytics-dimension-repository_network_root_nwo | python-control/python-control |
| turbo-body-classes | logged-out env-production page-responsive full-width full-width-p-0 |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 4f714a84d3384e467839505ed65f968fc01aedf1 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width