Skip to content

Commit

Permalink
ρ scaling check from 2nd iteration
Browse files Browse the repository at this point in the history
  • Loading branch information
spinicist committed May 16, 2023
1 parent 822f176 commit aa1ad9b
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions src/algo/admm.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ auto ADMM::run(Cx *bdata, float ρ) const -> Vector
float pNorm = 0.f, dNorm = 0.f, normz = 0.f, normu = 0.f;
for (Index ir = 0; ir < R; ir++) {
Fx[ir] = reg_ops[ir]->forward(x);
Fxpu[ir] = Fx[ir] * α + z[ir] * (1.f - α) + u[ir];
Fxpu[ir] = Fx[ir] * α - z[ir] * (α - 1.f) + u[ir];
zold[ir] = z[ir];
prox[ir]->apply(1.f / ρ, Fxpu[ir], z[ir]);
u[ir] = Fxpu[ir] - z[ir];
Expand Down Expand Up @@ -111,7 +111,7 @@ auto ADMM::run(Cx *bdata, float ρ) const -> Vector
Log::Print("All primal and dual tolerances achieved, stopping");
break;
}
if (io > 1) { // z_0 is zero, so perfectly reasonable dual residuals can trigger this
if (io > 0) { // z_0 is zero, so perfectly reasonable dual residuals can trigger this
if (pNorm > μ * dNorm) {
ρ *= τ;
for (Index ir = 0; ir < R; ir++) {
Expand Down

0 comments on commit aa1ad9b

Please sign in to comment.