| Line 36... |
Line 36... |
|
|
typedef char * EPSType;
|
typedef char * EPSType;
|
|
|
typedef enum { EPS_HEP=1, EPS_GHEP,
|
typedef enum { EPS_HEP=1, EPS_GHEP,
|
EPS_NHEP, EPS_GNHEP } EPSProblemType;
|
EPS_NHEP, EPS_GNHEP } EPSProblemType;
|
|
|
|
typedef enum { EPS_ONE_SIDE, EPS_TWO_SIDE } EPSClass;
|
|
|
typedef enum { EPS_LARGEST_MAGNITUDE, EPS_SMALLEST_MAGNITUDE,
|
typedef enum { EPS_LARGEST_MAGNITUDE, EPS_SMALLEST_MAGNITUDE,
|
EPS_LARGEST_REAL, EPS_SMALLEST_REAL,
|
EPS_LARGEST_REAL, EPS_SMALLEST_REAL,
|
EPS_LARGEST_IMAGINARY, EPS_SMALLEST_IMAGINARY } EPSWhich;
|
EPS_LARGEST_IMAGINARY, EPS_SMALLEST_IMAGINARY } EPSWhich;
|
|
|
| Line 51... |
Line 53... |
EXTERN PetscErrorCode EPSDestroy(EPS);
|
EXTERN PetscErrorCode EPSDestroy(EPS);
|
EXTERN PetscErrorCode EPSSetType(EPS,EPSType);
|
EXTERN PetscErrorCode EPSSetType(EPS,EPSType);
|
EXTERN PetscErrorCode EPSGetType(EPS,EPSType*);
|
EXTERN PetscErrorCode EPSGetType(EPS,EPSType*);
|
EXTERN PetscErrorCode EPSSetProblemType(EPS,EPSProblemType);
|
EXTERN PetscErrorCode EPSSetProblemType(EPS,EPSProblemType);
|
EXTERN PetscErrorCode EPSGetProblemType(EPS,EPSProblemType*);
|
EXTERN PetscErrorCode EPSGetProblemType(EPS,EPSProblemType*);
|
|
EXTERN PetscErrorCode EPSSetClass(EPS,EPSClass);
|
|
EXTERN PetscErrorCode EPSGetClass(EPS,EPSClass*);
|
EXTERN PetscErrorCode EPSSetOperators(EPS,Mat,Mat);
|
EXTERN PetscErrorCode EPSSetOperators(EPS,Mat,Mat);
|
EXTERN PetscErrorCode EPSSetFromOptions(EPS);
|
EXTERN PetscErrorCode EPSSetFromOptions(EPS);
|
EXTERN PetscErrorCode EPSSetUp(EPS);
|
EXTERN PetscErrorCode EPSSetUp(EPS);
|
EXTERN PetscErrorCode EPSSolve(EPS);
|
EXTERN PetscErrorCode EPSSolve(EPS);
|
EXTERN PetscErrorCode EPSView(EPS,PetscViewer);
|
EXTERN PetscErrorCode EPSView(EPS,PetscViewer);
|
| Line 76... |
Line 80... |
EXTERN PetscErrorCode EPSSetDimensions(EPS,int,int);
|
EXTERN PetscErrorCode EPSSetDimensions(EPS,int,int);
|
EXTERN PetscErrorCode EPSGetDimensions(EPS,int*,int*);
|
EXTERN PetscErrorCode EPSGetDimensions(EPS,int*,int*);
|
|
|
EXTERN PetscErrorCode EPSGetConverged(EPS,int*);
|
EXTERN PetscErrorCode EPSGetConverged(EPS,int*);
|
EXTERN PetscErrorCode EPSGetEigenpair(EPS,int,PetscScalar*,PetscScalar*,Vec,Vec);
|
EXTERN PetscErrorCode EPSGetEigenpair(EPS,int,PetscScalar*,PetscScalar*,Vec,Vec);
|
|
EXTERN PetscErrorCode EPSGetValue(EPS,int,PetscScalar*,PetscScalar*);
|
|
EXTERN PetscErrorCode EPSGetRightVector(EPS,int,Vec,Vec);
|
|
EXTERN PetscErrorCode EPSGetLeftVector(EPS,int,Vec,Vec);
|
EXTERN PetscErrorCode EPSComputeRelativeError(EPS,int,PetscReal*);
|
EXTERN PetscErrorCode EPSComputeRelativeError(EPS,int,PetscReal*);
|
|
EXTERN PetscErrorCode EPSComputeRelativeErrorLeft(EPS,int,PetscReal*);
|
EXTERN PetscErrorCode EPSComputeResidualNorm(EPS,int,PetscReal*);
|
EXTERN PetscErrorCode EPSComputeResidualNorm(EPS,int,PetscReal*);
|
|
EXTERN PetscErrorCode EPSComputeResidualNormLeft(EPS,int,PetscReal*);
|
EXTERN PetscErrorCode EPSGetInvariantSubspace(EPS,Vec*);
|
EXTERN PetscErrorCode EPSGetInvariantSubspace(EPS,Vec*);
|
|
EXTERN PetscErrorCode EPSGetLeftInvariantSubspace(EPS,Vec*);
|
EXTERN PetscErrorCode EPSGetErrorEstimate(EPS,int,PetscReal*);
|
EXTERN PetscErrorCode EPSGetErrorEstimate(EPS,int,PetscReal*);
|
|
EXTERN PetscErrorCode EPSGetErrorEstimateLeft(EPS,int,PetscReal*);
|
|
|
EXTERN PetscErrorCode EPSSetMonitor(EPS,int (*)(EPS,int,int,PetscScalar*,PetscScalar*,PetscReal*,int,void*),void*);
|
EXTERN PetscErrorCode EPSSetMonitor(EPS,int (*)(EPS,int,int,PetscScalar*,PetscScalar*,PetscReal*,int,void*),void*);
|
EXTERN PetscErrorCode EPSClearMonitor(EPS);
|
EXTERN PetscErrorCode EPSClearMonitor(EPS);
|
EXTERN PetscErrorCode EPSGetMonitorContext(EPS,void **);
|
EXTERN PetscErrorCode EPSGetMonitorContext(EPS,void **);
|
EXTERN PetscErrorCode EPSGetIterationNumber(EPS,int*);
|
EXTERN PetscErrorCode EPSGetIterationNumber(EPS,int*);
|
EXTERN PetscErrorCode EPSGetNumberLinearIterations(EPS eps,int*);
|
EXTERN PetscErrorCode EPSGetNumberLinearIterations(EPS eps,int*);
|
|
|
EXTERN PetscErrorCode EPSSetInitialVector(EPS,Vec);
|
EXTERN PetscErrorCode EPSSetInitialVector(EPS,Vec);
|
EXTERN PetscErrorCode EPSGetInitialVector(EPS,Vec*);
|
EXTERN PetscErrorCode EPSGetInitialVector(EPS,Vec*);
|
|
EXTERN PetscErrorCode EPSSetLeftInitialVector(EPS,Vec);
|
|
EXTERN PetscErrorCode EPSGetLeftInitialVector(EPS,Vec*);
|
EXTERN PetscErrorCode EPSSetWhichEigenpairs(EPS,EPSWhich);
|
EXTERN PetscErrorCode EPSSetWhichEigenpairs(EPS,EPSWhich);
|
EXTERN PetscErrorCode EPSGetWhichEigenpairs(EPS,EPSWhich*);
|
EXTERN PetscErrorCode EPSGetWhichEigenpairs(EPS,EPSWhich*);
|
EXTERN PetscErrorCode EPSSetOrthogonalization(EPS,EPSOrthogonalizationType,EPSOrthogonalizationRefinementType,PetscReal);
|
EXTERN PetscErrorCode EPSSetOrthogonalization(EPS,EPSOrthogonalizationType,EPSOrthogonalizationRefinementType,PetscReal);
|
EXTERN PetscErrorCode EPSGetOrthogonalization(EPS,EPSOrthogonalizationType*,EPSOrthogonalizationRefinementType*,PetscReal*);
|
EXTERN PetscErrorCode EPSGetOrthogonalization(EPS,EPSOrthogonalizationType*,EPSOrthogonalizationRefinementType*,PetscReal*);
|
EXTERN PetscErrorCode EPSIsGeneralized(EPS,PetscTruth*);
|
EXTERN PetscErrorCode EPSIsGeneralized(EPS,PetscTruth*);
|
EXTERN PetscErrorCode EPSIsHermitian(EPS,PetscTruth*);
|
EXTERN PetscErrorCode EPSIsHermitian(EPS,PetscTruth*);
|
|
|
EXTERN PetscErrorCode EPSDefaultMonitor(EPS,int,int,PetscScalar*,PetscScalar*,PetscReal*,int,void*);
|
EXTERN PetscErrorCode EPSDefaultMonitor(EPS,int,int,PetscScalar*,PetscScalar*,PetscReal*,int,void*);
|
EXTERN PetscErrorCode EPSLGMonitor(EPS,int,int,PetscScalar*,PetscScalar*,PetscReal*,int,void*);
|
EXTERN PetscErrorCode EPSLGMonitor(EPS,int,int,PetscScalar*,PetscScalar*,PetscReal*,int,void*);
|
|
|
|
EXTERN PetscErrorCode EPSAttachDeflationSpace(EPS,int,Vec*,PetscTruth);
|
|
EXTERN PetscErrorCode EPSRemoveDeflationSpace(EPS);
|
|
|
EXTERN PetscErrorCode EPSSetOptionsPrefix(EPS,char*);
|
EXTERN PetscErrorCode EPSSetOptionsPrefix(EPS,char*);
|
EXTERN PetscErrorCode EPSAppendOptionsPrefix(EPS,char*);
|
EXTERN PetscErrorCode EPSAppendOptionsPrefix(EPS,char*);
|
EXTERN PetscErrorCode EPSGetOptionsPrefix(EPS,char**);
|
EXTERN PetscErrorCode EPSGetOptionsPrefix(EPS,char**);
|
|
|
| Line 114... |
Line 130... |
EPS_CONVERGED_ITERATING = 0} EPSConvergedReason;
|
EPS_CONVERGED_ITERATING = 0} EPSConvergedReason;
|
|
|
EXTERN PetscErrorCode EPSGetConvergedReason(EPS,EPSConvergedReason *);
|
EXTERN PetscErrorCode EPSGetConvergedReason(EPS,EPSConvergedReason *);
|
|
|
EXTERN PetscErrorCode EPSSortEigenvalues(int,PetscScalar*,PetscScalar*,EPSWhich,int,int*);
|
EXTERN PetscErrorCode EPSSortEigenvalues(int,PetscScalar*,PetscScalar*,EPSWhich,int,int*);
|
EXTERN PetscErrorCode EPSDenseNHEP(int,PetscScalar*,PetscScalar*,PetscScalar*,PetscScalar*);
|
EXTERN PetscErrorCode EPSDenseNHEP(int,PetscScalar*,PetscScalar*,PetscScalar*,PetscScalar*,PetscScalar*);
|
EXTERN PetscErrorCode EPSDenseGNHEP(int,PetscScalar*,PetscScalar*,PetscScalar*,PetscScalar*,PetscScalar*);
|
EXTERN PetscErrorCode EPSDenseGNHEP(int,PetscScalar*,PetscScalar*,PetscScalar*,PetscScalar*,PetscScalar*,PetscScalar*);
|
EXTERN PetscErrorCode EPSDenseHEP(int,PetscScalar*,PetscReal*,PetscScalar*);
|
EXTERN PetscErrorCode EPSDenseHEP(int,PetscScalar*,PetscReal*,PetscScalar*);
|
EXTERN PetscErrorCode EPSDenseGHEP(int,PetscScalar*,PetscScalar*,PetscReal*,PetscScalar*);
|
EXTERN PetscErrorCode EPSDenseGHEP(int,PetscScalar*,PetscScalar*,PetscReal*,PetscScalar*);
|
EXTERN PetscErrorCode EPSDenseSchur(int,int,PetscScalar*,PetscScalar*,PetscScalar*,PetscScalar*);
|
EXTERN PetscErrorCode EPSDenseSchur(int,int,PetscScalar*,PetscScalar*,PetscScalar*,PetscScalar*);
|
EXTERN PetscErrorCode EPSSortDenseSchur(int,int,PetscScalar*,PetscScalar*,PetscScalar*,PetscScalar*);
|
EXTERN PetscErrorCode EPSSortDenseSchur(int,int,PetscScalar*,PetscScalar*,PetscScalar*,PetscScalar*);
|
|
|
EXTERN PetscErrorCode EPSPurge(EPS,Vec);
|
EXTERN PetscErrorCode EPSPurge(EPS,Vec);
|
EXTERN PetscErrorCode EPSOrthogonalize(EPS,int,Vec*,Vec,PetscScalar*,PetscReal*,PetscTruth*);
|
EXTERN PetscErrorCode EPSOrthogonalize(EPS,int,Vec*,Vec,PetscScalar*,PetscReal*,PetscTruth*);
|
|
EXTERN PetscErrorCode EPSBiOrthogonalize(EPS,int,Vec*,Vec*,Vec,PetscScalar*,PetscReal*);
|
EXTERN PetscErrorCode EPSQRDecomposition(EPS,Vec*,int,int,PetscScalar*,int);
|
EXTERN PetscErrorCode EPSQRDecomposition(EPS,Vec*,int,int,PetscScalar*,int);
|
EXTERN PetscErrorCode EPSReverseProjection(EPS,Vec*,PetscScalar*,int,int,Vec*);
|
EXTERN PetscErrorCode EPSReverseProjection(EPS,Vec*,PetscScalar*,int,int,Vec*);
|
EXTERN PetscErrorCode EPSGetStartVector(EPS,int,Vec);
|
EXTERN PetscErrorCode EPSGetStartVector(EPS,int,Vec);
|
|
EXTERN PetscErrorCode EPSGetLeftStartVector(EPS,int,Vec);
|
|
|
EXTERN PetscErrorCode STPreSolve(ST,EPS);
|
EXTERN PetscErrorCode STPreSolve(ST,EPS);
|
EXTERN PetscErrorCode STPostSolve(ST,EPS);
|
EXTERN PetscErrorCode STPostSolve(ST,EPS);
|
|
|
EXTERN PetscErrorCode EPSAttachDeflationSpace(EPS,int,Vec*,PetscTruth);
|
|
EXTERN PetscErrorCode EPSRemoveDeflationSpace(EPS);
|
|
|
|
/* --------- options specific to particular eigensolvers -------- */
|
/* --------- options specific to particular eigensolvers -------- */
|
|
|
typedef enum { EPSPOWER_SHIFT_CONSTANT, EPSPOWER_SHIFT_RAYLEIGH,
|
typedef enum { EPSPOWER_SHIFT_CONSTANT, EPSPOWER_SHIFT_RAYLEIGH,
|
EPSPOWER_SHIFT_WILKINSON } EPSPowerShiftType;
|
EPSPOWER_SHIFT_WILKINSON } EPSPowerShiftType;
|