Also log the corresponding entry in changes.h
<h3>Specific improvements</h3>
<ol>
+ <li> Fixed: Support SLEPc 3.5 by disabling SDFOLD spectrum transformation type
+ that has been removed from SLEPc. Therefore, TransformationSpectrumFolding
+ cannot be used with newer SLEPc versions.
+ <br>
+ (Alexander Grayver, 2014/08/15)
+ </li>
+
<li> New: To better support applications that want to use C++11's
<a href="http://en.wikipedia.org/wiki/C%2B%2B11#Range-based_for_loop">range-based
for loops</a>, there are now functions Triangulation::cell_iterators(),
/**
* An implementation of the transformation interface using the SLEPc
- * Spectrum Folding.
+ * Spectrum Folding. This transformation type has been removed in
+ * SLEPc 3.5.0 and thus cannot be used in the newer versions.
*
* @ingroup SLEPcWrappers
* @author Toby D. Young 2009
void
TransformationSpectrumFolding::set_transformation_type (ST &st) const
{
+#if DEAL_II_PETSC_VERSION_LT(3,5,0)
int ierr;
ierr = STSetType (st, const_cast<char *>(STFOLD));
AssertThrow (ierr == 0, SolverBase::ExcSLEPcError(ierr));
ierr = STSetShift (st, additional_data.shift_parameter);
AssertThrow (ierr == 0, SolverBase::ExcSLEPcError(ierr));
+#else
+ // PETSc/SLEPc version must be < 3.5.0.
+ Assert ((false),
+ ExcMessage ("Folding transformation has been removed in SLEPc 3.5.0 and newer."
+ "You cannot use this transformation anymore."));
+#endif
}
/* ------------------- TransformationCayley --------------------- */
In the beginning the Universe was created. This has made a lot of
people very angry and has been widely regarded as a bad move.
Douglas Adams