MATLAB Answers

Solving large sparse Ax=b with lower bound constraint

2 views (last 30 days)
Uanite
Uanite on 11 Apr 2020
Commented: Uanite on 19 Apr 2020
I'm having some issues with some forward modelling I'm doing - im doing a forward model in a loop and currently solving an Ax=b system using a conjugate gradient least squares method (code from https://web.stanford.edu/group/SOL/software/cgls/).
My problem is that this solution is unconstrained, and so the solution converges close to the answer I expect, but has values outside permitted bounds still. If my constraint is say x >= c (c is a vector), is there a matlab inbuilt function that can do this?? I've tried lsqlin(A,b,[],[],[],[],c,[]) rather than the cgls function linked above, but the model no longer converges to a result that is even remotely correct.

  0 Comments

Sign in to comment.

Accepted Answer

Torsten
Torsten on 11 Apr 2020
Did you try starting from the solution of the unconstraint problem ?

  1 Comment

Uanite
Uanite on 19 Apr 2020
Somehow missed that option, yep that helped it converge!

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by