xref: /petsc/src/ksp/ksp/impls/gmres/gmpre.c (revision a8f51744601f91dc30d5f98153b1ecd91eebb0e5)
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
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: [](ch_ksp), `KSPGMRESSetRestart()`, `KSPGMRESSetOrthogonalization()`, `KSPGMRESGetOrthogonalization()`
20 @*/
21 PetscErrorCode KSPGMRESSetPreAllocateVectors(KSP ksp)
22 {
23   PetscFunctionBegin;
24   PetscTryMethod(ksp, "KSPGMRESSetPreAllocateVectors_C", (KSP), (ksp));
25   PetscFunctionReturn(PETSC_SUCCESS);
26 }
27