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

Systems-theoretical MOR methods #464

Merged
merged 386 commits into from Nov 21, 2018

Conversation

Projects
None yet
5 participants
@pmli
Copy link
Member

pmli commented Sep 17, 2018

Recent changes are mostly about simplifying the code. One notable change is the separation of LTISystem.norm into LTISystem.h2_norm, LTISystem.hinf_norm, and LTISystem.hankel_norm. Now it's more clear that the only "bad" functions in LTISystem are poles and hinf_norm, in the sense that they both need access to matrix data and they use algorithms of cubic complexity. Both of them now have force_dense argument, but there might be a better way of informing the user that these functions are "bad"...

pmli added some commits May 25, 2016

[discretizations.iosys] turn D and E from None to Operators
- force_stability -> force_sigma_in_rhp
- some improvements
[discretizations.iosys] separate Gramian type
- type to type, subtype, parameter
[discretizations.iosys] separate operators
No more operators dict in LTISystem, now (ss|si|os|oi)_operators dicts.
@sdrave

This comment has been minimized.

Copy link
Member

sdrave commented Nov 16, 2018

Hi @pmli, I'm back at office, and looking at this PR is scheduled for Monday. Since this PR is open for a while: is there anything I should be aware of or is this ready to be merged?

@pmli

This comment has been minimized.

Copy link
Member Author

pmli commented Nov 16, 2018

Hi @sdrave! There are a few things I can remember now which should be considered:

  • how to mark poles and hinf_norm functions in discretizations.iosys as "bad",
  • can _is_like_zero_operator and _is_like_identity_operator functions in discretizations.iosys be improved,
  • how ShiftedSecondOrderOperator is handled in BlockDiagonalOperator.assemble_lincomb.
@sdrave
Copy link
Member

sdrave left a comment

This is all looking very nice! Maybe we can manage to merge this by the end of the week? Most of my remarks are only minor issues. I will open a few additional issues for stuff to be done after the merge.

Show resolved Hide resolved src/pymor/algorithms/gram_schmidt.py
Show resolved Hide resolved src/pymor/algorithms/sylvester.py
Show resolved Hide resolved src/pymor/algorithms/sylvester.py
Show resolved Hide resolved src/pymor/bindings/pymess.py Outdated
Show resolved Hide resolved src/pymor/bindings/pymess.py Outdated
Show resolved Hide resolved src/pymor/reductors/sobt.py
Show resolved Hide resolved src/pymor/reductors/sobt.py
Show resolved Hide resolved src/pymor/reductors/sor_irka.py
Show resolved Hide resolved src/pymor/vectorarrays/block.py Outdated
Show resolved Hide resolved src/pymor/vectorarrays/block.py Outdated
@codecov

This comment has been minimized.

Copy link

codecov bot commented Nov 19, 2018

Codecov Report

Merging #464 into master will decrease coverage by 0.22%.
The diff coverage is 70.19%.

Impacted Files Coverage Δ
src/pymor/algorithms/to_matrix.py 100% <ø> (ø) ⬆️
src/pymor/reductors/residual.py 70.34% <ø> (ø) ⬆️
src/pymor/algorithms/gram_schmidt.py 97.87% <ø> (ø) ⬆️
src/pymor/operators/numpy.py 80.51% <100%> (+3.31%) ⬆️
src/pymor/algorithms/arnoldi.py 11.11% <11.11%> (ø)
src/pymor/operators/block.py 66.04% <53.28%> (-8.25%) ⬇️
src/pymor/reductors/bt.py 53.9% <53.9%> (ø)
src/pymor/core/config.py 89.04% <57.14%> (-3.39%) ⬇️
src/pymor/discretizations/iosys.py 64.41% <64.41%> (ø)
src/pymor/reductors/h2.py 65.56% <65.56%> (ø)
... and 27 more
@sdrave

sdrave approved these changes Nov 21, 2018

@sdrave

This comment has been minimized.

Copy link
Member

sdrave commented Nov 21, 2018

Ok, so shall we go ahead and hit the merge button?

@pmli

This comment has been minimized.

Copy link
Member Author

pmli commented Nov 21, 2018

Ok, issue #478 is a bit tricky, I agree we should work on it after merging this.

@sdrave

This comment has been minimized.

Copy link
Member

sdrave commented Nov 21, 2018

So, let's do this!

@sdrave sdrave merged commit 246c71f into master Nov 21, 2018

4 checks passed

continuous-integration/appveyor/branch AppVeyor build succeeded
Details
continuous-integration/appveyor/pr AppVeyor build succeeded
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
continuous-integration/travis-ci/push The Travis CI build passed
Details

@sdrave sdrave deleted the sys-mor branch Nov 21, 2018

@sdrave sdrave referenced this pull request Nov 21, 2018

Closed

Merge sys-mor into master #412

3 of 3 tasks complete

@pmli pmli added the sys-mor label Jan 19, 2019

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