Subversion Repositories slepc-dev

Rev

Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

<html>
<head>
<title>SLEPc - Changes</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

<body bgcolor="#FFFFFF" text="#000000">
<div align ="center">
[ <a href="manual.htm">Manual</a>
| <a href="instal.htm">Installation</a>
| Changes
| <a href="faq.htm">FAQ</a>
| <a href="mail_list.htm">Contact</a>
] </div>
<table width="700" border="0" cellpadding="0" cellspacing="0">
  <tr>
    <td width="700" height="28"><p>&nbsp;</p>
      <p>&nbsp;</p></td>
  </tr>
  <tr>
    <td valign="top" height="48">
      <p><font face="Arial, Helvetica, sans-serif" size="2">The following table
        lists the versions of SLEPc and shows the correspondence between SLEPc
        and PETSc releases. Versions marked as major releases are those which
        incorporate some new functionality. The rest are just adaptations required
        for a new PETSc release and may also include bug fixes.</font></p>
      <p>&nbsp;</p>
    </td>
  </tr>

<tr><td>

<table border="0" cellpadding="0" cellspacing="0" align="center">
  <tr valign="middle" bgcolor="#FAD863">
    <td width="138" height="25" align="center"><strong>
      <font face="Arial, Helvetica, sans-serif" size="2">
      SLEPc version
      </font></strong>
    </td>
    <td width="175" height="25" align="center"><strong>
      <font face="Arial, Helvetica, sans-serif" size="2">
      PETSc versions
      </font></strong>
    </td>
    <td width="75" height="25" align="center"><strong>
      <font face="Arial, Helvetica, sans-serif" size="2">
      Major
      </font></strong>
    </td>
    <td width="146" height="25" align="center"><strong>
      <font face="Arial, Helvetica, sans-serif" size="2">
      Release date
      </font></strong>
    </td>
  </tr>
  <tr valign="middle" bgcolor="#fff0d0">
    <td width="138" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      2.1.0
      </font>
    </td>
    <td width="175" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      2.1.0
      </font>
    </td>
    <td width="75" height="21" align="center"> * </td>
    <td width="146" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      Not released
      </font>
    </td>
  </tr>
  <tr valign="middle" bgcolor="#fff0d0">
    <td width="138" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      2.1.1
      </font>
    </td>
    <td width="175" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      2.1.1, 2.1.2, 2.1.3
      </font>
    </td>
    <td width="75" height="21"></td>
    <td width="146" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      Dec 2002
      </font>
    </td>
  </tr>
  <tr valign="middle" bgcolor="#fff0d0">
    <td width="138" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      2.1.5
      </font>
    </td>
    <td width="175" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      2.1.5, 2.1.6
      </font>
    </td>
    <td width="75" height="21"></td>
    <td width="146" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      May 2003
      </font>
    </td>
  </tr>
  <tr valign="middle" bgcolor="#fff0d0">
    <td width="138" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      2.2.0
      </font>
    </td>
    <td width="175" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      2.2.0
      </font>
    </td>
    <td width="75" height="21" align="center"> * </td>
    <td width="146" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      Apr 2004
      </font>
    </td>
  </tr>
  <tr valign="middle" bgcolor="#fff0d0">
    <td width="138" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      2.2.1
      </font>
    </td>
    <td width="175" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      2.2.1
      </font>
    </td>
    <td width="75" height="21" align="center"> * </td>
    <td width="146" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      Aug 2004
      </font>
    </td>
  </tr>
  <tr valign="middle" bgcolor="#fff0d0">
    <td width="138" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      2.3.0
      </font>
    </td>
    <td width="175" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      2.3.0
      </font>
    </td>
    <td width="75" height="21" align="center"> * </td>
    <td width="146" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      Jun 2005
      </font>
    </td>
  </tr>
  <tr valign="middle" bgcolor="#fff0d0">
    <td width="138" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      2.3.1
      </font>
    </td>
    <td width="175" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      2.3.1
      </font>
    </td>
    <td width="75" height="21" align="center"> </td>
    <td width="146" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      Mar 2006
      </font>
    </td>
  </tr>
  <tr valign="middle" bgcolor="#fff0d0">
    <td width="138" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      2.3.2
      </font>
    </td>
    <td width="175" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      2.3.1, 2.3.2
      </font>
    </td>
    <td width="75" height="21" align="center"> * </td>
    <td width="146" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      Oct 2006
      </font>
    </td>
  </tr>
  <tr valign="middle" bgcolor="#fff0d0">
    <td width="138" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      2.3.3
      </font>
    </td>
    <td width="175" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      2.3.3
      </font>
    </td>
    <td width="75" height="21" align="center"> * </td>
    <td width="146" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      Jun 2007
      </font>
    </td>
  </tr>
  <tr valign="middle" bgcolor="#fff0d0">
    <td width="138" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      3.0.0
      </font>
    </td>
    <td width="175" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      3.0.0
      </font>
    </td>
    <td width="75" height="21" align="center"> * </td>
    <td width="146" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      Feb 2009
      </font>
    </td>
  </tr>
  <tr valign="middle" bgcolor="#fff0d0">
    <td width="138" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      3.1
      </font>
    </td>
    <td width="175" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      3.1
      </font>
    </td>
    <td width="75" height="21" align="center"> * </td>
    <td width="146" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      Aug 2010
      </font>
    </td>
  </tr>
  <tr valign="middle" bgcolor="#fff0d0">
    <td width="138" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      3.2
      </font>
    </td>
    <td width="175" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      3.2
      </font>
    </td>
    <td width="75" height="21" align="center"> * </td>
    <td width="146" height="21" align="center">
      <font face="Arial, Helvetica, sans-serif" size="2">
      Oct 2011
      </font>
    </td>
  </tr>
</table>

<p>&nbsp;</p>
</tr></td>

<tr><td>

<p>
<font size="3" face="Arial, Helvetica, sans-serif"><b>
Changes in Version 3.2</font></b>
</p>

<ul>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    Computational intervals for symmetric eigenproblems, that activate a spectrum slicing mechanism to obtain all eigenvalues in a given interval, see EPSSetInterval.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    Partial support (experimental) for GPU computing via PETSc's VECCUSP and MATAIJCUSP.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    Performance improvement of solvers with explicit matrix such as SVDCYCLIC and QEPLINEAR
    (now use matrix preallocation).
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    Added Matlab interface.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    Added support for parallel builds with CMake.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    Added support for quad precision (configure PETSc --with-precision=__float128 with gcc-4.6 or later).
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    Interface changes: now all XXXDestroy() routines take a pointer to the object.
    </font></li>
</ul>

<p>
<font size="3" face="Arial, Helvetica, sans-serif"><b>
Changes in Version 3.1</font></b>
</p>

<ul>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    New EPS solvers: Generalized Davidson (GD) and Jacobi-Davidson (JD). These are the first
    eigensolvers in SLEPc that belong to the class of preconditioned eigensolvers.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    Added a new instance of ST called STPRECOND. This is not really a spectral transformation
    but rather a convenient way of handling the preconditioners in the new eigensolvers.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    Added a new class QEP for solving quadratic eigenvalue problems. Currently, it contains
    two solvers: the Q-Arnoldi method and another one that provides a linearization of the
    problem and then invokes an eigensolver from EPS.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    Added support for balancing of non-Hermitian problems, see EPSSetBalance.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    Improved sorting of eigenvalues, now with the possibility of sorting with respect to
    a target value. With shift-and-invert, now the ordering
    of eigenvalues is the expected one, relative to the target.
    Also added support for user-defined orderings. For details, see EPSSetWhichEigenpairs.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    Added support for user-defined convergence tests, see EPSSetConvergenceTest.
    Several predefined convergence criteria are available. Also, there is a new
    flag for computing the true residual for the convergence test, see EPSSetTrueResidual.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    Monitors have been reorganized and now more possibilities are available. See the Users
    Manual for details.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    Changes in user interface: EPSAttachDeflationSpace has been renamed to EPSSetDeflationSpace,
    EPSSetLeftVectorsWanted replaces EPSSetClass for requesting left eigenvectors;
    Change in arguments: EPSSetDeflationSpace; Deprecated function: EPSSetInitialVector,
    replaced by EPSSetInitialSpace; STSINV has been renamed to STSINVERT.
    </font></li>
</ul>

<p>
<font size="3" face="Arial, Helvetica, sans-serif"><b>
Changes in Version 3.0.0</font></b>
</p>

<ul>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
      Released under GNU LGPL license.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
      Improved support for the case that many eigenpairs are to be
      computed. This is especially so in the default eigensolver (Krylov-Schur)
      for symmetric problems, as well as for SVD computations. The user
      can control the behaviour of the solver with a new parameter, mpd
      (see EPSSetDimensions).
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
      Support for harmonic projection in the default eigensolver (Krylov-Schur),
      see EPSSetExtraction. This can be useful for computing interior or
      rightmost eigenvalues without the need of a spectral transformation.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
      Memory usage has been optimized in most solvers. In some cases,
      memory requirements have been halved with respect to the previous
      versions.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
      In the spectral transformations (ST) the linear solver used internally
      has been changed to a direct solver by default. The user can still
      employ an iterative linear solver by setting the appropriate options.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
      Added better support for Fortran 90.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
      Improved support for 'make install', see the Users Manual for details.
    </font></li>
</ul>

<p>
<font size="3" face="Arial, Helvetica, sans-serif"><b>
Changes in Version 2.3.3</font></b>
</p>

<ul>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    A new solver class, SVD, has been introduced for computing the singular
    value decomposition of a rectangular matrix. The structure of this new
    type is very similar to that of EPS, and it simplifies the computation
    of singular values and vectors. A complete chapter in the users manual
    is devoted to SVD.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    Better support for generalized problems. Eigenvector purification has
    been added to improve accuracy in the case of generalized eigenproblems
    with singular B. Also, a new problem type (EPS_PGNHEP) has been added
    for better addressing generalized problems in which A is non-Hermitian
    but B is Hermitian and positive definite.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    Now 'make install' is available thus facilitating system-wide installation.
    </font></li>
</ul>

<p>
<font size="3" face="Arial, Helvetica, sans-serif"><b>
Changes in Version 2.3.2</font></b>
</p>

<ul>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    A new 'krylovschur' eigensolver has been added, that implements the
    Krylov-Schur method. This method is related to the Arnoldi and Lanczos
    algorithms, but incorporates a new restarting scheme that makes it
    competitive with respect to implicit restart. This eigensolver is now
    the default for both symmetric and non-symmetric problems.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    A new wrapper has been developed to interface with the PRIMME library.
    This library provides Davidson-type eigensolvers.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    The 'lanczos' solver has been improved, in particular, the different
    reorthogonalization strategies are now more robust.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    Now the 'arnoldi' eigensolver supports the computation of eigenvalues
    other than those of largest magnitude.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    EPSGetLinearIterations has been replaced with EPSGetOperationCounters,
    providing more statistics about the solution process.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    EPSGetIterationNumber now returns the number corresponding to outer
    iterations.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    The 'lobpcg' wrapper has been renamed to 'blopex'.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    The 'planso' wrapper has been removed since PLANSO is no longer being
    distributed.
    </font></li>
</ul>

<p>
<font size="3" face="Arial, Helvetica, sans-serif"><b>
Changes in Version 2.3.1</font></b>
</p>

<ul>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    New variant of the Arnoldi method added to the 'arnoldi' eigensolver
    (with delayed reorthogonalization, see EPSArnoldiSetDelayed).
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    Several optimizations for improving performance and scalability, in particular
    the orthogonalization steps.
    </font></li>
</ul>

<p>
<font size="3" face="Arial, Helvetica, sans-serif"><b>
Changes in Version 2.3.0</font></b>
</p>

<ul>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    New 'lanczos' eigensolver, an explicitly restarted version of the Lanczos method
    for symmetric eigenproblems. Allows the user to choose among 5 reorthogonalization
    strategies.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    New spectrum folding spectral transformation.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    New configuration system, similar to PETSc's configure.py.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    New interface to an external eigensolver: LOBPCG implemented in Hypre.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    Added graphical convergence monitor (with -eps_xmonitor).
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    Improvement of Arnoldi solver in terms of efficiency and robustness.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    Now the 'lapack' solver uses specific Lapack routines for symmetric and generalized problems.
    </font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif">
    Bug fix in the ARPACK interface.
    </font></li>
</ul>

<p><font size="2" face="Arial, Helvetica, sans-serif"><b><font size="3"><br>
  Changes in Version 2.2.1</font></b></font></p>
<ul>
  <li><font size="2" face="Arial, Helvetica, sans-serif"> The 'power' eigensolver has been replaced by a simpler implementation.</font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif"> The 'rqi' eigensolver has been removed. Now the Rayleigh Quotient Iteration is embedded in the 'power' method.</font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif"> The 'subspace' eigensolver has been rewritten. Now it follows the SRRIT implementation, which is much faster than the old one.</font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif"> The 'arnoldi' eigensolver has been re-implemented as well. The new implementation is much more robust and efficient.</font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif"> A new Spectral Tranformation (ST) has been added: the generalized Cayley transform.</font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif"> Support for user-provided deflation subspaces has been added (see EPSAttachDeflationSpace).</font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif"> Support for preservation of symmetry in eigensolvers. For this feature, the user must explicitly call EPSSetProblemType in symmetric problems.</font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif"> The two types of monitors (error estimates and values) have been merged in a single one.</font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif"> New function EPSGetInvariantSubspace.</font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif"> Better support for spectrum slicing in 'blzpack'.</font></li>
  </ul>
<p><font size="2" face="Arial, Helvetica, sans-serif"><b><font size="3"><br>
  Changes in Version 2.2.0</font></b></font></p>
<ul>
  <li><font size="2" face="Arial, Helvetica, sans-serif"> EPSSolve does not return the number of iterations. Use EPSGetIterationNumber for this purpose.</font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif"> EPSGetSolution has been replaced by EPSGetEigenpair with a cleaner interface.</font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif"> EPSComputeError has been replaced by EPSComputeRelativeError and EPSComputeResidualNorm with better error computing for zero eigenvalues. These functions now are oriented to single eigenpairs, as well as EPSGetErrorEstimate.</font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif"> The possibilities of EPSSetWhichEigenpairs have been reduced and now are more coherent across problem types.</font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif"> Removed STNONE spectral transformation. The default of STSHIFT with 0 shift is equivalent.</font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif"> Added STSinvertSetMatStructure to optimize performance of MatAXPY in shift-and-invert transformation.</font></li>
  <li><font size="2" face="Arial, Helvetica, sans-serif"> Classical and modified Gram-Schmidt orthogonalization use iterative refinement, with user options for parameter adjustment.</font></li>
  </ul>
<p><font size="2" face="Arial, Helvetica, sans-serif"><b><font size="3"><br>
  Changes in Version 2.1.5</font></b></font></p>
<ul>
  <li><font size="2" face="Arial, Helvetica, sans-serif"> Added call to MatGetInertia
    in BLZPACK interface.</font></li>
</ul>
<p>&nbsp;</p>
<p><b><font size="3" face="Arial, Helvetica, sans-serif"></font></b></p>
      </body>
</html>