Skip to content

Releases: stfxecutables/empyricalRMT

v1.1.1

26 Sep 02:57
Compare
Choose a tag to compare

Respect show_progress argument in main spectral observable computation functions.

Bugfix: Remove Numba caching

22 Sep 16:11
Compare
Choose a tag to compare

Remove caching as a way to temporarily workaround numba/numba#4908

v1.0.0

15 Sep 16:39
c3d2087
Compare
Choose a tag to compare

Included in this update:

Core Algorithm Improvements

  • improves the spectral rigidity and level variance algorithms
    • algorithms now automatically determine the number of iterations needed for convergence, based on largest L value
    • both algorithms now use more consistent Monte-Carlo approaches with a clear convergence criterion
    • Kahan summation is now used for the summing/averaging of Monte-Carlo sample runs (doesn't seem to make a difference though - maybe Numba compiling it out...)
    • progress monitoring during computation of spectral observables has been simplified

API Changes / Improvements

  • Eigenvalues class constructor now accepts 2D matrices as inputs, and automatically tries to use the appropriate eigenvalue computation function to extract eigenvalues
  • generate_eigs function moved to Eigenvalues.generate static method
  • most string literals (e.g. "goe", "gue") have been replaced with Enum variants:
    • empyricalRMT._types.MatrixKind
    • empyricalRMT.plot.PlotMode
    • empyricalRMT.smoother.SmoothMethod
  • plotting no longer forces Seaborn style "darkgrid" on user
  • passing in existing plt.Figure and plt.Axes objects to plotting functions should now always be possible

Code Quality

  • updates Python version and library requirements
  • improved type annotations, remove issues found by updated Pylance, etc.
  • consistently use np.float64 almost everywhere

This update will likely be the last, except for minor bugfixes.

Preliminary Release

11 May 18:37
Compare
Choose a tag to compare
Preliminary Release Pre-release
Pre-release

Preliminary release for citation purposes.