Skip to content
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

Move optimizers into optimize package #129

Merged
merged 18 commits into from
Dec 14, 2021
Merged

Move optimizers into optimize package #129

merged 18 commits into from
Dec 14, 2021

Conversation

bwohlberg
Copy link
Collaborator

Move optimizers into optimize package. Resolves #122.

Notes:

  • solvers not moved into optimize to avoid import loops
  • admm and pgm submodules are treated differently from _ladmm and _primaldual because they include auxiliary classes for which the retention of the submodule prefix is desirable, e.g. admm.LinearSubproblemSolver
  • class ADMM can be imported from either scico.optimize or scico.optimize.admm, and similarly for the PGM solver classes

@bwohlberg bwohlberg added the enhancement New feature or request label Dec 11, 2021
@codecov
Copy link

codecov bot commented Dec 11, 2021

Codecov Report

Merging #129 (f341f08) into main (4e88014) will increase coverage by 0.02%.
The diff coverage is 100.00%.

Impacted file tree graph

@@            Coverage Diff             @@
##             main     #129      +/-   ##
==========================================
+ Coverage   91.31%   91.34%   +0.02%     
==========================================
  Files          46       47       +1     
  Lines        3214     3223       +9     
==========================================
+ Hits         2935     2944       +9     
  Misses        279      279              
Flag Coverage Δ
unittests 91.34% <100.00%> (+0.02%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
scico/optimize/_ladmm.py 97.64% <ø> (ø)
scico/optimize/_primaldual.py 98.68% <ø> (ø)
scico/optimize/__init__.py 100.00% <100.00%> (ø)
scico/optimize/admm.py 95.21% <100.00%> (ø)
scico/optimize/pgm.py 94.81% <100.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 4e88014...f341f08. Read the comment docs.

Copy link
Contributor

@Michael-T-McCann Michael-T-McCann left a comment

Choose a reason for hiding this comment

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

Despite the slight awkwardness you mentioned around LinearSubproblemSolver, this looks like a significant improvement in clarify.

examples/scripts/ct_astra_tv_admm.py Outdated Show resolved Hide resolved
scico/optimize/pgm.py Outdated Show resolved Hide resolved
@bwohlberg bwohlberg merged commit ee49b85 into main Dec 14, 2021
@bwohlberg bwohlberg deleted the brendt/optimize branch December 14, 2021 02:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add optimize package
2 participants