Skip to content

Releases: mpimd-csc/mmess

v3.1

26 Feb 14:51
Compare
Choose a tag to compare

M-M.E.S.S. 3.1: Bug fixes and usability improvements

Added

  • mess_root function to find the root directory of the installation.

Changed

  • mess_version now has an optional argument that suppresses verbose
    printing of version information, when only the return value is
    desired.
  • mess_column_compression now skips the actual compression if the
    tolerance is set to 0.
  • mess_lrradi has improved LDL_T support.
  • mess_lrradi now allows setting the initial residual from the
    outside, in order to (re-)start it from a non-zero initial guess for
    the solution.
  • mess_res2_norms's argument resopts now behaves as documented.
    The old (and undocumented) use remains supported, but prints a warning.

Fixed

  • mess_path now uses mess_root to properly determine the root path
    and set the relative paths. This allows to call mess_path from
    outside the M-M.E.S.S. tree and still get the correct result.
  • BDF codes had an issue when Q, R were not present in LDL_T mode.
  • Low-rank Riccati norm computations should be more numerically stable
    now.
  • Logger functions now pass the correct string argument to MATLAB's
    error function, when an illegal log location is requested.
  • mess_assert was not passing arguments properly to mess_err.
  • Corrected a typo that could lead to trunc_tol being unset in
    mess_KSM.
  • Corrected an error in mess_lrradi to make opts.radi.compute_res
    behave as documented.

v3.0

22 Sep 16:47
Compare
Choose a tag to compare

M-M.E.S.S. 3.0 Introducing Krylov subspace methods

Added

  • Sparse-dense Sylvester solver, see mess_sylvester_sparse_dense.
  • Krylov subspace projection methods for Lyapunov equations and AREs using extended and rational Krylov subspaces, see mess_KSM, as well as demonstration examples in KSM_FDM, KSM_Rail.
  • A new logging system allowing to print messages to both console and files, and switch between various output file formats. See mess_log_*.
  • mess_tf_plot as unified backend for mess_sigma_plot, mess_Frobenius_TF_errorplot
  • mess_version a function to get the current version of M-M.E.S.S.

Changed

  • mess_galerkin_projection_acceleration has been replaced by mess_solve_projected_eqn, which now covers both the acceleration case and
    the case of projected equations in the context of mess_KSM.
  • eqn.st and eqn.nd from DAE usfs are now unified and called eqn.manifold_dim everywhere.
  • the LDL^T ADI for Lyapunov now expects W T W^T rather than G S G^T as the constant term. Consequently, eqn.S and eqn.G are now called
    eqn.T and eqn.W.
  • missing demonstration models are now loaded from the web on user request. The first run with a model may, thus, need to be interactive
    to confirm the download request.
  • usfs have been optimized further to not use unnecessary hidden data.
  • mess_lrnm, and mess_lrradi now require eqn.R and eqn.Q to be set in LDL^T mode.
  • operatormanager now has a mandatory pass-through argument opts for correct logging.

Fixed

  • many functions did not warn users about non-convergence
  • minor bugs in DRE methods were addressed
  • get_ritz_vals usfs and mess_para behavior has been unified
  • removed dead code in mess_lrnm
  • lyap in Octave and MATLAB had different behavior which is now properly wrapped to give consistent results
  • BDF methods of higher order now use lower order methods with smaller step sizes for a successive wind-up procedure to guarantee the expected order of convergence.
  • exact line search in mess_lrnm now uses a more expensive, yet far more numerically stable, way to compute the relevant norms.

Deprecated

  • all functions in the mor folder are not going to be maintained in future releases in favor of using M-M.E.S.S. as the sparse solver
    backend for MORLAB in their version 6.0 and newer.

v2.2

03 Aug 15:01
Compare
Choose a tag to compare
release 2.2 updates