1
/*$Id: itregis.c,v 1.55 2001/03/23 23:23:29 balay Exp $*/
3
#include "src/ksp/ksp/kspimpl.h" /*I "petscksp.h" I*/
6
EXTERN int KSPCreate_Richardson(KSP);
7
EXTERN int KSPCreate_Chebychev(KSP);
8
EXTERN int KSPCreate_CG(KSP);
9
EXTERN int KSPCreate_CGNE(KSP);
10
EXTERN int KSPCreate_TCQMR(KSP);
11
EXTERN int KSPCreate_GMRES(KSP);
12
EXTERN int KSPCreate_BCGS(KSP);
13
EXTERN int KSPCreate_CGS(KSP);
14
EXTERN int KSPCreate_TFQMR(KSP);
15
EXTERN int KSPCreate_LSQR(KSP);
16
EXTERN int KSPCreate_PREONLY(KSP);
17
EXTERN int KSPCreate_CR(KSP);
18
EXTERN int KSPCreate_QCG(KSP);
19
EXTERN int KSPCreate_BiCG(KSP);
20
EXTERN int KSPCreate_FGMRES(KSP);
21
EXTERN int KSPCreate_MINRES(KSP);
22
EXTERN int KSPCreate_SYMMLQ(KSP);
23
EXTERN int KSPCreate_LGMRES(KSP);
27
This is used by KSPSetType() to make sure that at least one
28
KSPRegisterAll() is called. In general, if there is more than one
29
DLL, then KSPRegisterAll() may be called several times.
31
EXTERN PetscTruth KSPRegisterAllCalled;
34
#define __FUNCT__ "KSPRegisterAll"
36
KSPRegisterAll - Registers all of the Krylov subspace methods in the KSP package.
42
.keywords: KSP, register, all
44
.seealso: KSPRegisterDestroy()
46
int KSPRegisterAll(const char path[])
51
KSPRegisterAllCalled = PETSC_TRUE;
53
ierr = KSPRegisterDynamic(KSPCG, path,"KSPCreate_CG", KSPCreate_CG);CHKERRQ(ierr);
54
ierr = KSPRegisterDynamic(KSPCGNE, path,"KSPCreate_CGNE", KSPCreate_CGNE);CHKERRQ(ierr);
55
ierr = KSPRegisterDynamic(KSPRICHARDSON, path,"KSPCreate_Richardson",KSPCreate_Richardson);CHKERRQ(ierr);
56
ierr = KSPRegisterDynamic(KSPCHEBYCHEV, path,"KSPCreate_Chebychev", KSPCreate_Chebychev);CHKERRQ(ierr);
57
ierr = KSPRegisterDynamic(KSPGMRES, path,"KSPCreate_GMRES", KSPCreate_GMRES);CHKERRQ(ierr);
58
ierr = KSPRegisterDynamic(KSPTCQMR, path,"KSPCreate_TCQMR", KSPCreate_TCQMR);CHKERRQ(ierr);
59
ierr = KSPRegisterDynamic(KSPBCGS, path,"KSPCreate_BCGS", KSPCreate_BCGS);CHKERRQ(ierr);
60
ierr = KSPRegisterDynamic(KSPCGS, path,"KSPCreate_CGS", KSPCreate_CGS);CHKERRQ(ierr);
61
ierr = KSPRegisterDynamic(KSPTFQMR, path,"KSPCreate_TFQMR", KSPCreate_TFQMR);CHKERRQ(ierr);
62
ierr = KSPRegisterDynamic(KSPCR, path,"KSPCreate_CR", KSPCreate_CR);CHKERRQ(ierr);
63
ierr = KSPRegisterDynamic(KSPLSQR, path,"KSPCreate_LSQR", KSPCreate_LSQR);CHKERRQ(ierr);
64
ierr = KSPRegisterDynamic(KSPPREONLY, path,"KSPCreate_PREONLY", KSPCreate_PREONLY);CHKERRQ(ierr);
65
ierr = KSPRegisterDynamic(KSPQCG, path,"KSPCreate_QCG", KSPCreate_QCG);CHKERRQ(ierr);
66
ierr = KSPRegisterDynamic(KSPBICG, path,"KSPCreate_BiCG", KSPCreate_BiCG);CHKERRQ(ierr);
67
ierr = KSPRegisterDynamic(KSPFGMRES, path,"KSPCreate_FGMRES", KSPCreate_FGMRES);CHKERRQ(ierr);
68
ierr = KSPRegisterDynamic(KSPMINRES, path,"KSPCreate_MINRES", KSPCreate_MINRES);CHKERRQ(ierr);
69
ierr = KSPRegisterDynamic(KSPSYMMLQ, path,"KSPCreate_SYMMLQ", KSPCreate_SYMMLQ);CHKERRQ(ierr);
70
ierr = KSPRegisterDynamic(KSPLGMRES, path,"KSPCreate_LGMRES", KSPCreate_LGMRES);CHKERRQ(ierr);
71
PetscFunctionReturn(0);