Autocti

Latest version: v2024.1.27.4

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

Scan your dependencies

2023.10.23.3

- Support for Python 3.11 by updating requirement on core libraries (e.g. `numpy`, `scipy`, `scikit-learn`).
- Remove use of `np,ma` module which is not supported by Python3.11 libraries.
- Fix issues with sqlite database following switch from `.pickle` outputs to `.json` / `.fits` / `.csv`.
- Database use of `Samples` object much more efficient.
- Methods to output classes to hard-disk (e.g. `output_to_json`, `from_json`, `to_dict`) are now all handled and called from `autoconf`.
- Fix bug where `nautilus` parallel fits sometimes crashed.
- Fix bug where `nautilus` single CPU fits did not work.

2023.9.18.4

This release implements two major changes to **PyAutoCTI**:

**Nautilus:**

For the past ~3 years, model fitting has used the nested sampling algorithm Dynesty.

Recently, a new nested sampler, Nautilus (https://nautilus-sampler.readthedocs.io/en/stable/), was released, which uses machine-learning based techniques to improve sampling.

Extensive testing of modeling with Nautilus has revealed that it:

- Speeds up the fitting of simple models by ~x2 - x3.
- Speeds up the fitting of complex models by ~x3 - x5+.
- Is more robust and reliable (e.g less likely to infer a local maxima, can fit more complex lens models).
- Controlled predominantly by just one parameter `n_live`, so is simpler to use than `dynesty`.
- Parallelization using Python `multiprocessing` is more efficient than `dynesty` and now supports proper error handling.

`Nautilus` is therefore now the default modeler, with all workspace examples updated accordingly.

NOTE: `Nautilus` does not currently support on-the-fly output and to get the results of a lens model mid-fit a user can instead cancel the run (e.g. via Ctrl + C) and restart it, where the maximum likelihood model will be output.

**Results Output**

Result metadata was previously output as `.pickle` files, which were not human readable and depended on project imports, hurting backwards compatibility.

All metadata is now output as human readable `.json` files and dataset as .`fits` files, making it a lot more straight forward for a user to interpret how data is stored internally within **PyAutoCTI**:

![image](https://github.com/Jammy2211/PyAutoLens/assets/23455639/ffd454dc-47e1-42fb-8e2a-fa807c221247)

Here is an example of the `search.json` file:

![image](https://github.com/Jammy2211/PyAutoLens/assets/23455639/96015619-22fc-47a9-af3f-c050a7d5e267)

All internal functionality (e.g. the sqlite database) has been updated to use these files.

All workspace documentation has been updated accordingly.

**Other:**

- Update certain requirements (e.g. PyYAML) to mitigate installation issues (https://github.com/rhayes777/PyAutoConf/pull/41).
- Lots of quality-of-life improvements thoughout the code bases.

2023.7.5.2

Bug fixes for new MacOS parallelization.

No new features.

2023.6.12.5

- Database support now mature:

https://github.com/Jammy2211/PyAutoCTI/pull/47
https://github.com/Jammy2211/autocti_workspace/tree/main/scripts/dataset_1d/advanced/database

- Significant improvements to visualization:

https://github.com/Jammy2211/PyAutoCTI/pull/45
https://github.com/Jammy2211/PyAutoCTI/pull/46
https://github.com/Jammy2211/PyAutoCTI/pull/42
https://github.com/Jammy2211/PyAutoCTI/pull/40

- Charge noise functionality now in charge injection imaging:
-
https://github.com/Jammy2211/PyAutoCTI/pull/43

Links

Releases

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.