[petsc-users] questions on hypre preconditioner
Barry Smith
bsmith at mcs.anl.gov
Sat Sep 10 11:58:14 CDT 2016
> On Sep 10, 2016, at 11:39 AM, Fande Kong <fdkong.jd at gmail.com> wrote:
>
> Thanks, Barry.
>
>
> On Mon, Sep 5, 2016 at 11:26 AM, Barry Smith <bsmith at mcs.anl.gov> wrote:
>
> > On Sep 5, 2016, at 11:21 AM, Fande Kong <fdkong.jd at gmail.com> wrote:
> >
> > Hi Developers,
> >
> > There are two questions on the hypre preconditioner.
> >
> > (1) How to set different relax types on different levels? It looks to use the SAME relax type on all levels except the coarse level which we could set it to a different solver. Especially, could I set the smoother type on the finest level as NONE?
>
> I don't think this is possible through the PETSc interface; it may or may not be possible by adding additional hypre calls. You need to check the hypre documentation.
>
> I already took a look into the hypre code. It is not easy to change. But there is a way to do that. I already figured out a way to extract interpolation, restriction and coarse operators from hypre. I could construct any algorithms I want with these operators.
>
> The question is: any existing ways to convert a parallel hypre matrix to a petsc Mat, and the same operations for vectors?
In the PETSc hypre interface we go the other direction; it is a little hacky in order to be efficient. So look at that code and it may be possible from that to do the mapping in the other direction.
Barry
>
>
> >
> > (2) How could I know how many levels have been actually created in hypre, and how many unknowns on different levels? The "-pc_view" can not tell me this information:
>
> -pc_hypre_boomeramg_print_statistics integer different integers give different amounts of detail, I don't know what the integers mean.
>
> we could get all information by extracting data from hypre_solver.
>
> Fande,
>
>
>
>
>
> >
> > 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: Measure type local
> > HYPRE BoomerAMG: Coarsen type Falgout
> > HYPRE BoomerAMG: Interpolation type classical
> > linear system matrix = precond matrix:
> >
> >
> >
> > Fande,
More information about the petsc-users
mailing list