Loading src/EigenvalueSolverTypes.f90 +3 −0 Original line number Diff line number Diff line Loading @@ -42,6 +42,9 @@ USE ForTeuchos_ParameterList #include <petscversion.h> #if (((PETSC_VERSION_MAJOR>=3) && (PETSC_VERSION_MINOR>6)) || (PETSC_VERSION_MAJOR>=4)) USE PETSCSNES #ifdef FUTILITY_HAVE_SLEPC USE SLEPCEPS #endif #endif #endif Loading src/PartitionGraph.f90 +10 −2 Original line number Diff line number Diff line Loading @@ -33,10 +33,18 @@ USE VectorTypes USE MatrixTypes USE Sorting #ifdef FUTILITY_HAVE_PETSC #include <petscversion.h> #if (((PETSC_VERSION_MAJOR>=3) && (PETSC_VERSION_MINOR>=6)) || (PETSC_VERSION_MAJOR>=4)) #ifdef FUTILITY_HAVE_SLEPC USE SLEPCEPS #endif #endif #endif IMPLICIT NONE #ifdef FUTILITY_HAVE_PETSC #include <petscversion.h> #if (((PETSC_VERSION_MAJOR>=3) && (PETSC_VERSION_MINOR>=6)) || (PETSC_VERSION_MAJOR>=4)) #include <petsc/finclude/petsc.h> #else Loading Loading @@ -1849,7 +1857,7 @@ SUBROUTINE getEigenVecs(A,lsmall,numvecs,V) !Assemble the matrix CALL A%assemble(ierr) !Set the operators (Only matrix A) CALL EPSSetOperators(eps, A%A,PETSC_NULL_OBJECT,ierr) CALL EPSSetOperators(eps, A%A,PETSC_NULL_MAT,ierr) ENDSELECT !Get the eigenvectors Loading unit_tests/testPartitionGraph/testPartitionGraph.f90 +7 −1 Original line number Diff line number Diff line Loading @@ -17,6 +17,13 @@ USE VectorTypes USE MatrixTypes USE PartitionGraph #ifdef FUTILITY_HAVE_SLEPC #include <petscversion.h> #if (((PETSC_VERSION_MAJOR>=3) && (PETSC_VERSION_MINOR>=6)) || (PETSC_VERSION_MAJOR>=4)) USE PETSCSYS #endif #endif IMPLICIT NONE TYPE(PartitionGraphType) :: testPG,testSG Loading @@ -25,7 +32,6 @@ TYPE(ParamType) :: refG1Params,refG2Params,refG3Params,refG4Params TYPE(ExceptionHandlerType),POINTER :: e #ifdef FUTILITY_HAVE_SLEPC #include <petscversion.h> #if (((PETSC_VERSION_MAJOR>=3) && (PETSC_VERSION_MINOR>=6)) || (PETSC_VERSION_MAJOR>=4)) #include <petsc/finclude/petsc.h> #else Loading unit_tests/testTPLSLEPC/testTPLSLEPC.f90 +8 −3 Original line number Diff line number Diff line Loading @@ -10,9 +10,14 @@ PROGRAM testTPLSLEPC USE IntrType #include <petscversion.h> #if (((PETSC_VERSION_MAJOR>=3) && (PETSC_VERSION_MINOR>=6)) || (PETSC_VERSION_MAJOR>=4)) USE PETSCSYS USE SLEPCEPS #endif IMPLICIT NONE #include <petscversion.h> #if (((PETSC_VERSION_MAJOR>=3) && (PETSC_VERSION_MINOR>=6)) || (PETSC_VERSION_MAJOR>=4)) #include <petsc/finclude/petsc.h> #include <slepc/finclude/slepc.h> Loading Loading @@ -130,7 +135,7 @@ SUBROUTINE testEX1F() CALL EPSCreate(PETSC_COMM_WORLD,eps,ierr) ! Set operators. In this case, it is a standard eigenvalue problem CALL EPSSetOperators(eps,A,PETSC_NULL_OBJECT,ierr) CALL EPSSetOperators(eps,A,PETSC_NULL_MAT,ierr) CALL EPSSetProblemType(eps,EPS_HEP,ierr) ! Set solver parameters at runtime Loading Loading @@ -173,7 +178,7 @@ SUBROUTINE testEX1F() DO i=0,nconv-1 ! Get converged eigenpairs: i-th eigenvalue is stored in kr ! (real part) and ki (imaginary part) CALL EPSGetEigenpair(eps,i,kr,ki,PETSC_NULL_OBJECT,PETSC_NULL_OBJECT,ierr) CALL EPSGetEigenpair(eps,i,kr,ki,PETSC_NULL_VEC,PETSC_NULL_VEC,ierr) ! Compute the relative error associated to each eigenpair #if (((PETSC_VERSION_MAJOR>=3) && (PETSC_VERSION_MINOR>=6)) || (PETSC_VERSION_MAJOR>=4)) Loading Loading
src/EigenvalueSolverTypes.f90 +3 −0 Original line number Diff line number Diff line Loading @@ -42,6 +42,9 @@ USE ForTeuchos_ParameterList #include <petscversion.h> #if (((PETSC_VERSION_MAJOR>=3) && (PETSC_VERSION_MINOR>6)) || (PETSC_VERSION_MAJOR>=4)) USE PETSCSNES #ifdef FUTILITY_HAVE_SLEPC USE SLEPCEPS #endif #endif #endif Loading
src/PartitionGraph.f90 +10 −2 Original line number Diff line number Diff line Loading @@ -33,10 +33,18 @@ USE VectorTypes USE MatrixTypes USE Sorting #ifdef FUTILITY_HAVE_PETSC #include <petscversion.h> #if (((PETSC_VERSION_MAJOR>=3) && (PETSC_VERSION_MINOR>=6)) || (PETSC_VERSION_MAJOR>=4)) #ifdef FUTILITY_HAVE_SLEPC USE SLEPCEPS #endif #endif #endif IMPLICIT NONE #ifdef FUTILITY_HAVE_PETSC #include <petscversion.h> #if (((PETSC_VERSION_MAJOR>=3) && (PETSC_VERSION_MINOR>=6)) || (PETSC_VERSION_MAJOR>=4)) #include <petsc/finclude/petsc.h> #else Loading Loading @@ -1849,7 +1857,7 @@ SUBROUTINE getEigenVecs(A,lsmall,numvecs,V) !Assemble the matrix CALL A%assemble(ierr) !Set the operators (Only matrix A) CALL EPSSetOperators(eps, A%A,PETSC_NULL_OBJECT,ierr) CALL EPSSetOperators(eps, A%A,PETSC_NULL_MAT,ierr) ENDSELECT !Get the eigenvectors Loading
unit_tests/testPartitionGraph/testPartitionGraph.f90 +7 −1 Original line number Diff line number Diff line Loading @@ -17,6 +17,13 @@ USE VectorTypes USE MatrixTypes USE PartitionGraph #ifdef FUTILITY_HAVE_SLEPC #include <petscversion.h> #if (((PETSC_VERSION_MAJOR>=3) && (PETSC_VERSION_MINOR>=6)) || (PETSC_VERSION_MAJOR>=4)) USE PETSCSYS #endif #endif IMPLICIT NONE TYPE(PartitionGraphType) :: testPG,testSG Loading @@ -25,7 +32,6 @@ TYPE(ParamType) :: refG1Params,refG2Params,refG3Params,refG4Params TYPE(ExceptionHandlerType),POINTER :: e #ifdef FUTILITY_HAVE_SLEPC #include <petscversion.h> #if (((PETSC_VERSION_MAJOR>=3) && (PETSC_VERSION_MINOR>=6)) || (PETSC_VERSION_MAJOR>=4)) #include <petsc/finclude/petsc.h> #else Loading
unit_tests/testTPLSLEPC/testTPLSLEPC.f90 +8 −3 Original line number Diff line number Diff line Loading @@ -10,9 +10,14 @@ PROGRAM testTPLSLEPC USE IntrType #include <petscversion.h> #if (((PETSC_VERSION_MAJOR>=3) && (PETSC_VERSION_MINOR>=6)) || (PETSC_VERSION_MAJOR>=4)) USE PETSCSYS USE SLEPCEPS #endif IMPLICIT NONE #include <petscversion.h> #if (((PETSC_VERSION_MAJOR>=3) && (PETSC_VERSION_MINOR>=6)) || (PETSC_VERSION_MAJOR>=4)) #include <petsc/finclude/petsc.h> #include <slepc/finclude/slepc.h> Loading Loading @@ -130,7 +135,7 @@ SUBROUTINE testEX1F() CALL EPSCreate(PETSC_COMM_WORLD,eps,ierr) ! Set operators. In this case, it is a standard eigenvalue problem CALL EPSSetOperators(eps,A,PETSC_NULL_OBJECT,ierr) CALL EPSSetOperators(eps,A,PETSC_NULL_MAT,ierr) CALL EPSSetProblemType(eps,EPS_HEP,ierr) ! Set solver parameters at runtime Loading Loading @@ -173,7 +178,7 @@ SUBROUTINE testEX1F() DO i=0,nconv-1 ! Get converged eigenpairs: i-th eigenvalue is stored in kr ! (real part) and ki (imaginary part) CALL EPSGetEigenpair(eps,i,kr,ki,PETSC_NULL_OBJECT,PETSC_NULL_OBJECT,ierr) CALL EPSGetEigenpair(eps,i,kr,ki,PETSC_NULL_VEC,PETSC_NULL_VEC,ierr) ! Compute the relative error associated to each eigenpair #if (((PETSC_VERSION_MAJOR>=3) && (PETSC_VERSION_MINOR>=6)) || (PETSC_VERSION_MAJOR>=4)) Loading