[petsc-users] How to set L1 norm as the converge test?

Jed Brown jed at jedbrown.org
Wed Sep 24 14:54:08 CDT 2014

Matthew Knepley <knepley at gmail.com> writes:

> On Wed, Sep 24, 2014 at 2:31 PM, Barry Smith <bsmith at mcs.anl.gov> wrote:
>>   Brian,
>>     Your convergence test routine could call KSPBuildResidual() and then
>> compute the 1-norm of the residual and make any decision it likes based on
>> that norm.  See KSPSetConvergenceTest()
> Note that what Barry is saying is that the convergence theory for CG
> guarantees monotonicity in the energy (A) norm, but says nothing
> about L1 so you might get crap.

Moreover, if you have an overdetermined linear system, but want to
minimize the 1-norm of the residual (instead of the 2-norm that least
squares minimizes), you are actually asking to solve a "linear program"
and need to use an LP solver (a very different algorithm).

If you merely watch the 1-norm of the residual, it might increase as the
least squares solver converges.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 818 bytes
Desc: not available
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20140924/e209cafb/attachment-0001.pgp>

More information about the petsc-users mailing list