xref: /petsc/src/ksp/ksp/impls/gmres/gmpre.c (revision 503c0ea9b45bcfbcebbb1ea5341243bbc69f0bea)
1 
2 #include <../src/ksp/ksp/impls/gmres/gmresimpl.h>       /*I  "petscksp.h"  I*/
3 
4 /*@
5     KSPGMRESSetPreAllocateVectors - Causes GMRES and FGMRES to preallocate all its
6     needed work vectors at initial setup rather than the default, which
7     is to allocate them in chunks when needed.
8 
9     Logically Collective on ksp
10 
11     Input Parameter:
12 .   ksp   - iterative context obtained from KSPCreate
13 
14     Options Database Key:
15 .   -ksp_gmres_preallocate - Activates KSPGmresSetPreAllocateVectors()
16 
17     Level: intermediate
18 
19 .seealso: KSPGMRESSetRestart(), KSPGMRESSetOrthogonalization(), KSPGMRESGetOrthogonalization()
20 @*/
21 PetscErrorCode  KSPGMRESSetPreAllocateVectors(KSP ksp)
22 {
23   PetscFunctionBegin;
24   PetscCall(PetscTryMethod(ksp,"KSPGMRESSetPreAllocateVectors_C",(KSP),(ksp)));
25   PetscFunctionReturn(0);
26 }
27