MATLAB Answers

Solving large sparse Ax=b with lower bound constraint

3 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)