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 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289
|
<center><a href="slepcds.h">Actual source code: slepcds.h</a></center><br>
<html>
<head> <link rel="canonical" href="https://slepc.upv.es/documentation/current/include/slepcds.h.html" />
<title></title>
<meta name="generator" content="c2html 0.9.6">
<meta name="date" content="2024-12-02T08:56:43+00:00">
</head>
<body bgcolor="#FFFFFF">
<div id="version" align=right><b>slepc-3.22.2 2024-12-02</b></div>
<div id="bugreport" align=right><a href="mailto:slepc-maint@upv.es?subject=Typo or Error in Documentation &body=Please describe the typo or error in the documentation: slepc-3.22.2 v3.22.2 include/slepcds.h.html "><small>Report Typos and Errors</small></a></div>
<pre width="80">
<a name="line1"> 1: </a><font color="#B22222">/*</font>
<a name="line2"> 2: </a><font color="#B22222"> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -</font>
<a name="line3"> 3: </a><font color="#B22222"> SLEPc - Scalable Library for Eigenvalue Problem Computations</font>
<a name="line4"> 4: </a><font color="#B22222"> Copyright (c) 2002-, Universitat Politecnica de Valencia, Spain</font>
<a name="line6"> 6: </a><font color="#B22222"> This file is part of SLEPc.</font>
<a name="line7"> 7: </a><font color="#B22222"> SLEPc is distributed under a 2-clause BSD license (see LICENSE).</font>
<a name="line8"> 8: </a><font color="#B22222"> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -</font>
<a name="line9"> 9: </a><font color="#B22222">*/</font>
<a name="line10"> 10: </a><font color="#B22222">/*</font>
<a name="line11"> 11: </a><font color="#B22222"> User interface for the direct solver object in SLEPc</font>
<a name="line12"> 12: </a><font color="#B22222">*/</font>
<a name="line14"> 14: </a><font color="#A020F0">#pragma once</font>
<a name="line16"> 16: </a>#include <A href="slepcsc.h.html"><slepcsc.h></A>
<a name="line17"> 17: </a>#include <A href="slepcfn.h.html"><slepcfn.h></A>
<a name="line18"> 18: </a>#include <A href="slepcrg.h.html"><slepcrg.h></A>
<a name="line20"> 20: </a><font color="#B22222">/* SUBMANSEC = <a href="../docs/manualpages/DS/DS.html#DS">DS</a> */</font>
<a name="line22"> 22: </a><strong><font color="#228B22">#define DS_MAX_SOLVE 6</font></strong>
<a name="line24"> 24: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSInitializePackage.html#DSInitializePackage">DSInitializePackage</a>(void)</font></strong>;
<a name="line25"> 25: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSFinalizePackage.html#DSFinalizePackage">DSFinalizePackage</a>(void)</font></strong>;
<a name="line27"> 27: </a><font color="#B22222">/*S</font>
<a name="line28"> 28: </a><font color="#B22222"> <a href="../docs/manualpages/DS/DS.html#DS">DS</a> - Direct solver (or dense system), to represent low-dimensional</font>
<a name="line29"> 29: </a><font color="#B22222"> eigenproblems that must be solved within iterative solvers. This is an</font>
<a name="line30"> 30: </a><font color="#B22222"> auxiliary object and is not normally needed by application programmers.</font>
<a name="line32"> 32: </a><font color="#B22222"> Level: beginner</font>
<a name="line34"> 34: </a><font color="#B22222">.seealso: <a href="../docs/manualpages/DS/DSCreate.html#DSCreate">DSCreate</a>()</font>
<a name="line35"> 35: </a><font color="#B22222">S*/</font>
<a name="line36"> 36: </a><font color="#4169E1">typedef struct _p_DS* <a href="../docs/manualpages/DS/DS.html#DS">DS</a>;</font>
<a name="line38"> 38: </a><font color="#B22222">/*J</font>
<a name="line39"> 39: </a><font color="#B22222"> <a href="../docs/manualpages/DS/DSType.html#DSType">DSType</a> - String with the name of the type of direct solver. Roughly,</font>
<a name="line40"> 40: </a><font color="#B22222"> there are as many types as problem types are available within SLEPc.</font>
<a name="line42"> 42: </a><font color="#B22222"> Level: advanced</font>
<a name="line44"> 44: </a><font color="#B22222">.seealso: <a href="../docs/manualpages/DS/DSSetType.html#DSSetType">DSSetType</a>(), <a href="../docs/manualpages/DS/DS.html#DS">DS</a></font>
<a name="line45"> 45: </a><font color="#B22222">J*/</font>
<a name="line46"> 46: </a><font color="#4169E1">typedef const char* <a href="../docs/manualpages/DS/DSType.html#DSType">DSType</a>;</font>
<a name="line47"> 47: </a><strong><font color="#228B22">#define <a href="../docs/manualpages/DS/DSHEP.html#DSHEP">DSHEP</a> </font><font color="#666666">"hep"</font><font color="#228B22"></font></strong>
<a name="line48"> 48: </a><strong><font color="#228B22">#define <a href="../docs/manualpages/DS/DSNHEP.html#DSNHEP">DSNHEP</a> </font><font color="#666666">"nhep"</font><font color="#228B22"></font></strong>
<a name="line49"> 49: </a><strong><font color="#228B22">#define <a href="../docs/manualpages/DS/DSGHEP.html#DSGHEP">DSGHEP</a> </font><font color="#666666">"ghep"</font><font color="#228B22"></font></strong>
<a name="line50"> 50: </a><strong><font color="#228B22">#define <a href="../docs/manualpages/DS/DSGHIEP.html#DSGHIEP">DSGHIEP</a> </font><font color="#666666">"ghiep"</font><font color="#228B22"></font></strong>
<a name="line51"> 51: </a><strong><font color="#228B22">#define <a href="../docs/manualpages/DS/DSGNHEP.html#DSGNHEP">DSGNHEP</a> </font><font color="#666666">"gnhep"</font><font color="#228B22"></font></strong>
<a name="line52"> 52: </a><strong><font color="#228B22">#define <a href="../docs/manualpages/DS/DSNHEPTS.html#DSNHEPTS">DSNHEPTS</a> </font><font color="#666666">"nhepts"</font><font color="#228B22"></font></strong>
<a name="line53"> 53: </a><strong><font color="#228B22">#define <a href="../docs/manualpages/DS/DSSVD.html#DSSVD">DSSVD</a> </font><font color="#666666">"svd"</font><font color="#228B22"></font></strong>
<a name="line54"> 54: </a><strong><font color="#228B22">#define <a href="../docs/manualpages/DS/DSHSVD.html#DSHSVD">DSHSVD</a> </font><font color="#666666">"hsvd"</font><font color="#228B22"></font></strong>
<a name="line55"> 55: </a><strong><font color="#228B22">#define <a href="../docs/manualpages/DS/DSGSVD.html#DSGSVD">DSGSVD</a> </font><font color="#666666">"gsvd"</font><font color="#228B22"></font></strong>
<a name="line56"> 56: </a><strong><font color="#228B22">#define <a href="../docs/manualpages/DS/DSPEP.html#DSPEP">DSPEP</a> </font><font color="#666666">"pep"</font><font color="#228B22"></font></strong>
<a name="line57"> 57: </a><strong><font color="#228B22">#define <a href="../docs/manualpages/DS/DSNEP.html#DSNEP">DSNEP</a> </font><font color="#666666">"nep"</font><font color="#228B22"></font></strong>
<a name="line59"> 59: </a><font color="#B22222">/* Logging support */</font>
<a name="line60"> 60: </a>SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscClassId.html#PetscClassId">PetscClassId</a> DS_CLASSID;
<a name="line62"> 62: </a><font color="#B22222">/*E</font>
<a name="line63"> 63: </a><font color="#B22222"> <a href="../docs/manualpages/DS/DSStateType.html#DSStateType">DSStateType</a> - Indicates in which state the direct solver is</font>
<a name="line65"> 65: </a><font color="#B22222"> Level: advanced</font>
<a name="line67"> 67: </a><font color="#B22222">.seealso: <a href="../docs/manualpages/DS/DSSetState.html#DSSetState">DSSetState</a>()</font>
<a name="line68"> 68: </a><font color="#B22222">E*/</font>
<a name="line69"> 69: </a><font color="#4169E1">typedef</font> <font color="#4169E1">enum</font> { <a href="../docs/manualpages/DS/DSStateType.html#DSStateType">DS_STATE_RAW</a>,
<a name="line70"> 70: </a> <a href="../docs/manualpages/DS/DSStateType.html#DSStateType">DS_STATE_INTERMEDIATE</a>,
<a name="line71"> 71: </a> <a href="../docs/manualpages/DS/DSStateType.html#DSStateType">DS_STATE_CONDENSED</a>,
<a name="line72"> 72: </a> <a href="../docs/manualpages/DS/DSStateType.html#DSStateType">DS_STATE_TRUNCATED</a> } <a href="../docs/manualpages/DS/DSStateType.html#DSStateType">DSStateType</a>;
<a name="line73"> 73: </a>SLEPC_EXTERN const char *DSStateTypes[];
<a name="line75"> 75: </a><font color="#B22222">/*E</font>
<a name="line76"> 76: </a><font color="#B22222"> <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DSMatType</a> - Used to refer to one of the matrices stored internally in <a href="../docs/manualpages/DS/DS.html#DS">DS</a></font>
<a name="line78"> 78: </a><font color="#B22222"> Notes:</font>
<a name="line79"> 79: </a><font color="#B22222"> The matrices preferentially refer to</font>
<a name="line80"> 80: </a><font color="#B22222">+ <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_A</a> - first matrix of eigenproblem/singular value problem</font>
<a name="line81"> 81: </a><font color="#B22222">. <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_B</a> - second matrix of a generalized eigenproblem</font>
<a name="line82"> 82: </a><font color="#B22222">. <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_C</a> - third matrix of a quadratic eigenproblem (deprecated)</font>
<a name="line83"> 83: </a><font color="#B22222">. <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_T</a> - tridiagonal matrix</font>
<a name="line84"> 84: </a><font color="#B22222">. <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_D</a> - diagonal matrix</font>
<a name="line85"> 85: </a><font color="#B22222">. <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_Q</a> - orthogonal matrix of (right) Schur vectors</font>
<a name="line86"> 86: </a><font color="#B22222">. <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_Z</a> - orthogonal matrix of left Schur vectors</font>
<a name="line87"> 87: </a><font color="#B22222">. <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_X</a> - right eigenvectors</font>
<a name="line88"> 88: </a><font color="#B22222">. <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_Y</a> - left eigenvectors</font>
<a name="line89"> 89: </a><font color="#B22222">. <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_U</a> - left singular vectors</font>
<a name="line90"> 90: </a><font color="#B22222">. <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_V</a> - right singular vectors</font>
<a name="line91"> 91: </a><font color="#B22222">. <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_W</a> - workspace matrix</font>
<a name="line92"> 92: </a><font color="#B22222">- DS_MAT_Ex - extra matrices (x=0,..,9)</font>
<a name="line94"> 94: </a><font color="#B22222"> All matrices can have space to hold ld x ld elements, except for</font>
<a name="line95"> 95: </a><font color="#B22222"> <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_T</a> that has space for 3 x ld elements (ld = leading dimension)</font>
<a name="line96"> 96: </a><font color="#B22222"> and <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_D</a> that has space for just ld elements.</font>
<a name="line98"> 98: </a><font color="#B22222"> In <a href="../docs/manualpages/DS/DSPEP.html#DSPEP">DSPEP</a> problems, matrices A, B, W can have space for d*ld x d*ld,</font>
<a name="line99"> 99: </a><font color="#B22222"> where d is the polynomial degree, and X can have ld x d*ld.</font>
<a name="line100">100: </a><font color="#B22222"> Also <a href="../docs/manualpages/DS/DSNEP.html#DSNEP">DSNEP</a> has exceptions. Check the manual page of each <a href="../docs/manualpages/DS/DS.html#DS">DS</a> type</font>
<a name="line101">101: </a><font color="#B22222"> for details.</font>
<a name="line103">103: </a><font color="#B22222"> Level: advanced</font>
<a name="line105">105: </a><font color="#B22222">.seealso: <a href="../docs/manualpages/DS/DSAllocate.html#DSAllocate">DSAllocate</a>(), <a href="../docs/manualpages/DS/DSGetArray.html#DSGetArray">DSGetArray</a>(), <a href="../docs/manualpages/DS/DSGetArrayReal.html#DSGetArrayReal">DSGetArrayReal</a>(), <a href="../docs/manualpages/DS/DSVectors.html#DSVectors">DSVectors</a>()</font>
<a name="line106">106: </a><font color="#B22222">E*/</font>
<a name="line107">107: </a><font color="#4169E1">typedef</font> <font color="#4169E1">enum</font> { <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_A</a>,
<a name="line108">108: </a> <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_B</a>,
<a name="line109">109: </a> <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_C</a>,
<a name="line110">110: </a> <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_T</a>,
<a name="line111">111: </a> <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_D</a>,
<a name="line112">112: </a> <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_Q</a>,
<a name="line113">113: </a> <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_Z</a>,
<a name="line114">114: </a> <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_X</a>,
<a name="line115">115: </a> <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_Y</a>,
<a name="line116">116: </a> <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_U</a>,
<a name="line117">117: </a> <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_V</a>,
<a name="line118">118: </a> <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_W</a>,
<a name="line119">119: </a> <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_E0</a>,
<a name="line120">120: </a> <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_E1</a>,
<a name="line121">121: </a> <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_E2</a>,
<a name="line122">122: </a> <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_E3</a>,
<a name="line123">123: </a> <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_E4</a>,
<a name="line124">124: </a> <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_E5</a>,
<a name="line125">125: </a> <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_E6</a>,
<a name="line126">126: </a> <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_E7</a>,
<a name="line127">127: </a> <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_E8</a>,
<a name="line128">128: </a> <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_MAT_E9</a>,
<a name="line129">129: </a> <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DS_NUM_MAT</a> } <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DSMatType</a>;
<a name="line131">131: </a><font color="#B22222">/* Convenience for indexing extra matrices */</font>
<a name="line132">132: </a>SLEPC_EXTERN <a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DSMatType</a> DSMatExtra[];
<a name="line133">133: </a><strong><font color="#228B22">#define DS_NUM_EXTRA 10</font></strong>
<a name="line135">135: </a><font color="#B22222">/*E</font>
<a name="line136">136: </a><font color="#B22222"> <a href="../docs/manualpages/DS/DSParallelType.html#DSParallelType">DSParallelType</a> - Indicates the parallel mode that the direct solver will use</font>
<a name="line138">138: </a><font color="#B22222"> Level: advanced</font>
<a name="line140">140: </a><font color="#B22222">.seealso: <a href="../docs/manualpages/DS/DSSetParallel.html#DSSetParallel">DSSetParallel</a>()</font>
<a name="line141">141: </a><font color="#B22222">E*/</font>
<a name="line142">142: </a><font color="#4169E1">typedef</font> <font color="#4169E1">enum</font> { <a href="../docs/manualpages/DS/DSParallelType.html#DSParallelType">DS_PARALLEL_REDUNDANT</a>,
<a name="line143">143: </a> <a href="../docs/manualpages/DS/DSParallelType.html#DSParallelType">DS_PARALLEL_SYNCHRONIZED</a>,
<a name="line144">144: </a> <a href="../docs/manualpages/DS/DSParallelType.html#DSParallelType">DS_PARALLEL_DISTRIBUTED</a> } <a href="../docs/manualpages/DS/DSParallelType.html#DSParallelType">DSParallelType</a>;
<a name="line145">145: </a>SLEPC_EXTERN const char *DSParallelTypes[];
<a name="line147">147: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSCreate.html#DSCreate">DSCreate</a>(<a href="https://petsc.org/release/manualpages/Sys/MPI_Comm.html#MPI_Comm">MPI_Comm</a>,<a href="../docs/manualpages/DS/DS.html#DS">DS</a>*)</font></strong>;
<a name="line148">148: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSSetType.html#DSSetType">DSSetType</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="../docs/manualpages/DS/DSType.html#DSType">DSType</a>)</font></strong>;
<a name="line149">149: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSGetType.html#DSGetType">DSGetType</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="../docs/manualpages/DS/DSType.html#DSType">DSType</a>*)</font></strong>;
<a name="line150">150: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSSetOptionsPrefix.html#DSSetOptionsPrefix">DSSetOptionsPrefix</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,const char *)</font></strong>;
<a name="line151">151: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSAppendOptionsPrefix.html#DSAppendOptionsPrefix">DSAppendOptionsPrefix</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,const char *)</font></strong>;
<a name="line152">152: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSGetOptionsPrefix.html#DSGetOptionsPrefix">DSGetOptionsPrefix</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,const char *[])</font></strong>;
<a name="line153">153: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSSetFromOptions.html#DSSetFromOptions">DSSetFromOptions</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>)</font></strong>;
<a name="line154">154: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSView.html#DSView">DSView</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Viewer/PetscViewer.html#PetscViewer">PetscViewer</a>)</font></strong>;
<a name="line155">155: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSViewFromOptions.html#DSViewFromOptions">DSViewFromOptions</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscObject.html#PetscObject">PetscObject</a>,const char[])</font></strong>;
<a name="line156">156: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSViewMat.html#DSViewMat">DSViewMat</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Viewer/PetscViewer.html#PetscViewer">PetscViewer</a>,<a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DSMatType</a>)</font></strong>;
<a name="line157">157: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSDestroy.html#DSDestroy">DSDestroy</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>*)</font></strong>;
<a name="line158">158: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSReset.html#DSReset">DSReset</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>)</font></strong>;
<a name="line159">159: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSDuplicate.html#DSDuplicate">DSDuplicate</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="../docs/manualpages/DS/DS.html#DS">DS</a>*)</font></strong>;
<a name="line161">161: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSAllocate.html#DSAllocate">DSAllocate</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>)</font></strong>;
<a name="line162">162: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSGetLeadingDimension.html#DSGetLeadingDimension">DSGetLeadingDimension</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>*)</font></strong>;
<a name="line163">163: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSSetState.html#DSSetState">DSSetState</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="../docs/manualpages/DS/DSStateType.html#DSStateType">DSStateType</a>)</font></strong>;
<a name="line164">164: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSGetState.html#DSGetState">DSGetState</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="../docs/manualpages/DS/DSStateType.html#DSStateType">DSStateType</a>*)</font></strong>;
<a name="line165">165: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSSetDimensions.html#DSSetDimensions">DSSetDimensions</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>)</font></strong>;
<a name="line166">166: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSGetDimensions.html#DSGetDimensions">DSGetDimensions</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>*,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>*,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>*,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>*)</font></strong>;
<a name="line167">167: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSSetBlockSize.html#DSSetBlockSize">DSSetBlockSize</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>)</font></strong>;
<a name="line168">168: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSGetBlockSize.html#DSGetBlockSize">DSGetBlockSize</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>*)</font></strong>;
<a name="line169">169: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSGetTruncateSize.html#DSGetTruncateSize">DSGetTruncateSize</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>*)</font></strong>;
<a name="line170">170: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSTruncate.html#DSTruncate">DSTruncate</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscBool.html#PetscBool">PetscBool</a>)</font></strong>;
<a name="line171">171: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSSetIdentity.html#DSSetIdentity">DSSetIdentity</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DSMatType</a>)</font></strong>;
<a name="line172">172: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSSetMethod.html#DSSetMethod">DSSetMethod</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>)</font></strong>;
<a name="line173">173: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSGetMethod.html#DSGetMethod">DSGetMethod</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>*)</font></strong>;
<a name="line174">174: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSSetParallel.html#DSSetParallel">DSSetParallel</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="../docs/manualpages/DS/DSParallelType.html#DSParallelType">DSParallelType</a>)</font></strong>;
<a name="line175">175: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSGetParallel.html#DSGetParallel">DSGetParallel</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="../docs/manualpages/DS/DSParallelType.html#DSParallelType">DSParallelType</a>*)</font></strong>;
<a name="line176">176: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSSetCompact.html#DSSetCompact">DSSetCompact</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscBool.html#PetscBool">PetscBool</a>)</font></strong>;
<a name="line177">177: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSGetCompact.html#DSGetCompact">DSGetCompact</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscBool.html#PetscBool">PetscBool</a>*)</font></strong>;
<a name="line178">178: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSSetExtraRow.html#DSSetExtraRow">DSSetExtraRow</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscBool.html#PetscBool">PetscBool</a>)</font></strong>;
<a name="line179">179: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSGetExtraRow.html#DSGetExtraRow">DSGetExtraRow</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscBool.html#PetscBool">PetscBool</a>*)</font></strong>;
<a name="line180">180: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSSetRefined.html#DSSetRefined">DSSetRefined</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscBool.html#PetscBool">PetscBool</a>)</font></strong>;
<a name="line181">181: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSGetRefined.html#DSGetRefined">DSGetRefined</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscBool.html#PetscBool">PetscBool</a>*)</font></strong>;
<a name="line182">182: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSGetMat.html#DSGetMat">DSGetMat</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DSMatType</a>,<a href="https://petsc.org/release/manualpages/Mat/Mat.html#Mat">Mat</a>*)</font></strong>;
<a name="line183">183: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSRestoreMat.html#DSRestoreMat">DSRestoreMat</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DSMatType</a>,<a href="https://petsc.org/release/manualpages/Mat/Mat.html#Mat">Mat</a>*)</font></strong>;
<a name="line184">184: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSGetMatAndColumn.html#DSGetMatAndColumn">DSGetMatAndColumn</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DSMatType</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>,<a href="https://petsc.org/release/manualpages/Mat/Mat.html#Mat">Mat</a>*,<a href="https://petsc.org/release/manualpages/Vec/Vec.html#Vec">Vec</a>*)</font></strong>;
<a name="line185">185: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSRestoreMatAndColumn.html#DSRestoreMatAndColumn">DSRestoreMatAndColumn</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DSMatType</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>,<a href="https://petsc.org/release/manualpages/Mat/Mat.html#Mat">Mat</a>*,<a href="https://petsc.org/release/manualpages/Vec/Vec.html#Vec">Vec</a>*)</font></strong>;
<a name="line186">186: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSGetArray.html#DSGetArray">DSGetArray</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DSMatType</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar.html#PetscScalar">PetscScalar</a>*[])</font></strong>;
<a name="line187">187: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSRestoreArray.html#DSRestoreArray">DSRestoreArray</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DSMatType</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar.html#PetscScalar">PetscScalar</a>*[])</font></strong>;
<a name="line188">188: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSGetArrayReal.html#DSGetArrayReal">DSGetArrayReal</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DSMatType</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscReal.html#PetscReal">PetscReal</a>*[])</font></strong>;
<a name="line189">189: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSRestoreArrayReal.html#DSRestoreArrayReal">DSRestoreArrayReal</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DSMatType</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscReal.html#PetscReal">PetscReal</a>*[])</font></strong>;
<a name="line190">190: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSVectors.html#DSVectors">DSVectors</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DSMatType</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>*,<a href="https://petsc.org/release/manualpages/Sys/PetscReal.html#PetscReal">PetscReal</a>*)</font></strong>;
<a name="line191">191: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSSolve.html#DSSolve">DSSolve</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar.html#PetscScalar">PetscScalar</a>*,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar.html#PetscScalar">PetscScalar</a>*)</font></strong>;
<a name="line192">192: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSSort.html#DSSort">DSSort</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar.html#PetscScalar">PetscScalar</a>*,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar.html#PetscScalar">PetscScalar</a>*,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar.html#PetscScalar">PetscScalar</a>*,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar.html#PetscScalar">PetscScalar</a>*,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>*)</font></strong>;
<a name="line193">193: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSSortWithPermutation.html#DSSortWithPermutation">DSSortWithPermutation</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>*,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar.html#PetscScalar">PetscScalar</a>*,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar.html#PetscScalar">PetscScalar</a>*)</font></strong>;
<a name="line194">194: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSSynchronize.html#DSSynchronize">DSSynchronize</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar.html#PetscScalar">PetscScalar</a>*,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar.html#PetscScalar">PetscScalar</a>*)</font></strong>;
<a name="line195">195: </a>PETSC_DEPRECATED_FUNCTION(3, 18, 0, <font color="#666666">"<a href="../docs/manualpages/DS/DSGetMat.html#DSGetMat">DSGetMat</a>()+<a href="https://petsc.org/release/manualpages/Mat/MatDenseGetSubMatrix.html#MatDenseGetSubMatrix">MatDenseGetSubMatrix</a>()+<a href="https://petsc.org/release/manualpages/Mat/MatCopy.html#MatCopy">MatCopy</a>()"</font>, ) static inline <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> DSCopyMat(<a href="../docs/manualpages/DS/DS.html#DS">DS</a> ds,<a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DSMatType</a> m,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a> mr,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a> mc,<a href="https://petsc.org/release/manualpages/Mat/Mat.html#Mat">Mat</a> A,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a> Ar,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a> Ac,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a> rows,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a> cols,<a href="https://petsc.org/release/manualpages/Sys/PetscBool.html#PetscBool">PetscBool</a> out)
<a name="line196">196: </a>{
<a name="line197">197: </a> <a href="https://petsc.org/release/manualpages/Mat/Mat.html#Mat">Mat</a> M,M0,A0;
<a name="line199">199: </a> <a href="https://petsc.org/release/manualpages/Sys/PetscFunctionBegin.html#PetscFunctionBegin">PetscFunctionBegin</a>;
<a name="line200">200: </a> <a href="https://petsc.org/release/manualpages/Sys/PetscCall.html#PetscCall">PetscCall</a>(<a href="../docs/manualpages/DS/DSGetMat.html#DSGetMat">DSGetMat</a>(ds,m,&M));
<a name="line201">201: </a> <a href="https://petsc.org/release/manualpages/Sys/PetscCall.html#PetscCall">PetscCall</a>(<a href="https://petsc.org/release/manualpages/Mat/MatDenseGetSubMatrix.html#MatDenseGetSubMatrix">MatDenseGetSubMatrix</a>(M,mr,mr+rows,mc,mc+cols,&M0));
<a name="line202">202: </a> <a href="https://petsc.org/release/manualpages/Sys/PetscCall.html#PetscCall">PetscCall</a>(<a href="https://petsc.org/release/manualpages/Mat/MatDenseGetSubMatrix.html#MatDenseGetSubMatrix">MatDenseGetSubMatrix</a>(A,Ar,Ar+rows,Ac,Ac+cols,&A0));
<a name="line203">203: </a> <font color="#4169E1">if</font> (out) <a href="https://petsc.org/release/manualpages/Sys/PetscCall.html#PetscCall">PetscCall</a>(<a href="https://petsc.org/release/manualpages/Mat/MatCopy.html#MatCopy">MatCopy</a>(M0,A0,<a href="https://petsc.org/release/manualpages/Mat/MatStructure.html#MatStructure">SAME_NONZERO_PATTERN</a>));
<a name="line204">204: </a> <font color="#4169E1">else</font> <a href="https://petsc.org/release/manualpages/Sys/PetscCall.html#PetscCall">PetscCall</a>(<a href="https://petsc.org/release/manualpages/Mat/MatCopy.html#MatCopy">MatCopy</a>(A0,M0,<a href="https://petsc.org/release/manualpages/Mat/MatStructure.html#MatStructure">SAME_NONZERO_PATTERN</a>));
<a name="line205">205: </a> <a href="https://petsc.org/release/manualpages/Sys/PetscCall.html#PetscCall">PetscCall</a>(<a href="https://petsc.org/release/manualpages/Mat/MatDenseRestoreSubMatrix.html#MatDenseRestoreSubMatrix">MatDenseRestoreSubMatrix</a>(M,&M0));
<a name="line206">206: </a> <a href="https://petsc.org/release/manualpages/Sys/PetscCall.html#PetscCall">PetscCall</a>(<a href="https://petsc.org/release/manualpages/Mat/MatDenseRestoreSubMatrix.html#MatDenseRestoreSubMatrix">MatDenseRestoreSubMatrix</a>(A,&A0));
<a name="line207">207: </a> <a href="https://petsc.org/release/manualpages/Sys/PetscCall.html#PetscCall">PetscCall</a>(<a href="../docs/manualpages/DS/DSRestoreMat.html#DSRestoreMat">DSRestoreMat</a>(ds,m,&M));
<a name="line208">208: </a> <a href="https://petsc.org/release/manualpages/Sys/PetscFunctionReturn.html#PetscFunctionReturn">PetscFunctionReturn</a>(<a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PETSC_SUCCESS</a>);
<a name="line209">209: </a>}
<a name="line210">210: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSMatGetSize.html#DSMatGetSize">DSMatGetSize</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DSMatType</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>*,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>*)</font></strong>;
<a name="line211">211: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSMatIsHermitian.html#DSMatIsHermitian">DSMatIsHermitian</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DSMatType</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscBool.html#PetscBool">PetscBool</a>*)</font></strong>;
<a name="line212">212: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSSetSlepcSC.html#DSSetSlepcSC">DSSetSlepcSC</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="../docs/manualpages/sys/SlepcSC.html#SlepcSC">SlepcSC</a>)</font></strong>;
<a name="line213">213: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSGetSlepcSC.html#DSGetSlepcSC">DSGetSlepcSC</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="../docs/manualpages/sys/SlepcSC.html#SlepcSC">SlepcSC</a>*)</font></strong>;
<a name="line214">214: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSUpdateExtraRow.html#DSUpdateExtraRow">DSUpdateExtraRow</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>)</font></strong>;
<a name="line215">215: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSCond.html#DSCond">DSCond</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscReal.html#PetscReal">PetscReal</a>*)</font></strong>;
<a name="line216">216: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSTranslateHarmonic.html#DSTranslateHarmonic">DSTranslateHarmonic</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar.html#PetscScalar">PetscScalar</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscReal.html#PetscReal">PetscReal</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscBool.html#PetscBool">PetscBool</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar.html#PetscScalar">PetscScalar</a>*,<a href="https://petsc.org/release/manualpages/Sys/PetscReal.html#PetscReal">PetscReal</a>*)</font></strong>;
<a name="line217">217: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSTranslateRKS.html#DSTranslateRKS">DSTranslateRKS</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar.html#PetscScalar">PetscScalar</a>)</font></strong>;
<a name="line218">218: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSOrthogonalize.html#DSOrthogonalize">DSOrthogonalize</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DSMatType</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>*)</font></strong>;
<a name="line219">219: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSPseudoOrthogonalize.html#DSPseudoOrthogonalize">DSPseudoOrthogonalize</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DSMatType</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscReal.html#PetscReal">PetscReal</a>*,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>*,<a href="https://petsc.org/release/manualpages/Sys/PetscReal.html#PetscReal">PetscReal</a>*)</font></strong>;
<a name="line221">221: </a><font color="#B22222">/* --------- options specific to particular solvers -------- */</font>
<a name="line223">223: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSSVDSetDimensions.html#DSSVDSetDimensions">DSSVDSetDimensions</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>)</font></strong>;
<a name="line224">224: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSSVDGetDimensions.html#DSSVDGetDimensions">DSSVDGetDimensions</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>*)</font></strong>;
<a name="line225">225: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSGSVDSetDimensions.html#DSGSVDSetDimensions">DSGSVDSetDimensions</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>)</font></strong>;
<a name="line226">226: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSGSVDGetDimensions.html#DSGSVDGetDimensions">DSGSVDGetDimensions</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>*,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>*)</font></strong>;
<a name="line227">227: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSHSVDSetDimensions.html#DSHSVDSetDimensions">DSHSVDSetDimensions</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>)</font></strong>;
<a name="line228">228: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSHSVDGetDimensions.html#DSHSVDGetDimensions">DSHSVDGetDimensions</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>*)</font></strong>;
<a name="line229">229: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSHSVDSetReorthogonalize.html#DSHSVDSetReorthogonalize">DSHSVDSetReorthogonalize</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscBool.html#PetscBool">PetscBool</a>)</font></strong>;
<a name="line230">230: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSHSVDGetReorthogonalize.html#DSHSVDGetReorthogonalize">DSHSVDGetReorthogonalize</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscBool.html#PetscBool">PetscBool</a>*)</font></strong>;
<a name="line232">232: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSPEPSetDegree.html#DSPEPSetDegree">DSPEPSetDegree</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>)</font></strong>;
<a name="line233">233: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSPEPGetDegree.html#DSPEPGetDegree">DSPEPGetDegree</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>*)</font></strong>;
<a name="line234">234: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSPEPSetCoefficients.html#DSPEPSetCoefficients">DSPEPSetCoefficients</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscReal.html#PetscReal">PetscReal</a>*)</font></strong>;
<a name="line235">235: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSPEPGetCoefficients.html#DSPEPGetCoefficients">DSPEPGetCoefficients</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscReal.html#PetscReal">PetscReal</a>**)</font></strong>;
<a name="line237">237: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSNEPSetFN.html#DSNEPSetFN">DSNEPSetFN</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>,<a href="../docs/manualpages/FN/FN.html#FN">FN</a>*)</font></strong>;
<a name="line238">238: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSNEPGetFN.html#DSNEPGetFN">DSNEPGetFN</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>,<a href="../docs/manualpages/FN/FN.html#FN">FN</a>*)</font></strong>;
<a name="line239">239: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSNEPGetNumFN.html#DSNEPGetNumFN">DSNEPGetNumFN</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>*)</font></strong>;
<a name="line240">240: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSNEPSetMinimality.html#DSNEPSetMinimality">DSNEPSetMinimality</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>)</font></strong>;
<a name="line241">241: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSNEPGetMinimality.html#DSNEPGetMinimality">DSNEPGetMinimality</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>*)</font></strong>;
<a name="line242">242: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSNEPSetRefine.html#DSNEPSetRefine">DSNEPSetRefine</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscReal.html#PetscReal">PetscReal</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>)</font></strong>;
<a name="line243">243: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSNEPGetRefine.html#DSNEPGetRefine">DSNEPGetRefine</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscReal.html#PetscReal">PetscReal</a>*,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>*)</font></strong>;
<a name="line244">244: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSNEPSetIntegrationPoints.html#DSNEPSetIntegrationPoints">DSNEPSetIntegrationPoints</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>)</font></strong>;
<a name="line245">245: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSNEPGetIntegrationPoints.html#DSNEPGetIntegrationPoints">DSNEPGetIntegrationPoints</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>*)</font></strong>;
<a name="line246">246: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSNEPSetSamplingSize.html#DSNEPSetSamplingSize">DSNEPSetSamplingSize</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>)</font></strong>;
<a name="line247">247: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSNEPGetSamplingSize.html#DSNEPGetSamplingSize">DSNEPGetSamplingSize</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="https://petsc.org/release/manualpages/Sys/PetscInt.html#PetscInt">PetscInt</a>*)</font></strong>;
<a name="line248">248: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSNEPSetRG.html#DSNEPSetRG">DSNEPSetRG</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="../docs/manualpages/RG/RG.html#RG">RG</a>)</font></strong>;
<a name="line249">249: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSNEPGetRG.html#DSNEPGetRG">DSNEPGetRG</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="../docs/manualpages/RG/RG.html#RG">RG</a>*)</font></strong>;
<a name="line251">251: </a><font color="#B22222">/*S</font>
<a name="line252">252: </a><font color="#B22222"> <a href="../docs/manualpages/DS/DSNEPMatrixFunctionFn.html#DSNEPMatrixFunctionFn">DSNEPMatrixFunctionFn</a> - A prototype of a <a href="../docs/manualpages/DS/DSNEP.html#DSNEP">DSNEP</a> compute matrix function that would be passed to <a href="../docs/manualpages/DS/DSNEPSetComputeMatrixFunction.html#DSNEPSetComputeMatrixFunction">DSNEPSetComputeMatrixFunction</a>()</font>
<a name="line254">254: </a><font color="#B22222"> Calling Sequence:</font>
<a name="line255">255: </a><font color="#B22222">+ ds - the direct solver object</font>
<a name="line256">256: </a><font color="#B22222">. lambda - point where T(lambda) or T'(lambda) must be evaluated</font>
<a name="line257">257: </a><font color="#B22222">. deriv - if true compute T'(lambda), otherwise compute T(lambda)</font>
<a name="line258">258: </a><font color="#B22222">. mat - the <a href="../docs/manualpages/DS/DS.html#DS">DS</a> matrix where the result must be stored</font>
<a name="line259">259: </a><font color="#B22222">- ctx - [optional] user-defined context for private data for the</font>
<a name="line260">260: </a><font color="#B22222"> matrix evaluation routine (may be `NULL`)</font>
<a name="line262">262: </a><font color="#B22222"> Level: developer</font>
<a name="line264">264: </a><font color="#B22222">.seealso: <a href="../docs/manualpages/DS/DSNEPSetComputeMatrixFunction.html#DSNEPSetComputeMatrixFunction">DSNEPSetComputeMatrixFunction</a>()</font>
<a name="line265">265: </a><font color="#B22222">S*/</font>
<a name="line266">266: </a><strong><font color="#4169E1">PETSC_EXTERN_TYPEDEF typedef <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a>(<a href="../docs/manualpages/DS/DSNEPMatrixFunctionFn.html#DSNEPMatrixFunctionFn">DSNEPMatrixFunctionFn</a>)(<a href="../docs/manualpages/DS/DS.html#DS">DS</a> ds,<a href="https://petsc.org/release/manualpages/Sys/PetscScalar.html#PetscScalar">PetscScalar</a> lambda,<a href="https://petsc.org/release/manualpages/Sys/PetscBool.html#PetscBool">PetscBool</a> deriv,<a href="../docs/manualpages/DS/DSMatType.html#DSMatType">DSMatType</a> mat,void *ctx)</font></strong>;
<a name="line268">268: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSNEPSetComputeMatrixFunction.html#DSNEPSetComputeMatrixFunction">DSNEPSetComputeMatrixFunction</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="../docs/manualpages/DS/DSNEPMatrixFunctionFn.html#DSNEPMatrixFunctionFn">DSNEPMatrixFunctionFn</a>*,void*)</font></strong>;
<a name="line269">269: </a><strong><font color="#4169E1">SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSNEPGetComputeMatrixFunction.html#DSNEPGetComputeMatrixFunction">DSNEPGetComputeMatrixFunction</a>(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>,<a href="../docs/manualpages/DS/DSNEPMatrixFunctionFn.html#DSNEPMatrixFunctionFn">DSNEPMatrixFunctionFn</a>**,void**)</font></strong>;
<a name="line271">271: </a>SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscFunctionList.html#PetscFunctionList">PetscFunctionList</a> DSList;
<a name="line272">272: </a><strong><font color="#4169E1"><a name="DSRegister"></a>SLEPC_EXTERN <a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a> <a href="../docs/manualpages/DS/DSRegister.html#DSRegister">DSRegister</a>(const char[],<a href="https://petsc.org/release/manualpages/Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</a>(*)(<a href="../docs/manualpages/DS/DS.html#DS">DS</a>)</font></strong>);
</pre>
</body>
</html>
|