diff -Nru slepc-2.2.1/bmake/slepc_common_rules slepc-2.2.1-patched/bmake/slepc_common_rules --- slepc-2.2.1/bmake/slepc_common_rules 2004-08-21 19:45:19.000000000 +0200 +++ slepc-2.2.1-patched/bmake/slepc_common_rules 2004-10-19 18:39:00.000000000 +0200 @@ -16,7 +16,7 @@ # Builds Fortran-77 wrappers # slepc_fortranstubs: - @-bfort -dir ${SLEPC_DIR}/src/fortran/auto \ + @-${BFORT} -dir ${SLEPC_DIR}/src/fortran/auto \ -mnative -ansi -nomsgs -anyname -mapptr -mpi -ferr -ptrprefix Petsc\ -ptr64 PETSC_USE_POINTER_CONVERSION -fcaps PETSC_HAVE_FORTRAN_CAPS \ -fuscore PETSC_HAVE_FORTRAN_UNDERSCORE ${SOURCEC} diff -Nru slepc-2.2.1/include/slepcversion.h slepc-2.2.1-patched/include/slepcversion.h --- slepc-2.2.1/include/slepcversion.h 2004-08-21 19:45:20.000000000 +0200 +++ slepc-2.2.1-patched/include/slepcversion.h 2004-10-20 13:00:06.000000000 +0200 @@ -5,12 +5,12 @@ /* Current SLEPC version number and release date */ -#define SLEPC_VERSION_NUMBER "SLEPc Version 2.2.1, Released Aug 21, 2004" +#define SLEPC_VERSION_NUMBER "SLEPc Version 2.2.1-3, Released Oct 20, 2004" #define SLEPC_VERSION_MAJOR 2 #define SLEPC_VERSION_MINOR 2 #define SLEPC_VERSION_SUBMINOR 1 -#define SLEPC_VERSION_PATCH 0 -#define SLEPC_VERSION_DATE "Aug 21, 2004" +#define SLEPC_VERSION_PATCH 3 +#define SLEPC_VERSION_DATE "Oct 20, 2004" #define SLEPC_AUTHOR_INFO "The SLEPc Team\n\ Bug reports, questions: slepc-maint@grycap.upv.es\n\ Web page: http://www.grycap.upv.es/slepc\n" diff -Nru slepc-2.2.1/src/eps/impls/power/power.c slepc-2.2.1-patched/src/eps/impls/power/power.c --- slepc-2.2.1/src/eps/impls/power/power.c 2004-08-21 19:45:21.000000000 +0200 +++ slepc-2.2.1-patched/src/eps/impls/power/power.c 2004-10-20 13:22:47.000000000 +0200 @@ -315,7 +315,7 @@ #undef __FUNCT__ #define __FUNCT__ "EPSPowerGetShiftType" -/*@ +/*@C EPSPowerGetShiftType - Gets the type of shifts used during the power iteration. diff -Nru slepc-2.2.1/src/eps/interface/basic.c slepc-2.2.1-patched/src/eps/interface/basic.c --- slepc-2.2.1/src/eps/interface/basic.c 2004-08-21 19:45:21.000000000 +0200 +++ slepc-2.2.1-patched/src/eps/interface/basic.c 2004-10-20 13:02:34.000000000 +0200 @@ -477,7 +477,7 @@ #undef __FUNCT__ #define __FUNCT__ "EPSGetST" -/*@ +/*@C EPSGetST - Obtain the spectral transformation (ST) object associated to the eigensolver object. diff -Nru slepc-2.2.1/src/eps/interface/opts.c slepc-2.2.1-patched/src/eps/interface/opts.c --- slepc-2.2.1/src/eps/interface/opts.c 2004-08-21 19:45:21.000000000 +0200 +++ slepc-2.2.1-patched/src/eps/interface/opts.c 2004-10-20 13:16:36.000000000 +0200 @@ -313,7 +313,7 @@ #undef __FUNCT__ #define __FUNCT__ "EPSGetWhichEigenpairs" -/*@ +/*@C EPSGetWhichEigenpairs - Returns which portion of the spectrum is to be sought. @@ -427,7 +427,7 @@ #undef __FUNCT__ #define __FUNCT__ "EPSGetProblemType" -/*@ +/*@C EPSGetProblemType - Gets the problem type from the EPS object. Not Collective @@ -511,7 +511,7 @@ #undef __FUNCT__ #define __FUNCT__ "EPSGetOrthogonalization" -/*@ +/*@C EPSGetOrthogonalization - Gets the orthogonalization type from the EPS object. diff -Nru slepc-2.2.1/src/fortran/auto/basicf.c slepc-2.2.1-patched/src/fortran/auto/basicf.c --- slepc-2.2.1/src/fortran/auto/basicf.c 2004-08-21 19:45:22.000000000 +0200 +++ slepc-2.2.1-patched/src/fortran/auto/basicf.c 2004-10-20 13:23:05.000000000 +0200 @@ -60,22 +60,6 @@ #ifdef MPI_BUILD_PROFILING #ifdef PETSC_HAVE_FORTRAN_CAPS -#define epsgetst_ PEPSGETST -#elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE) -#define epsgetst_ pepsgetst -#else -#define epsgetst_ pepsgetst_ -#endif -#else -#ifdef PETSC_HAVE_FORTRAN_CAPS -#define epsgetst_ EPSGETST -#elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE) -#define epsgetst_ epsgetst -#endif -#endif - -#ifdef MPI_BUILD_PROFILING -#ifdef PETSC_HAVE_FORTRAN_CAPS #define epsisgeneralized_ PEPSISGENERALIZED #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE) #define epsisgeneralized_ pepsisgeneralized @@ -118,10 +102,6 @@ void PETSC_STDCALL epssetst_(EPS *eps,ST *st, int *ierr ){ *ierr = EPSSetST(*eps,*st); } -void PETSC_STDCALL epsgetst_(EPS *eps,ST *st, int *ierr ){ -*ierr = EPSGetST(*eps, - (ST* )PetscToPointer( (st) )); -} void PETSC_STDCALL epsisgeneralized_(EPS *eps,PetscTruth* is, int *ierr ){ *ierr = EPSIsGeneralized(*eps,is); } diff -Nru slepc-2.2.1/src/fortran/auto/densef.c slepc-2.2.1-patched/src/fortran/auto/densef.c --- slepc-2.2.1/src/fortran/auto/densef.c 2004-08-21 19:45:22.000000000 +0200 +++ slepc-2.2.1-patched/src/fortran/auto/densef.c 2004-10-20 13:23:06.000000000 +0200 @@ -113,37 +113,19 @@ extern "C" { #endif void PETSC_STDCALL epssorteigenvalues_(int *n,PetscScalar *eig,PetscScalar *eigi,EPSWhich *which,int *nev,int *permout, int *ierr ){ -*ierr = EPSSortEigenvalues(*n, - (PetscScalar* )PetscToPointer( (eig) ), - (PetscScalar* )PetscToPointer( (eigi) ),*which,*nev,permout); +*ierr = EPSSortEigenvalues(*n,eig,eigi,*which,*nev,permout); } void PETSC_STDCALL epsdensenhep_(int *n,PetscScalar *A,PetscScalar *w,PetscScalar *wi,PetscScalar *V, int *ierr ){ -*ierr = EPSDenseNHEP(*n, - (PetscScalar* )PetscToPointer( (A) ), - (PetscScalar* )PetscToPointer( (w) ), - (PetscScalar* )PetscToPointer( (wi) ), - (PetscScalar* )PetscToPointer( (V) )); +*ierr = EPSDenseNHEP(*n,A,w,wi,V); } void PETSC_STDCALL epsdensenhepsorted_(int *n,PetscScalar *A,PetscScalar *w,PetscScalar *wi,PetscScalar *V,int *m,EPSWhich *which, int *ierr ){ -*ierr = EPSDenseNHEPSorted(*n, - (PetscScalar* )PetscToPointer( (A) ), - (PetscScalar* )PetscToPointer( (w) ), - (PetscScalar* )PetscToPointer( (wi) ), - (PetscScalar* )PetscToPointer( (V) ),*m,*which); +*ierr = EPSDenseNHEPSorted(*n,A,w,wi,V,*m,*which); } void PETSC_STDCALL epsdenseschur_(int *n,int *k,PetscScalar *H,PetscScalar *Z,PetscScalar *wr,PetscScalar *wi, int *ierr ){ -*ierr = EPSDenseSchur(*n,*k, - (PetscScalar* )PetscToPointer( (H) ), - (PetscScalar* )PetscToPointer( (Z) ), - (PetscScalar* )PetscToPointer( (wr) ), - (PetscScalar* )PetscToPointer( (wi) )); +*ierr = EPSDenseSchur(*n,*k,H,Z,wr,wi); } void PETSC_STDCALL epssortdenseschur_(int *n,int *k,PetscScalar *T,PetscScalar *Z,PetscScalar *wr,PetscScalar *wi, int *ierr ){ -*ierr = EPSSortDenseSchur(*n,*k, - (PetscScalar* )PetscToPointer( (T) ), - (PetscScalar* )PetscToPointer( (Z) ), - (PetscScalar* )PetscToPointer( (wr) ), - (PetscScalar* )PetscToPointer( (wi) )); +*ierr = EPSSortDenseSchur(*n,*k,T,Z,wr,wi); } #if defined(__cplusplus) } diff -Nru slepc-2.2.1/src/fortran/auto/optsf.c slepc-2.2.1-patched/src/fortran/auto/optsf.c --- slepc-2.2.1/src/fortran/auto/optsf.c 2004-08-21 19:45:22.000000000 +0200 +++ slepc-2.2.1-patched/src/fortran/auto/optsf.c 2004-10-20 13:23:06.000000000 +0200 @@ -124,22 +124,6 @@ #ifdef MPI_BUILD_PROFILING #ifdef PETSC_HAVE_FORTRAN_CAPS -#define epsgetwhicheigenpairs_ PEPSGETWHICHEIGENPAIRS -#elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE) -#define epsgetwhicheigenpairs_ pepsgetwhicheigenpairs -#else -#define epsgetwhicheigenpairs_ pepsgetwhicheigenpairs_ -#endif -#else -#ifdef PETSC_HAVE_FORTRAN_CAPS -#define epsgetwhicheigenpairs_ EPSGETWHICHEIGENPAIRS -#elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE) -#define epsgetwhicheigenpairs_ epsgetwhicheigenpairs -#endif -#endif - -#ifdef MPI_BUILD_PROFILING -#ifdef PETSC_HAVE_FORTRAN_CAPS #define epssetproblemtype_ PEPSSETPROBLEMTYPE #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE) #define epssetproblemtype_ pepssetproblemtype @@ -156,22 +140,6 @@ #ifdef MPI_BUILD_PROFILING #ifdef PETSC_HAVE_FORTRAN_CAPS -#define epsgetproblemtype_ PEPSGETPROBLEMTYPE -#elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE) -#define epsgetproblemtype_ pepsgetproblemtype -#else -#define epsgetproblemtype_ pepsgetproblemtype_ -#endif -#else -#ifdef PETSC_HAVE_FORTRAN_CAPS -#define epsgetproblemtype_ EPSGETPROBLEMTYPE -#elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE) -#define epsgetproblemtype_ epsgetproblemtype -#endif -#endif - -#ifdef MPI_BUILD_PROFILING -#ifdef PETSC_HAVE_FORTRAN_CAPS #define epssetorthogonalization_ PEPSSETORTHOGONALIZATION #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE) #define epssetorthogonalization_ pepssetorthogonalization @@ -186,22 +154,6 @@ #endif #endif -#ifdef MPI_BUILD_PROFILING -#ifdef PETSC_HAVE_FORTRAN_CAPS -#define epsgetorthogonalization_ PEPSGETORTHOGONALIZATION -#elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE) -#define epsgetorthogonalization_ pepsgetorthogonalization -#else -#define epsgetorthogonalization_ pepsgetorthogonalization_ -#endif -#else -#ifdef PETSC_HAVE_FORTRAN_CAPS -#define epsgetorthogonalization_ EPSGETORTHOGONALIZATION -#elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE) -#define epsgetorthogonalization_ epsgetorthogonalization -#endif -#endif - /* Definitions of Fortran Wrapper routines */ @@ -212,8 +164,7 @@ *ierr = EPSSetFromOptions(*eps); } void PETSC_STDCALL epsgettolerances_(EPS *eps,PetscReal *tol,int *maxits, int *ierr ){ -*ierr = EPSGetTolerances(*eps, - (PetscReal* )PetscToPointer( (tol) ),maxits); +*ierr = EPSGetTolerances(*eps,tol,maxits); } void PETSC_STDCALL epssettolerances_(EPS *eps,PetscReal *tol,int *maxits, int *ierr ){ *ierr = EPSSetTolerances(*eps,*tol,*maxits); @@ -227,26 +178,12 @@ void PETSC_STDCALL epssetwhicheigenpairs_(EPS *eps,EPSWhich *which, int *ierr ){ *ierr = EPSSetWhichEigenpairs(*eps,*which); } -void PETSC_STDCALL epsgetwhicheigenpairs_(EPS *eps,EPSWhich *which, int *ierr ){ -*ierr = EPSGetWhichEigenpairs(*eps, - (EPSWhich* )PetscToPointer( (which) )); -} void PETSC_STDCALL epssetproblemtype_(EPS *eps,EPSProblemType *type, int *ierr ){ *ierr = EPSSetProblemType(*eps,*type); } -void PETSC_STDCALL epsgetproblemtype_(EPS *eps,EPSProblemType *type, int *ierr ){ -*ierr = EPSGetProblemType(*eps, - (EPSProblemType* )PetscToPointer( (type) )); -} void PETSC_STDCALL epssetorthogonalization_(EPS *eps,EPSOrthogonalizationType *type,EPSOrthogonalizationRefinementType *refinement,PetscReal *eta, int *ierr ){ *ierr = EPSSetOrthogonalization(*eps,*type,*refinement,*eta); } -void PETSC_STDCALL epsgetorthogonalization_(EPS *eps,EPSOrthogonalizationType *type,EPSOrthogonalizationRefinementType *refinement,PetscReal *eta, int *ierr ){ -*ierr = EPSGetOrthogonalization(*eps, - (EPSOrthogonalizationType* )PetscToPointer( (type) ), - (EPSOrthogonalizationRefinementType* )PetscToPointer( (refinement) ), - (PetscReal* )PetscToPointer( (eta) )); -} #if defined(__cplusplus) } #endif diff -Nru slepc-2.2.1/src/fortran/auto/orthogf.c slepc-2.2.1-patched/src/fortran/auto/orthogf.c --- slepc-2.2.1/src/fortran/auto/orthogf.c 2004-08-21 19:45:22.000000000 +0200 +++ slepc-2.2.1-patched/src/fortran/auto/orthogf.c 2004-10-20 13:23:06.000000000 +0200 @@ -81,8 +81,7 @@ extern "C" { #endif void PETSC_STDCALL epsqrdecomposition_(EPS *eps,Vec *V,int *m,int *n,PetscScalar *R,int *ldr, int *ierr ){ -*ierr = EPSQRDecomposition(*eps,V,*m,*n, - (PetscScalar* )PetscToPointer( (R) ),*ldr); +*ierr = EPSQRDecomposition(*eps,V,*m,*n,R,*ldr); } void PETSC_STDCALL epspurge_(EPS *eps,Vec v, int *ierr ){ *ierr = EPSPurge(*eps, @@ -90,9 +89,7 @@ } void PETSC_STDCALL epsorthogonalize_(EPS *eps,int *n,Vec *V,Vec v,PetscScalar *H,PetscReal *norm,PetscTruth *breakdown, int *ierr ){ *ierr = EPSOrthogonalize(*eps,*n,V, - (Vec)PetscToPointer( (v) ), - (PetscScalar* )PetscToPointer( (H) ), - (PetscReal* )PetscToPointer( (norm) ),breakdown); + (Vec)PetscToPointer( (v) ),H,norm,breakdown); } #if defined(__cplusplus) } diff -Nru slepc-2.2.1/src/fortran/auto/powerf.c slepc-2.2.1-patched/src/fortran/auto/powerf.c --- slepc-2.2.1/src/fortran/auto/powerf.c 2004-08-21 19:45:22.000000000 +0200 +++ slepc-2.2.1-patched/src/fortran/auto/powerf.c 2004-10-20 13:23:06.000000000 +0200 @@ -42,22 +42,6 @@ #endif #endif -#ifdef MPI_BUILD_PROFILING -#ifdef PETSC_HAVE_FORTRAN_CAPS -#define epspowergetshifttype_ PEPSPOWERGETSHIFTTYPE -#elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE) -#define epspowergetshifttype_ pepspowergetshifttype -#else -#define epspowergetshifttype_ pepspowergetshifttype_ -#endif -#else -#ifdef PETSC_HAVE_FORTRAN_CAPS -#define epspowergetshifttype_ EPSPOWERGETSHIFTTYPE -#elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE) -#define epspowergetshifttype_ epspowergetshifttype -#endif -#endif - /* Definitions of Fortran Wrapper routines */ @@ -67,10 +51,6 @@ void PETSC_STDCALL epspowersetshifttype_(EPS *eps,EPSPowerShiftType *shift, int *ierr ){ *ierr = EPSPowerSetShiftType(*eps,*shift); } -void PETSC_STDCALL epspowergetshifttype_(EPS *eps,EPSPowerShiftType *shift, int *ierr ){ -*ierr = EPSPowerGetShiftType(*eps, - (EPSPowerShiftType* )PetscToPointer( (shift) )); -} #if defined(__cplusplus) } #endif diff -Nru slepc-2.2.1/src/fortran/auto/solvef.c slepc-2.2.1-patched/src/fortran/auto/solvef.c --- slepc-2.2.1/src/fortran/auto/solvef.c 2004-08-21 19:45:22.000000000 +0200 +++ slepc-2.2.1-patched/src/fortran/auto/solvef.c 2004-10-20 13:23:06.000000000 +0200 @@ -224,27 +224,21 @@ *ierr = EPSGetInvariantSubspace(*eps,v); } void PETSC_STDCALL epsgeteigenpair_(EPS *eps,int *i,PetscScalar *eigr,PetscScalar *eigi,Vec Vr,Vec Vi, int *ierr ){ -*ierr = EPSGetEigenpair(*eps,*i, - (PetscScalar* )PetscToPointer( (eigr) ), - (PetscScalar* )PetscToPointer( (eigi) ), +*ierr = EPSGetEigenpair(*eps,*i,eigr,eigi, (Vec)PetscToPointer( (Vr) ), (Vec)PetscToPointer( (Vi) )); } void PETSC_STDCALL epsgeterrorestimate_(EPS *eps,int *i,PetscReal *errest, int *ierr ){ -*ierr = EPSGetErrorEstimate(*eps,*i, - (PetscReal* )PetscToPointer( (errest) )); +*ierr = EPSGetErrorEstimate(*eps,*i,errest); } void PETSC_STDCALL epscomputeresidualnorm_(EPS *eps,int *i,PetscReal *norm, int *ierr ){ -*ierr = EPSComputeResidualNorm(*eps,*i, - (PetscReal* )PetscToPointer( (norm) )); +*ierr = EPSComputeResidualNorm(*eps,*i,norm); } void PETSC_STDCALL epscomputerelativeerror_(EPS *eps,int *i,PetscReal *error, int *ierr ){ -*ierr = EPSComputeRelativeError(*eps,*i, - (PetscReal* )PetscToPointer( (error) )); +*ierr = EPSComputeRelativeError(*eps,*i,error); } void PETSC_STDCALL epsreverseprojection_(EPS *eps,Vec* V,PetscScalar *S,int *k,int *m,Vec* work, int *ierr ){ -*ierr = EPSReverseProjection(*eps,V, - (PetscScalar* )PetscToPointer( (S) ),*k,*m,work); +*ierr = EPSReverseProjection(*eps,V,S,*k,*m,work); } void PETSC_STDCALL epscomputeexplicitoperator_(EPS *eps,Mat *mat, int *ierr ){ *ierr = EPSComputeExplicitOperator(*eps,mat); diff -Nru slepc-2.2.1/src/fortran/auto/stfuncf.c slepc-2.2.1-patched/src/fortran/auto/stfuncf.c --- slepc-2.2.1/src/fortran/auto/stfuncf.c 2004-08-21 19:45:22.000000000 +0200 +++ slepc-2.2.1-patched/src/fortran/auto/stfuncf.c 2004-10-20 13:23:06.000000000 +0200 @@ -89,8 +89,7 @@ *ierr = STSetShift(*st,*shift); } void PETSC_STDCALL stgetshift_(ST *st,PetscScalar* shift, int *ierr ){ -*ierr = STGetShift(*st, - (PetscScalar* )PetscToPointer( (shift) )); +*ierr = STGetShift(*st,shift); } #if defined(__cplusplus) } diff -Nru slepc-2.2.1/src/fortran/auto/stsetf.c slepc-2.2.1-patched/src/fortran/auto/stsetf.c --- slepc-2.2.1/src/fortran/auto/stsetf.c 2004-08-21 19:45:22.000000000 +0200 +++ slepc-2.2.1-patched/src/fortran/auto/stsetf.c 2004-10-20 13:23:06.000000000 +0200 @@ -76,22 +76,6 @@ #ifdef MPI_BUILD_PROFILING #ifdef PETSC_HAVE_FORTRAN_CAPS -#define stgetmatmode_ PSTGETMATMODE -#elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE) -#define stgetmatmode_ pstgetmatmode -#else -#define stgetmatmode_ pstgetmatmode_ -#endif -#else -#ifdef PETSC_HAVE_FORTRAN_CAPS -#define stgetmatmode_ STGETMATMODE -#elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE) -#define stgetmatmode_ stgetmatmode -#endif -#endif - -#ifdef MPI_BUILD_PROFILING -#ifdef PETSC_HAVE_FORTRAN_CAPS #define stsetbilinearform_ PSTSETBILINEARFORM #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE) #define stsetbilinearform_ pstsetbilinearform @@ -121,10 +105,6 @@ void PETSC_STDCALL stsetmatmode_(ST *st,STMatMode *mode, int *ierr ){ *ierr = STSetMatMode(*st,*mode); } -void PETSC_STDCALL stgetmatmode_(ST *st,STMatMode *mode, int *ierr ){ -*ierr = STGetMatMode(*st, - (STMatMode* )PetscToPointer( (mode) )); -} void PETSC_STDCALL stsetbilinearform_(ST *st,STBilinearForm *form, int *ierr ){ *ierr = STSetBilinearForm(*st,*form); } diff -Nru slepc-2.2.1/src/fortran/auto/stsolvef.c slepc-2.2.1-patched/src/fortran/auto/stsolvef.c --- slepc-2.2.1/src/fortran/auto/stsolvef.c 2004-08-21 19:45:22.000000000 +0200 +++ slepc-2.2.1-patched/src/fortran/auto/stsolvef.c 2004-10-20 13:23:06.000000000 +0200 @@ -161,22 +161,18 @@ } void PETSC_STDCALL stnorm_(ST *st,Vec x,PetscReal *norm, int *ierr ){ *ierr = STNorm(*st, - (Vec)PetscToPointer( (x) ), - (PetscReal* )PetscToPointer( (norm) )); + (Vec)PetscToPointer( (x) ),norm); } void PETSC_STDCALL stinnerproduct_(ST *st,Vec x,Vec y,PetscScalar *p, int *ierr ){ *ierr = STInnerProduct(*st, (Vec)PetscToPointer( (x) ), - (Vec)PetscToPointer( (y) ), - (PetscScalar* )PetscToPointer( (p) )); + (Vec)PetscToPointer( (y) ),p); } void PETSC_STDCALL stsetup_(ST *st, int *ierr ){ *ierr = STSetUp(*st); } void PETSC_STDCALL stbacktransform_(ST *st,PetscScalar* eigr,PetscScalar* eigi, int *ierr ){ -*ierr = STBackTransform(*st, - (PetscScalar* )PetscToPointer( (eigr) ), - (PetscScalar* )PetscToPointer( (eigi) )); +*ierr = STBackTransform(*st,eigr,eigi); } #if defined(__cplusplus) } diff -Nru slepc-2.2.1/src/fortran/custom/zeps.c slepc-2.2.1-patched/src/fortran/custom/zeps.c --- slepc-2.2.1/src/fortran/custom/zeps.c 2004-08-21 19:45:22.000000000 +0200 +++ slepc-2.2.1-patched/src/fortran/custom/zeps.c 2004-10-20 13:19:54.000000000 +0200 @@ -15,6 +15,11 @@ #define epsdefaultvaluesmonitor_ EPSDEFAULTVALUESMONITOR #define epssetmonitor_ EPSSETMONITOR #define epssetvaluesmonitor_ EPSSETVALUESMONITOR +#define epssetst_ EPSSETST +#define epsgetwhicheigenpairs_ EPSGETWHICHEIGENPAIRS +#define epsgetproblemtype_ EPSGETPROBLEMTYPE +#define epsgetorthogonalization_ EPSGETORTHOGONALIZATION +#define epspowergetshifttype_ EPSPOWERGETSHIFTTYPE #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) #define epsview_ epsview #define epssetoptionsprefix_ epssetoptionsprefix @@ -27,6 +32,11 @@ #define epsdefaultvaluesmonitor_ epsdefaultvaluesmonitor #define epssetmonitor_ epssetmonitor #define epssetvaluesmonitor_ epssetvaluesmonitor +#define epssetst_ epssetst +#define epsgetwhicheigenpairs_ epsgetwhicheigenpairs +#define epsgetproblemtype_ epsgetproblemtype +#define epsgetorthogonalization_ epsgetorthogonalization +#define epspowergetshifttype_ epspowergetshifttype #endif EXTERN_C_BEGIN @@ -137,5 +147,30 @@ FIXRETURNCHAR(prefix,len); } +void PETSC_STDCALL epsgetst_(EPS *eps,ST *st,int *ierr) +{ + *ierr = EPSGetST(*eps,st); +} + +void PETSC_STDCALL epsgetwhicheigenpairs_(EPS *eps,EPSWhich *which,int *ierr) +{ + *ierr = EPSGetWhichEigenpairs(*eps,which); +} + +void PETSC_STDCALL epsgetproblemtype_(EPS *eps,EPSProblemType *type,int *ierr) +{ + *ierr = EPSGetProblemType(*eps,type); +} + +void PETSC_STDCALL epsgetorthogonalization_(EPS *eps,EPSOrthogonalizationType *type,EPSOrthogonalizationRefinementType *refinement,PetscReal *eta,int *ierr) +{ + *ierr = EPSGetOrthogonalization(*eps,type,refinement,eta); +} + +void PETSC_STDCALL epspowergetshifttype_(EPS *eps,EPSPowerShiftType *shift,int *ierr) +{ + *ierr = EPSPowerGetShiftType(*eps,shift); +} + EXTERN_C_END diff -Nru slepc-2.2.1/src/fortran/custom/zst.c slepc-2.2.1-patched/src/fortran/custom/zst.c --- slepc-2.2.1/src/fortran/custom/zst.c 2004-08-21 19:45:22.000000000 +0200 +++ slepc-2.2.1-patched/src/fortran/custom/zst.c 2004-10-20 13:21:41.000000000 +0200 @@ -13,6 +13,7 @@ #define stappendoptionsprefix_ STAPPENDOPTIONSPREFIX #define stgetoptionsprefix_ STGETOPTIONSPREFIX #define stview_ STVIEW +#define stgetmatmode_ STGETMATMODE #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) #define stsettype_ stsettype #define stregisterdestroy_ stregisterdestroy @@ -24,6 +25,7 @@ #define stappendoptionsprefix_ stappendoptionsprefix #define stgetoptionsprefix_ stgetoptionsprefix #define stview_ stview +#define stgetmatmode_ stgetmatmode #endif EXTERN_C_BEGIN @@ -119,5 +121,10 @@ *ierr = STView(*st,v); } +void PETSC_STDCALL stgetmatmode_(ST *st,STMatMode *mode,int *ierr) +{ + *ierr = STGetMatMode(*st,mode); +} + EXTERN_C_END diff -Nru slepc-2.2.1/src/st/interface/stset.c slepc-2.2.1-patched/src/st/interface/stset.c --- slepc-2.2.1/src/st/interface/stset.c 2004-08-21 19:45:22.000000000 +0200 +++ slepc-2.2.1-patched/src/st/interface/stset.c 2004-10-20 13:21:48.000000000 +0200 @@ -285,7 +285,7 @@ #undef __FUNCT__ #define __FUNCT__ "STGetMatMode" -/*@ +/*@C STGetMatMode - Gets a flag that indicates how the matrix is being shifted in the shift-and-invert and Cayley spectral transformations. diff -Nru slepc-2.2.1/src/sys/slepcutil.c slepc-2.2.1-patched/src/sys/slepcutil.c --- slepc-2.2.1/src/sys/slepcutil.c 2004-08-21 19:45:22.000000000 +0200 +++ slepc-2.2.1-patched/src/sys/slepcutil.c 2004-10-19 17:36:14.000000000 +0200 @@ -34,7 +34,13 @@ ierr = VecGetOwnershipRange(x,&low,&high);CHKERRQ(ierr); ierr = VecGetArray(x,&px);CHKERRQ(ierr); for (i=0;i=low && i