Skip to content

BlockOperator: added a function to return a list of norms and the ability to set this list of norms - #1513

Merged
MargaretDuff merged 24 commits into
TomographicImaging:masterfrom
MargaretDuff:blockoperator-norms
Nov 8, 2023
Merged

BlockOperator: added a function to return a list of norms and the ability to set this list of norms #1513
MargaretDuff merged 24 commits into
TomographicImaging:masterfrom
MargaretDuff:blockoperator-norms

Conversation

@MargaretDuff

@MargaretDuff MargaretDuff commented Oct 2, 2023

Copy link
Copy Markdown
Member

Describe your changes

BlockOperator.norms() lists the norms of each individual operator in the block, using the operator functions to either call the cached value or calculate it and cache the value. BlockOperator.set_norms() uses the set_norm function of each individual operator to set the cached value of the norm of the underlying operators.

Relevant unit tests have been added.

Describe any testing you have performed

Link relevant issues

Closes #1510

Checklist when you are ready to request a review

  • I have performed a self-review of my code
  • I have added docstrings in line with the guidance in the developer guide
  • I have implemented unit tests that cover any new or modified functionality
  • CHANGELOG.md has been updated with any functionality change
  • Request review from all relevant developers
  • Change pull request label to 'Waiting for review'

Contribution Notes

Please read and adhere to the developer guide and local patterns and conventions.

  • The content of this Pull Request (the Contribution) is intentionally submitted for inclusion in CIL (the Work) under the terms and conditions of the Apache-2.0 License.
  • I confirm that the contribution does not violate any intellectual property rights of third parties

@MargaretDuff MargaretDuff changed the title BlockOperator added a function to return a list of norms and the ability to set_norms BlockOperator: added a function to return a list of norms and the ability to set this list of norms Oct 2, 2023
@MargaretDuff

Copy link
Copy Markdown
Member Author

P.s. It might be worth thinking about issue #1484 at the same time or instead leaving it as a separate PR?

Comment thread Wrappers/Python/cil/optimisation/operators/BlockOperator.py Outdated
Comment thread Wrappers/Python/cil/optimisation/operators/BlockOperator.py Outdated
Comment thread Wrappers/Python/cil/optimisation/operators/BlockOperator.py Outdated
Comment thread Wrappers/Python/cil/optimisation/operators/BlockOperator.py Outdated
Comment thread Wrappers/Python/cil/optimisation/operators/BlockOperator.py Outdated
Comment thread Wrappers/Python/cil/optimisation/operators/BlockOperator.py Outdated
Comment thread Wrappers/Python/cil/optimisation/operators/BlockOperator.py Outdated

@jakobsj jakobsj left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Looks good to me!

Comment thread Wrappers/Python/cil/optimisation/operators/BlockOperator.py
Comment thread Wrappers/Python/cil/optimisation/operators/Operator.py Outdated
Comment thread Wrappers/Python/cil/optimisation/operators/BlockOperator.py
Comment thread Wrappers/Python/cil/optimisation/operators/BlockOperator.py Outdated
Comment thread Wrappers/Python/cil/optimisation/operators/BlockOperator.py
Comment thread Wrappers/Python/cil/optimisation/operators/BlockOperator.py Outdated

@paskino paskino left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Comment thread Wrappers/Python/cil/optimisation/operators/Operator.py Outdated
Comment thread Wrappers/Python/cil/optimisation/operators/BlockOperator.py Outdated

@gfardell gfardell left a comment

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.

Just docstring based comments, once they are done I'm happy.

Comment thread Wrappers/Python/cil/optimisation/operators/BlockOperator.py Outdated
Comment thread Wrappers/Python/cil/optimisation/operators/BlockOperator.py Outdated
Comment thread Wrappers/Python/cil/optimisation/operators/BlockOperator.py Outdated
Comment thread Wrappers/Python/cil/optimisation/operators/BlockOperator.py
Comment thread Wrappers/Python/cil/optimisation/operators/BlockOperator.py Outdated
Comment thread Wrappers/Python/cil/optimisation/operators/Operator.py
@MargaretDuff
MargaretDuff requested a review from gfardell November 7, 2023 16:40
Comment thread Wrappers/Python/cil/optimisation/operators/Operator.py Outdated
@MargaretDuff
MargaretDuff merged commit 72404e6 into TomographicImaging:master Nov 8, 2023
@MargaretDuff
MargaretDuff deleted the blockoperator-norms branch November 8, 2023 10:04
@MargaretDuff MargaretDuff mentioned this pull request Jan 10, 2024
8 tasks
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.

BlockOperator norms

5 participants