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 53 54
|
<!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/PCShellSetPostSolve.html" />
<META NAME="GENERATOR" CONTENT="DOCTEXT">
<TITLE>PCShellSetPostSolve</TITLE>
</HEAD>
<BODY BGCOLOR="FFFFFF">
<div id="version" align=right><b>petsc-3.4.2 2013-07-02</b></div>
<A NAME="PCShellSetPostSolve"><H1>PCShellSetPostSolve</H1></A>
Sets routine to apply to the operators/vectors before a <A HREF="../KSP/KSPSolve.html#KSPSolve">KSPSolve</A>() is applied. This usually does something like scale the linear system in some application specific way.
<H3><FONT COLOR="#CC3333">Synopsis</FONT></H3>
<PRE>
#include "petscpc.h"
PetscErrorCode PCShellSetPostSolve(PC pc,PetscErrorCode (*postsolve)(PC,KSP,Vec,Vec))
</PRE>
Logically Collective on <A HREF="../PC/PC.html#PC">PC</A>
<P>
<H3><FONT COLOR="#CC3333">Input Parameters</FONT></H3>
<TABLE border="0" cellpadding="0" cellspacing="0">
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>pc </B></TD><TD>- the preconditioner context
</TD></TR>
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>postsolve </B></TD><TD>- the application-provided presolve routine
</TD></TR></TABLE>
<P>
<H3><FONT COLOR="#CC3333">Calling sequence of postsolve</FONT></H3>
<PRE>
<A HREF="../Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</A> postsolve(<A HREF="../PC/PC.html#PC">PC</A>,<A HREF="../KSP/KSP.html#KSP">KSP</A> ksp,<A HREF="../Vec/Vec.html#Vec">Vec</A> b,<A HREF="../Vec/Vec.html#Vec">Vec</A> x)
</PRE>
<P>
<TABLE border="0" cellpadding="0" cellspacing="0">
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>pc </B></TD><TD>- the preconditioner, get the application context with <A HREF="../PC/PCShellGetContext.html#PCShellGetContext">PCShellGetContext</A>()
</TD></TR>
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>xin </B></TD><TD>- input vector
</TD></TR>
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>xout </B></TD><TD>- output vector
</TD></TR></TABLE>
<P>
Notes: the function MUST return an error code of 0 on success and nonzero on failure.
<P>
<P>
<H3><FONT COLOR="#CC3333">Keywords</FONT></H3>
<A HREF="../PC/PC.html#PC">PC</A>, shell, set, apply, user-provided
<BR>
<P>
<H3><FONT COLOR="#CC3333">See Also</FONT></H3>
<A HREF="../PC/PCShellSetApplyRichardson.html#PCShellSetApplyRichardson">PCShellSetApplyRichardson</A>(), <A HREF="../PC/PCShellSetSetUp.html#PCShellSetSetUp">PCShellSetSetUp</A>(), <A HREF="../PC/PCShellSetApplyTranspose.html#PCShellSetApplyTranspose">PCShellSetApplyTranspose</A>(), <A HREF="../PC/PCShellSetPreSolve.html#PCShellSetPreSolve">PCShellSetPreSolve</A>(), <A HREF="../PC/PCShellSetContext.html#PCShellSetContext">PCShellSetContext</A>()
<BR><P><B><P><B><FONT COLOR="#CC3333">Level:</FONT></B>developer
<BR><FONT COLOR="#CC3333">Location:</FONT></B><A HREF="../../../src/ksp/pc/impls/shell/shellpc.c.html#PCShellSetPostSolve">src/ksp/pc/impls/shell/shellpc.c</A>
<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>
|