[petsc-users] CG with right preconditioning supports NONE norm type only
Barry Smith
bsmith at mcs.anl.gov
Wed Mar 8 16:55:51 CST 2017
A proposed fix https://bitbucket.org/petsc/petsc/pull-requests/645/do-not-assume-that-all-ksp-methods-support
Needs Jed's approval.
Barry
> On Mar 8, 2017, at 10:33 AM, Barry Smith <bsmith at mcs.anl.gov> wrote:
>
>
> Please tell us how you got this output.
>
> PETSc CG doesn't even implement right preconditioning. If you ask for it it should error out. CG supports no norm computation with left preconditioning.
>
> Barry
>
>> On Mar 8, 2017, at 10:26 AM, Kong, Fande <fande.kong at inl.gov> wrote:
>>
>> Hi All,
>>
>> The NONE norm type is supported only when CG is used with a right preconditioner. Any reason for this?
>>
>>
>>
>> 0 Nonlinear |R| = 1.732051e+00
>> 0 Linear |R| = 0.000000e+00
>> 1 Linear |R| = 0.000000e+00
>> 2 Linear |R| = 0.000000e+00
>> 3 Linear |R| = 0.000000e+00
>> 4 Linear |R| = 0.000000e+00
>> 5 Linear |R| = 0.000000e+00
>> 6 Linear |R| = 0.000000e+00
>> 1 Nonlinear |R| = 1.769225e-08
>> 0 Linear |R| = 0.000000e+00
>> 1 Linear |R| = 0.000000e+00
>> 2 Linear |R| = 0.000000e+00
>> 3 Linear |R| = 0.000000e+00
>> 4 Linear |R| = 0.000000e+00
>> 5 Linear |R| = 0.000000e+00
>> 6 Linear |R| = 0.000000e+00
>> 7 Linear |R| = 0.000000e+00
>> 8 Linear |R| = 0.000000e+00
>> 9 Linear |R| = 0.000000e+00
>> 10 Linear |R| = 0.000000e+00
>> 2 Nonlinear |R| = 0.000000e+00
>> SNES Object: 1 MPI processes
>> type: newtonls
>> maximum iterations=50, maximum function evaluations=10000
>> tolerances: relative=1e-08, absolute=1e-50, solution=1e-50
>> total number of linear solver iterations=18
>> total number of function evaluations=23
>> norm schedule ALWAYS
>> SNESLineSearch Object: 1 MPI processes
>> type: bt
>> interpolation: cubic
>> alpha=1.000000e-04
>> maxstep=1.000000e+08, minlambda=1.000000e-12
>> tolerances: relative=1.000000e-08, absolute=1.000000e-15, lambda=1.000000e-08
>> maximum iterations=40
>> KSP Object: 1 MPI processes
>> type: cg
>> maximum iterations=10000, initial guess is zero
>> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.
>> right preconditioning
>> using NONE 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.25
>> 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 Gaussian-elimination
>> HYPRE BoomerAMG: Relax weight (all) 1.
>> HYPRE BoomerAMG: Outer relax weight (all) 1.
>> HYPRE BoomerAMG: Using CF-relaxation
>> HYPRE BoomerAMG: Not using more complex smoothers.
>> HYPRE BoomerAMG: Measure type local
>> HYPRE BoomerAMG: Coarsen type Falgout
>> HYPRE BoomerAMG: Interpolation type classical
>> linear system matrix followed by preconditioner matrix:
>> Mat Object: 1 MPI processes
>> type: mffd
>> rows=9, cols=9
>> Matrix-free approximation:
>> err=1.49012e-08 (relative error in function evaluation)
>> Using wp compute h routine
>> Does not compute normU
>> Mat Object: () 1 MPI processes
>> type: seqaij
>> rows=9, cols=9
>> total: nonzeros=49, allocated nonzeros=49
>> total number of mallocs used during MatSetValues calls =0
>> not using I-node routines
>>
>> Fande,
>>
>
More information about the petsc-users
mailing list