Dear Barry et al, Thanks for that.
I've started a pull request for supporting VIs in SNESCOMPOSITE: https://bitbucket.org/petsc/petsc/pull-request/306/make-snescomposite-support-vis/diff This is mainly to start the discussion. In particular, (a) Do you want me to add a check to every SNESSolve_* that doesn't support bounds that no bounds are present? (b) Is there a writeup of what additiveoptimal actually does? I looked in the manual and in the SIAM Review paper and couldn't see a description anywhere. I think the coefficients in the least-squares problem need to be modified in light of the VI, but I'm not sure how. Cheerio, Patrick
