Prism

Latest version: v1.3.1.1

Safety actively analyzes 619369 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 2

1.3.1.1

This is a minor compatibility release to deal with the changes made in `h5py` 3.0.

1.3.1

*This is the v1.3.1 release of the PRISM package and serves as a small maintenance patch.*

**Bugfixes:**
- Fixed a few PEP8 problems in the code;
- Fixed a few typos in the documentation of the `ModelLink` class.

**Changes/Optimizations:**
- Replaced `pytest-pep8` with `pytest-flake8` for PEP8 testing (this solves the Azure tests failing).

1.3.0

*This is the v1.3.0 release of the PRISM package.*

**New additions:**
- Added the `_get_data_idx_flat` method to the `Emulator` class that returns a flattened list of `data_idx` tuples;
- Added the `full_impl_rng` argument to the `project` method, which controls whether the lower limit for the minimum implausibility plot should be set to zero (`True`) or to the lowest value plotted (`False`, default);
- The `ModelLink` class now also has convenient class properties for the model data and parameters;
- Added the `_get_sam_dict` method to the `ModelLink` class to more easily convert a sample set into a sample dict;
- Added parameter estimate arrows to the projection figures, which are drawn whenever an estimate is outside the plotted parameter range.


**Bugfixes:**
- Calling a function in worker mode that in turn calls `_make_call`, but not in worker mode, no longer causes unpredictable behavior;
- Redrawing a projection now actually uses the parameters that were used to calculate its data;
- Fixed a problem in *Crystal* where the projection dictionaries were not always reset properly;
- The colorbar in 3D projections is now scaled properly in different alignments.


**Changes/Optimizations:**
- The `impl_cut` property can now always be set through the use of `_set_impl_par`;
- The `impl_par` data is only saved to HDF5 after an analysis ends successfully;
- Significant polynomial terms in the regression function are now determined more accurately;
- Reduced memory consumption in certain operations when using large arrays;
- Changed several class properties of the `Pipeline`, `Emulator` and `ModelLink` classes to return more user-readable versions;
- Massively improved the interpolation methods used for the projections.

1.2.3

*This is the v1.2.3 release of the PRISM package and serves as an optimization patch.*

**New additions:**
- Added missing `PolyLink` class documentation;
- With the introduction of the improved convergence algorithm as described below, projection figures can now be made to either show the entirety of parameter space or solely the part that figure is defined in. The former allows for easier comparison between figures, whereas the latter provides more information;
- Added tooltips to the different projection dictionaries that can be modified in *Crystal*;
- Backup files made with the `_make_backup` method of the `ModelLink` class can now be used as external model realization sets in `construct`. These can be used by providing the unique suffix identifier of the required backup file.


**Bugfixes:**
- Fixed a bug where if solely the intercept term of a regression process was significant, the construction process would crash;
- Fixed a bug where the regression process could fail in rare cases where a single least-squares fit would not converge.


**Changes/Optimizations:**
- Copyright notice now includes the year '2020';
- Reanalyzing an emulator iteration now uses the current implausibility cut-offs instead of the global default cut-offs;
- The emulator now only samples over the hypercube in an iteration that contains all of its defined samples. This means that, for example, if a parameter 'A' is only defined over the range `[0.5, 1.0]` in iteration 2, then analyzing iteration 2 will only consider values of 'A' in this range (and a bit extra to account for inaccuracies);
- The above massively increases both the accuracy and the convergence rate of the emulator, when parameters show strong preferences for specific parts of their range. Parameters that can take any value in their range are unaffected by this change;
- Projections can no longer be made when its iteration has not been analyzed yet;
- Emulator compatibility warnings are now only emitted once per type.

1.2.2

*This is the v1.2.2 release of the PRISM package and serves as a minor patch/optimization.*

**New additions**:
- Added the `f_impl` emulator parameter to *PRISM*, which is used to artificially inflate the prior emulator variance of all known samples;
- Emulators made with a version earlier than this one, will have the value of `f_impl` set to zero when loaded.


**Bugfixes:**
- The `poly_terms` Emulator property now returns the proper polynomial terms.


**Changes/Optimizations:**
- All different uses of the residual variance in the emulator are now pre-calculated, making emulator evaluations faster.

1.2.1

*This is the v1.2.1 release of the PRISM package and serves as a minor patch.*

**New additions:**
- *PRISM* now uses the new *CMasher* package for *Crystal*.

**Bugfixes:**
- If an exception is raised in worker mode in MPI, the behavior of the pipeline is no longer random. Instead, the pipeline always terminates (as it should).

**Changes/Optimizations:**
- *PRISM* now uses *QtPy* imports instead of *PyQt5* imports;
- The lowest line-of-sight depth values for smoothing projections are now calculated using the actual number of segments that the used colormap has;
- *Crystal* now changes the mouse cursor to a 'busy icon' if it is not using a threaded progress dialog (as the operation cannot be interrupted);
- If an exception is raised during the regression process, the corresponding emulator system index is added to the error message. This makes checking what emulator system failed a lot easier (in the future, a way of doing this for all exceptions should be implemented);
- Starting *Crystal* will no longer prepare all projections multiple times;
- Removed a few instances where the master HDF5-file was opened for writing unnecessarily;
- When determining mock data, the used data values are now also saved in the `ModelLink` subclass temporarily, in case it needs them.

Page 1 of 2

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.