[petsc-users] having issues with nullspace

Matthew Knepley knepley at gmail.com
Thu Mar 6 17:57:30 CST 2014


On Thu, Mar 6, 2014 at 5:49 PM, Mohammad Mirzadeh <mirzadeh at gmail.com>wrote:

> Matt,
>

1) Use -ksp_monitor_true_residual

2) Quit using Hypre. It can easily get rank deficient stuff on its coarse
grid, which throws off this analysis.
    Use SOR if it converges, otherwise use -pc_type svd

   Matt


>
>
here's the output:
>
>   0 KSP Residual norm 3.033840960250e+02
>
>   1 KSP Residual norm 1.018974811826e+01
>
>   2 KSP Residual norm 5.450493684941e-02
>
>   3 KSP Residual norm 3.944064039516e-02
>
>   4 KSP Residual norm 6.286181172600e-05
>
>   5 KSP Residual norm 4.349133658643e-06
>
>   6 KSP Residual norm 9.279429568232e-08
>
>   7 KSP Residual norm 3.032522248740e-09
>
>   8 KSP Residual norm 6.533747246875e-09
>
>   9 KSP Residual norm 6.083185162500e-12
>
> Linear solve converged due to CONVERGED_RTOL iterations 9
>
> KSP Object: 1 MPI processes
>
>   type: bcgs
>
>   maximum iterations=10000, initial guess is zero
>
>   tolerances:  relative=1e-12, absolute=1e-50, divergence=10000
>
>   left preconditioning
>
>   has attached null space
>
>   using PRECONDITIONED norm type for convergence test
>
> PC Object: 1 MPI processes
>
>   type: hypre
>
>     HYPRE BoomerAMG preconditioning
>
>     HYPRE BoomerAMG: Cycle type V
>
>     HYPRE BoomerAMG: Maximum number of levels 25
>
>     HYPRE BoomerAMG: Maximum number of iterations PER hypre call 1
>
>     HYPRE BoomerAMG: Convergence tolerance PER hypre call 0
>
>     HYPRE BoomerAMG: Threshold for strong coupling 0.5
>
>     HYPRE BoomerAMG: Interpolation truncation factor 0
>
>     HYPRE BoomerAMG: Interpolation: max elements per row 0
>
>     HYPRE BoomerAMG: Number of levels of aggressive coarsening 0
>
>     HYPRE BoomerAMG: Number of paths for aggressive coarsening 1
>
>     HYPRE BoomerAMG: Maximum row sums 0.9
>
>     HYPRE BoomerAMG: Sweeps down         1
>
>     HYPRE BoomerAMG: Sweeps up           1
>
>     HYPRE BoomerAMG: Sweeps on coarse    1
>
>     HYPRE BoomerAMG: Relax down          symmetric-SOR/Jacobi
>
>     HYPRE BoomerAMG: Relax up            symmetric-SOR/Jacobi
>
>     HYPRE BoomerAMG: Relax on coarse     symmetric-SOR/Jacobi
>
>     HYPRE BoomerAMG: Relax weight  (all)      1
>
>     HYPRE BoomerAMG: Outer relax weight (all) 1
>
>     HYPRE BoomerAMG: Using CF-relaxation
>
>     HYPRE BoomerAMG: Measure type        local
>
>     HYPRE BoomerAMG: Coarsen type        Falgout
>
>     HYPRE BoomerAMG: Interpolation type  classical
>
>   linear system matrix = precond matrix:
>
>   Mat Object:   1 MPI processes
>
>     type: seqaij
>
>     rows=263169, cols=263169
>
>     total: nonzeros=1236141, allocated nonzeros=1244417
>
>     total number of mallocs used during MatSetValues calls =0
>
>       has attached null space
>
>       not using I-node routines
>
>
>
>
> On Thu, Mar 6, 2014 at 3:43 PM, Jed Brown <jed at jedbrown.org> wrote:
>
>> Mohammad Mirzadeh <mirzadeh at gmail.com> writes:
>>
>> > Yes. To be precise this is the set of functions I call:
>> >
>> > ierr = MatNullSpaceCreate(mpicomm, PETSC_FALSE, 1, &null_space,
>> > &A_null_space); CHKERRXX(ierr);
>> >
>> > ierr = MatSetNullSpace(A, A_null_space); CHKERRXX(ierr);
>> >
>> > ierr = KSPSetNullSpace(ksp, A_null_space); CHKERRXX(ierr);
>> >
>> > ierr = MatNullSpaceRemove(A_null_space, rhs_, NULL); CHKERRXX(ierr);
>>
>> Is the matrix symmetric?  If not, the right and left null spaces could
>> be different, in which case this system might be inconsistent.
>>
>
>


-- 
What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to which their
experiments lead.
-- Norbert Wiener
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20140306/6826c894/attachment-0001.html>


More information about the petsc-users mailing list