1
<center><a href="petscsles.h">Actual source code: petscsles.h</a></center><br>
6
<meta name="generator" content="c2html 0.9.1">
7
<meta name="date" content="2002-05-31T16:21:07+00:00">
10
<body bgcolor="#FFFFFF">
11
<pre width="80"><a name="line1"> 1: </a><font color="#B22222">/* $Id: petscsles.h,v 1.37 2001/03/22 20:30:52 bsmith Exp $ */</font>
12
<a name="line2"> 2: </a><font color="#B22222">/*</font>
13
<a name="line3"> 3: </a><font color="#B22222"> Defines PETSc interface to the linear solvers. The details of Krylov methods</font>
14
<a name="line4"> 4: </a><font color="#B22222"> and preconditioners are handled in the petscksp.h and petscpc.h files</font>
15
<a name="line5"> 5: </a><font color="#B22222">*/</font>
16
<a name="line8"> 8: </a> #include <A href="petscpc.h.html">petscpc.h</A>
17
<a name="line9"> 9: </a> #include <A href="petscksp.h.html">petscksp.h</A>
19
<a name="line11"> 11: </a><font color="#B22222">/* Logging support */</font>
20
<a name="line12"> 12: </a>extern int SLES_COOKIE;
21
<a name="line13"> 13: </a>extern int SLES_SetUp, SLES_Solve;
23
<a name="line15"> 15: </a><font color="#B22222">/*S</font>
24
<a name="line16"> 16: </a><font color="#B22222"> <A href="../docs/manualpages/SLES/SLES.html#SLES">SLES</A> - Abstract PETSc object that manages all linear solvers. Essentially contains a </font>
25
<a name="line17"> 17: </a><font color="#B22222"> <A href="../docs/manualpages/PC/PC.html#PC">PC</A>, preconditioner and a <A href="../docs/manualpages/KSP/KSP.html#KSP">KSP</A>, Krylov solver.</font>
27
<a name="line19"> 19: </a><font color="#B22222"> Level: beginner</font>
29
<a name="line21"> 21: </a><font color="#B22222"> Concepts: linear solvers</font>
31
<a name="line23"> 23: </a><font color="#B22222">.seealso: <A href="../docs/manualpages/SLES/SLESCreate.html#SLESCreate">SLESCreate</A>(), <A href="../docs/manualpages/SLES/SLESGetKSP.html#SLESGetKSP">SLESGetKSP</A>(), <A href="../docs/manualpages/SLES/SLESGetPC.html#SLESGetPC">SLESGetPC</A>(), <A href="../docs/manualpages/TS/TS.html#TS">TS</A>, <A href="../docs/manualpages/SNES/SNES.html#SNES">SNES</A>, <A href="../docs/manualpages/KSP/KSP.html#KSP">KSP</A>, <A href="../docs/manualpages/PC/PC.html#PC">PC</A></font>
32
<a name="line24"> 24: </a><font color="#B22222">S*/</font>
33
<a name="line25"> 25: </a><font color="#4169E1">typedef struct _p_SLES* <A href="../docs/manualpages/SLES/SLES.html#SLES">SLES</A>;</font>
35
<a name="line27"> 27: </a><strong><font color="#4169E1">EXTERN int <A href="../docs/manualpages/KSP/SLESInitializePackage.html#SLESInitializePackage">SLESInitializePackage</A>(char *)</font></strong>;
37
<a name="line29"> 29: </a><strong><font color="#4169E1">EXTERN int <A href="../docs/manualpages/SLES/SLESCreate.html#SLESCreate">SLESCreate</A>(MPI_Comm,<A href="../docs/manualpages/SLES/SLES.html#SLES">SLES</A>*)</font></strong>;
38
<a name="line30"> 30: </a><strong><font color="#4169E1">EXTERN int <A href="../docs/manualpages/SLES/SLESDestroy.html#SLESDestroy">SLESDestroy</A>(<A href="../docs/manualpages/SLES/SLES.html#SLES">SLES</A>)</font></strong>;
40
<a name="line32"> 32: </a><strong><font color="#4169E1">EXTERN int <A href="../docs/manualpages/SLES/SLESGetPC.html#SLESGetPC">SLESGetPC</A>(<A href="../docs/manualpages/SLES/SLES.html#SLES">SLES</A>,<A href="../docs/manualpages/PC/PC.html#PC">PC</A>*)</font></strong>;
41
<a name="line33"> 33: </a><strong><font color="#4169E1">EXTERN int <A href="../docs/manualpages/SLES/SLESGetKSP.html#SLESGetKSP">SLESGetKSP</A>(<A href="../docs/manualpages/SLES/SLES.html#SLES">SLES</A>,<A href="../docs/manualpages/KSP/KSP.html#KSP">KSP</A>*)</font></strong>;
42
<a name="line34"> 34: </a><strong><font color="#4169E1">EXTERN int <A href="../docs/manualpages/SLES/SLESSetOperators.html#SLESSetOperators">SLESSetOperators</A>(<A href="../docs/manualpages/SLES/SLES.html#SLES">SLES</A>,<A href="../docs/manualpages/Mat/Mat.html#Mat">Mat</A>,<A href="../docs/manualpages/Mat/Mat.html#Mat">Mat</A>,<A href="../docs/manualpages/Mat/MatStructure.html#MatStructure">MatStructure</A>)</font></strong>;
43
<a name="line35"> 35: </a><strong><font color="#4169E1">EXTERN int <A href="../docs/manualpages/SLES/SLESSolve.html#SLESSolve">SLESSolve</A>(<A href="../docs/manualpages/SLES/SLES.html#SLES">SLES</A>,<A href="../docs/manualpages/Vec/Vec.html#Vec">Vec</A>,<A href="../docs/manualpages/Vec/Vec.html#Vec">Vec</A>,int*)</font></strong>;
44
<a name="line36"> 36: </a><strong><font color="#4169E1">EXTERN int <A href="../docs/manualpages/SLES/SLESSolveTranspose.html#SLESSolveTranspose">SLESSolveTranspose</A>(<A href="../docs/manualpages/SLES/SLES.html#SLES">SLES</A>,<A href="../docs/manualpages/Vec/Vec.html#Vec">Vec</A>,<A href="../docs/manualpages/Vec/Vec.html#Vec">Vec</A>,int*)</font></strong>;
45
<a name="line37"> 37: </a><strong><font color="#4169E1">EXTERN int <A href="../docs/manualpages/SLES/SLESSetFromOptions.html#SLESSetFromOptions">SLESSetFromOptions</A>(<A href="../docs/manualpages/SLES/SLES.html#SLES">SLES</A>)</font></strong>;
46
<a name="line38"> 38: </a><strong><font color="#4169E1">EXTERN int SLESSetTypesFromOptions(<A href="../docs/manualpages/SLES/SLES.html#SLES">SLES</A>)</font></strong>;
47
<a name="line39"> 39: </a><strong><font color="#4169E1">EXTERN int <A href="../docs/manualpages/SLES/SLESView.html#SLESView">SLESView</A>(<A href="../docs/manualpages/SLES/SLES.html#SLES">SLES</A>,<A href="../docs/manualpages/Viewer/PetscViewer.html#PetscViewer">PetscViewer</A>)</font></strong>;
48
<a name="line40"> 40: </a><strong><font color="#4169E1">EXTERN int <A href="../docs/manualpages/SLES/SLESSetUp.html#SLESSetUp">SLESSetUp</A>(<A href="../docs/manualpages/SLES/SLES.html#SLES">SLES</A>,<A href="../docs/manualpages/Vec/Vec.html#Vec">Vec</A>,<A href="../docs/manualpages/Vec/Vec.html#Vec">Vec</A>)</font></strong>;
49
<a name="line41"> 41: </a><strong><font color="#4169E1">EXTERN int <A href="../docs/manualpages/SLES/SLESSetUpOnBlocks.html#SLESSetUpOnBlocks">SLESSetUpOnBlocks</A>(<A href="../docs/manualpages/SLES/SLES.html#SLES">SLES</A>)</font></strong>;
50
<a name="line42"> 42: </a><strong><font color="#4169E1">EXTERN int <A href="../docs/manualpages/SLES/SLESSetDiagonalScale.html#SLESSetDiagonalScale">SLESSetDiagonalScale</A>(<A href="../docs/manualpages/SLES/SLES.html#SLES">SLES</A>,<A href="../docs/manualpages/Sys/PetscTruth.html#PetscTruth">PetscTruth</A>)</font></strong>;
51
<a name="line43"> 43: </a><strong><font color="#4169E1">EXTERN int <A href="../docs/manualpages/SLES/SLESGetDiagonalScale.html#SLESGetDiagonalScale">SLESGetDiagonalScale</A>(<A href="../docs/manualpages/SLES/SLES.html#SLES">SLES</A>,<A href="../docs/manualpages/Sys/PetscTruth.html#PetscTruth">PetscTruth</A>*)</font></strong>;
52
<a name="line44"> 44: </a><strong><font color="#4169E1">EXTERN int <A href="../docs/manualpages/SLES/SLESSetDiagonalScaleFix.html#SLESSetDiagonalScaleFix">SLESSetDiagonalScaleFix</A>(<A href="../docs/manualpages/SLES/SLES.html#SLES">SLES</A>)</font></strong>;
54
<a name="line46"> 46: </a><strong><font color="#4169E1">EXTERN int <A href="../docs/manualpages/SLES/SLESSetOptionsPrefix.html#SLESSetOptionsPrefix">SLESSetOptionsPrefix</A>(<A href="../docs/manualpages/SLES/SLES.html#SLES">SLES</A>,char*)</font></strong>;
55
<a name="line47"> 47: </a><strong><font color="#4169E1">EXTERN int <A href="../docs/manualpages/SLES/SLESAppendOptionsPrefix.html#SLESAppendOptionsPrefix">SLESAppendOptionsPrefix</A>(<A href="../docs/manualpages/SLES/SLES.html#SLES">SLES</A>,char*)</font></strong>;
56
<a name="line48"> 48: </a><strong><font color="#4169E1">EXTERN int <A href="../docs/manualpages/SLES/SLESGetOptionsPrefix.html#SLESGetOptionsPrefix">SLESGetOptionsPrefix</A>(<A href="../docs/manualpages/SLES/SLES.html#SLES">SLES</A>,char**)</font></strong>;
58
<a name="line50"> 50: </a><strong><font color="#4169E1">EXTERN int <A href="../docs/manualpages/PC/PCBJacobiGetSubSLES.html#PCBJacobiGetSubSLES">PCBJacobiGetSubSLES</A>(<A href="../docs/manualpages/PC/PC.html#PC">PC</A>,int*,int*,<A href="../docs/manualpages/SLES/SLES.html#SLES">SLES</A>**)</font></strong>;
59
<a name="line51"> 51: </a><strong><font color="#4169E1">EXTERN int <A href="../docs/manualpages/PC/PCASMGetSubSLES.html#PCASMGetSubSLES">PCASMGetSubSLES</A>(<A href="../docs/manualpages/PC/PC.html#PC">PC</A>,int*,int*,<A href="../docs/manualpages/SLES/SLES.html#SLES">SLES</A>**)</font></strong>;
60
<a name="line52"> 52: </a><strong><font color="#4169E1">EXTERN int <A href="../docs/manualpages/PC/PCSLESGetSLES.html#PCSLESGetSLES">PCSLESGetSLES</A>(<A href="../docs/manualpages/PC/PC.html#PC">PC</A>,<A href="../docs/manualpages/SLES/SLES.html#SLES">SLES</A> *)</font></strong>;
62
<a name="line54"> 54: </a><font color="#A020F0">#endif</font>