Skip to content

v1.1.2

Choose a tag to compare

@1313e 1313e released this 17 Jun 08:32
· 289 commits to master since this release
fd52d39

This is the v1.1.2 release of the PRISM package.

New additions:

  • Added documentation on the backup system to the online docs (which should have been included in the previous release);
  • Added the PRISM logo to the repo and docs (huge thanks to James Josephides for that);
  • Added BibTeX entry for the ApJS paper;
  • Added badge for JOSS paper;
  • Added the utility convert_data() and convert_parameters() functions to the modellink.utils module, which can be used to validate the input parameters given to a ModelLink subclass;
  • Added many safety checks to the ModelLink class (like attempting to set its properties outside of the __init__() method);
  • Added property setters for all relevant properties of the Pipeline and Projection classes;
  • Added the possibility to provide a dict with PRISM parameters to the Pipeline instead of only a file;
  • Renamed prism_file to prism_par to account for this change;
  • Added a warning to the analyze method to tell the user when the next iteration cannot be constructed (and why);
  • Added the possibility to plot all implausibility cut-off lines (instead of just the first) in a 2D projection figure;
  • Added the possibility to request a specific parameter set to be used as the mock data for an emulator;
  • Added the possibility to return dicts in the call_model and get_md_var methods in a ModelLink subclass in addition to NumPy arrays. The Pipeline class will convert received dicts back to a NumPy array when needed.

Bugfixes:

  • ModelLink.MPI_call now returns the proper value;
  • Now only logging messages produced by PRISM are written to the logging-file of an emulator. All other logging messages use the global settings (which by default is printing to console);
  • Having less than n_cross_val plausible samples remaining no longer crashes the pipeline (instead, a warning is raised);
  • Calling details when no emulator exists no longer logs an error that was caught.

Changes/optimizations:

  • Moved all MPI related definitions to their own separate package (mpi4pyd);
  • Changed the terminology list in the online docs to be a glossary, making its entries more easily searchable;
  • New working directories can now be requested by providing a True to the Pipeline class instead of an integer;
  • The backup system now works more reliably by using random suffixes to avoid overriding files and it also saves the current PRISM version;
  • Moved the Emulator class to its own emulator submodule, to allow for other emulators to be added later (if required);
  • 2D and 3D projections now use the same axis labels;
  • The calculations of the covariances and model discrepancy variances have been improved in several places;
  • The versioning of the package no longer requires the use of the exec function;
  • Optimized the regression process to solely contain polynomial terms in its final function form that have significant polynomial coefficients. This way, less terms need to be calculated for every evaluation;
  • The minimum implausibility colorbar in a 3D projection now shows that it extends beyond the first cut-off value.