1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML3.2 EN">
<HTML>
<HEAD> <link rel="canonical" href="http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/PC/PCHMG.html" />
<META NAME="GENERATOR" CONTENT="DOCTEXT">
<TITLE>PCHMG</TITLE>
</HEAD>
<BODY BGCOLOR="FFFFFF">
<div id="version" align=right><b>petsc-3.14.5 2021-03-03</b></div>
<div id="bugreport" align=right><a href="mailto:petsc-maint@mcs.anl.gov?subject=Typo or Error in Documentation &body=Please describe the typo or error in the documentation: petsc-3.14.5 v3.14.5 docs/manualpages/PC/PCHMG.html "><small>Report Typos and Errors</small></a></div>
<A NAME="PCHMG"><H1>PCHMG</H1></A>
Hybrid of PETSc preconditioners (such as ASM, BJacobi, SOR, etc.) and Hypre BoomerAMG, GAMG or other multilevel methods. BoomerAMG, GAMG or other multilevel methods is used to coarsen matrix and generate a sequence of coarse matrices and interpolations. The matrices and interpolations are employed to construct <A HREF="../PC/PCMG.html#PCMG">PCMG</A>, and then any available PETSc preconditioners can be chosen as smoothers and the coarse solver.
<H3><FONT COLOR="#CC3333">Options Database Keys</FONT></H3>
<TABLE border="0" cellpadding="0" cellspacing="0">
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>-pc_hmg_reuse_interpolation <true | false> </B></TD><TD>- Whether or not to reuse the interpolations. If true, it potentially save the compute time.
</TD></TR>
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>-pc_hmg_use_subspace_coarsening <true | false> </B></TD><TD>- Whether or not to use subspace coarsening (that is, coarsen a submatrix).
</TD></TR>
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>-hmg_inner_pc_type <hypre, gamg, ...> </B></TD><TD>- What method is used to coarsen matrix
</TD></TR>
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>-pc_hmg_use_matmaij <true | false> </B></TD><TD>- Whether or not to use MatMAIJ for multicomponent problems for saving memory
</TD></TR></TABLE>
<P>
<P>
<H3><FONT COLOR="#CC3333">Notes</FONT></H3>
For multicomponent problems, we can just coarsen one submatrix associated with one particular component. In this way, the preconditioner setup
time is significantly reduced. One typical use case is neutron transport equations. There are many variables on each mesh vertex due to the
of angle and energy. Each variable, in fact, corresponds to the same PDEs but with different material properties.
<P>
<P>
Concepts: Hybrid of ASM and MG, Subspace Coarsening
<P>
<H3><FONT COLOR="#CC3333">References</FONT></H3>
<TABLE border="0" cellpadding="0" cellspacing="0">
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>1. </B></TD><TD>- Fande Kong, Yaqi Wang, Derek R Gaston, Cody J Permann, Andrew E Slaughter, Alexander D Lindsay, Richard C Martineau, A highly parallel multilevel
Newton-Krylov-Schwarz method with subspace-based coarsening and partition-based balancing for the multigroup neutron transport equations on
3D unstructured meshes, arXiv preprint arXiv:1903.03659, 2019
</TD></TR></TABLE>
<P>
<H3><FONT COLOR="#CC3333">See Also</FONT></H3>
<A HREF="../PC/PCCreate.html#PCCreate">PCCreate</A>(), <A HREF="../PC/PCSetType.html#PCSetType">PCSetType</A>(), <A HREF="../PC/PCType.html#PCType">PCType</A>, <A HREF="../PC/PC.html#PC">PC</A>, <A HREF="../PC/PCMG.html#PCMG">PCMG</A>, <A HREF="../PC/PCHYPRE.html#PCHYPRE">PCHYPRE</A>, <A HREF="../PC/PCHMG.html#PCHMG">PCHMG</A>, <A HREF="../PC/PCGetCoarseOperators.html#PCGetCoarseOperators">PCGetCoarseOperators</A>(), <A HREF="../PC/PCGetInterpolations.html#PCGetInterpolations">PCGetInterpolations</A>(), <A HREF="../PC/PCHMGSetReuseInterpolation.html#PCHMGSetReuseInterpolation">PCHMGSetReuseInterpolation</A>(), <A HREF="../PC/PCHMGSetUseSubspaceCoarsening.html#PCHMGSetUseSubspaceCoarsening">PCHMGSetUseSubspaceCoarsening</A>(),
<BR><A HREF="../PC/PCHMGSetInnerPCType.html#PCHMGSetInnerPCType">PCHMGSetInnerPCType</A>()
<P>
<P><B></B><H3><FONT COLOR="#CC3333">Level</FONT></H3>beginner<BR>
<H3><FONT COLOR="#CC3333">Location</FONT></H3>
</B><A HREF="../../../src/ksp/pc/impls/hmg/hmg.c.html#PCHMG">src/ksp/pc/impls/hmg/hmg.c</A>
<P><H3><FONT COLOR="#CC3333">Examples</FONT></H3>
<A HREF="../../../src/ksp/ksp/tutorials/ex4.c.html">src/ksp/ksp/tutorials/ex4.c.html</A><BR>
<BR><A HREF="./index.html">Index of all PC routines</A>
<BR><A HREF="../../index.html">Table of Contents for all manual pages</A>
<BR><A HREF="../singleindex.html">Index of all manual pages</A>
</BODY></HTML>
|