Solving large sparse Ax=b with lower bound constraint

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.

 Accepted Answer

Did you try starting from the solution of the unconstraint problem ?

1 Comment

Somehow missed that option, yep that helped it converge!

Sign in to comment.

More Answers (0)

Asked:

on 11 Apr 2020

Commented:

on 19 Apr 2020

Community Treasure Hunt

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

Start Hunting!