Hi Stefano, thanks for your interest. Mainly, elliptic operators both in the context of methods in NS solvers and in the context of mesh deformation. I didn't think about AMG on each block. What I was thinking about is an AMG preconditioner aware about the variable size blocks. I hope it is clearer than before. Thanks,
Marco Cisternino, PhD marco.cistern...@optimad.it _______________________________ OPTIMAD Engineering srl Via Giacinto Collegno 18, Torino, Italia. +3901119719782 www.optimad.it ________________________________________ Da: Stefano Zampini <stefano.zamp...@gmail.com> Inviato: lunedì 28 ottobre 2019 17:09 A: Marco Cisternino Cc: petsc-users Oggetto: Re: [petsc-users] AMG Variable block preconditioner Marco, you should define what do you mean by "AMG block preconditioning"; separate AMG on each block? What operator do you plan to precondition? AFAIK, MatSetVariableBlockSizes is just exploited by the Jacobi solver . Thanks Stefano Il giorno lun 28 ott 2019 alle ore 19:05 Marco Cisternino via petsc-users <petsc-users@mcs.anl.gov<mailto:petsc-users@mcs.anl.gov>> ha scritto: Hello everybody. We would like to setup an algebraic multi-grid block preconditioner and I would like to be able to define custom blocks of variable sizes. Reading the documentation, it seems that this can be achieved using the "PCGAMG" preconditioner and defining the blocks with the function "MatSetVariableBlockSizes". Is this correct? Are the variable blocks exploited by PCGAMG algorithms? We suppose this PC structure is already exploited in PCVPBJACOBI. Are the different options like PCHYPRE (setting "-pc_hypre_type" to "boomeramg") suitable for AMG preconditioner with variable size blocks? If none of the above solutions are available, could anyone suggest any other strategy in order to get a preconditioner like this using PETSc? Any help is much appreciated. Thanks. Best regards, Marco Cisternino -- Stefano