18#ifdef DEAL_II_WITH_SLEPC
23# include <petscversion.h>
34 const PetscErrorCode ierr = STCreate(mpi_communicator, &
st);
42 const PetscErrorCode ierr = STDestroy(&
st);
51 const PetscErrorCode ierr = STSetMatMode(
st, mode);
65 const double shift_parameter)
66 : shift_parameter(shift_parameter)
74 PetscErrorCode ierr = STSetType(
st,
const_cast<char *
>(STSHIFT));
84 const double shift_parameter)
85 : shift_parameter(shift_parameter)
94 PetscErrorCode ierr = STSetType(
st,
const_cast<char *
>(STSINVERT));
104 const double shift_parameter)
105 : shift_parameter(shift_parameter)
114# if DEAL_II_PETSC_VERSION_LT(3, 5, 0)
115 PetscErrorCode ierr = STSetType(
st,
const_cast<char *
>(STFOLD));
125 "Folding transformation has been removed in SLEPc 3.5.0 and newer."
126 " You cannot use this transformation anymore."));
133 const double shift_parameter,
134 const double antishift_parameter)
135 : shift_parameter(shift_parameter)
136 , antishift_parameter(antishift_parameter)
144 PetscErrorCode ierr = STSetType(
st,
const_cast<char *
>(STCAYLEY));
std::unique_ptr< SolverData > solver_data
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_NAMESPACE_CLOSE
static ::ExceptionBase & ExcSLEPcError(int arg1)
#define Assert(cond, exc)
#define AssertNothrow(cond, exc)
static ::ExceptionBase & ExcMessage(std::string arg1)
#define AssertThrow(cond, exc)