_This release introduces breaking changes but makes the algorithm about 5x faster._
Feature
- Added static, sensitivity profiles as new plotting utility
- Added `synthetic` module to create example data from canonical test functions
- Added `evaluate` method to `NeuralNet` model (which does `predict` and `predict_partials` in one step more efficiently)
Documentation
- Added documentation using `sphinx` and published on GitHub Pages
- Added more example notebooks
Refactor
- Moved core API into its own subpackage
- Moved core API data management functionality into their own classes: `Parameters`, `DataSet`, `Cache`
- Moved plotting module and metrics into utilities subpackage
- Renamed core API modules, classes, and functions
- Renamed user API modules, classes, and functions
- Changed user API by adding NeuralNet model
- Changed user API plotting utility functions names and kwards
- Changed datastructure exposed to user (compared to `v0.1.0`, `X, Y, J` are now transposed)
- Simplified almost all functions for easier maintainability/readability
Style
- Using `ruff`, `docformatter`, `black` and `mypy` for linting
Performance
- Arrays are now updated in place (code about 5x faster)
Tests
- Added unit tests using `pytest`