[petsc-users] PC HYPRE BoomerAMG options for nodal

Barry Smith bsmith at mcs.anl.gov
Tue Feb 14 13:06:31 CST 2017


> On Feb 14, 2017, at 12:38 PM, Bernardo Rocha <bernardomartinsrocha at gmail.com> wrote:
> 
> Dear Petsc users,
> 
> I would like to use BoomerAMG preconditioner for a system of PDEs, but we are interested in setting some of BoomerAMG options to use the nodal systems coarsening.
> 
> From the HYPRE/BoomerAMG manual, I found out that I have to use the following functions:
> HYPRE_BoomerAMGSetNodal

     ierr = PetscOptionsInt("-pc_hypre_boomeramg_nodal_coarsen","Use a nodal based coarsening 1-6","HYPRE_BoomerAMGSetNodal",jac->nodal_coarsening, &jac->nodal_coarsening,&flg);CHKERRQ(ierr);
  if (flg) {
    PetscStackCallStandard(HYPRE_BoomerAMGSetNodal,(jac->hsolver,jac->nodal_coarsening));
  }

> HYPRE_BoomerAMGSetNumFunctions

   Set the block size of the matrix; this information is then transferred automatically to hypre.  Note that you can set a block size even for AIJ matrices.


> HYPRE_BoomerAMGSetDofFunc 

   I could not find an indication of that this is suppose to be setting; it is mentioned in the users manual but I don't know what it means. It looks like it takes an integer array but I don't even know how long that array is. 

   If you figure out what it means and can add support for it we'll take it as a pull request.

   barry

> 
> Looking at the source code (src/ksp/pc/impls/hypre/hypre.c) I've found the call to the first one, but not for the other two, where I must specify the ordering of my dofs in my problem.
> 
> I would appreciate any help on this.
> 
> Best regards,
> Bernardo



More information about the petsc-users mailing list