Geoffrey Irving <[email protected]> writes:
> Here are results with -ksp_monitor_true_residual -pc_type none:
>
>     http://naml.us/random/laplace-rtol.txt # with -ksp_rtol 1e-5
>     http://naml.us/random/laplace-atol.txt # with -ksp_atol 1e-5

Looks like the preconditioner is singular.

> Both versions converge in 3 iterations for the first SNES iteration,
> but the relative one starts to churn after that since the residual
> starts very small.  The true residual goes down to 4/3 and stagnates.
> Is there a convenient way to print out the RHS to see whether it has a
> component in the nullspace (which seems likely given the true residual
> stagnation)?

-snes_monitor_residual will plot the solution.  (This option should be
 upgraded to support arbitrary output formats.)  You can also call
 VecView from your residual function.  

> I suppose I already do print the result of SNESComputeFunction on the
> zero vec, which is
>
>     RHS = [  6.66666667e-01   1.33333333e+00   6.66666667e-01   
> 1.11022302e-16]

Looks like you need to project out the null space.

Attachment: pgpg7YpMwITMO.pgp
Description: PGP signature

Reply via email to