-
Notifications
You must be signed in to change notification settings - Fork 7
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'release-v0.2.0-alpha' into 'main'
Release 0.2.0-alpha See merge request interpol/minterpy!58
- Loading branch information
Showing
48 changed files
with
2,462 additions
and
5,635 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,86 @@ | ||
# To contribute improvements to CI/CD templates, please follow the Development guide at: | ||
# https://docs.gitlab.com/ee/development/cicd/templates.html | ||
# This specific template is located at: | ||
# https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Python.gitlab-ci.yml | ||
|
||
# Official language image. Look for the different tagged releases at: | ||
# https://hub.docker.com/r/library/python/tags/ | ||
image: python:3.8 | ||
|
||
# Change pip's cache directory to be inside the project directory since we can | ||
# only cache local items. | ||
variables: | ||
PIP_CACHE_DIR: "$CI_PROJECT_DIR/.cache/pip" | ||
|
||
# Pip's cache doesn't store the python packages | ||
# https://pip.pypa.io/en/stable/reference/pip_install/#caching | ||
# | ||
# If you want to also cache the installed packages, you have to install | ||
# them in a virtualenv and cache it as well. | ||
cache: | ||
paths: | ||
- .cache/pip | ||
- venv/ | ||
|
||
|
||
stages: | ||
- test | ||
- docs | ||
|
||
before_script: | ||
- uname -a | ||
- python --version # For debugging | ||
- cat setup.cfg | ||
- apt-get update -y && apt-get upgrade -y | ||
- pip install --upgrade pip | ||
- pip install virtualenv | ||
- virtualenv venv | ||
- source venv/bin/activate | ||
|
||
unittest: | ||
stage: test | ||
script: | ||
- pip install pytest pytest-cov | ||
- pip install -e . | ||
- pytest --junitxml=report.xml -vvv | ||
rules: | ||
- if: $CI_PIPELINE_SOURCE == 'merge_request_event' | ||
- if: $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == 'dev' | ||
- if: $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == 'main' | ||
artifacts: | ||
when: always | ||
reports: | ||
junit: report.xml | ||
|
||
coverage: | ||
stage: test | ||
script: | ||
- pip install pytest pytest-cov | ||
- pip install -e . | ||
- export NUMBA_DISABLE_JIT=1 | ||
- pytest --junitxml=report.xml tests --cov-report xml --cov=src -vvv | ||
coverage: '/TOTAL\s+\d+\s+\d+\s+(\d+%)/' | ||
only: | ||
- main | ||
- dev | ||
artifacts: | ||
when: always | ||
reports: | ||
junit: report.xml | ||
|
||
pages: | ||
stage: docs | ||
script: | ||
- apt-get install -y pandoc | ||
- rm -rf public | ||
- mkdir public | ||
- pip install -e .[docs] | ||
- pip install jupyter | ||
- cd docs ; make html | ||
- cd .. | ||
- cp -r docs/build/html/* public/ | ||
artifacts: | ||
paths: | ||
- public | ||
only: | ||
- dev |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,9 +1,29 @@ | ||
# Changelog | ||
|
||
# Version 0.2.0-alpha | ||
This is the next alpha release of `minterpy`, which adds several new functionalities and enhances code quality and performance. | ||
|
||
## new features | ||
* partial derivatives for canonical and Newton polynomials | ||
* support of arbitrary positive `lp_degree` | ||
* ordinary regression based on multivariate polynomials as the first extra feature | ||
|
||
## maintenance | ||
* bug fixes | ||
* adding API documentation | ||
* improvement of user documentations | ||
* clean-up: deletion of code/comments, which are no longer used | ||
* introduction of a corporate design including logo and banner to docs, repository, README etc. | ||
|
||
|
||
This code is still marked as experimental and there is no issuance, that neither everything works as expected, nor if further releases will break the current API. | ||
|
||
|
||
# Version 0.1.0-alpha | ||
This is the initial alpha release of `minterpy`. It contains general structures to perform the polynomial interpolation task in multiple dimensions: | ||
* Multivariate polynomial bases (ABC + concrete implementations) | ||
* Base transformations | ||
* Interpolation schemes | ||
|
||
This code is still highly experimental and there is no issuance, that neither everything works as expected, nor if further releases will break the current API. | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,11 +1,14 @@ | ||
![](./docs/assets/Wordmark-color.png) | ||
|
||
[![Code style: black][black-badge]][black-link] | ||
# minterpy | ||
|
||
<figure class="quote"> | ||
<blockquote> | ||
to minterpy *sth.* (transitive verb) -- to produce a multivariate polynomial representation of *sth.* . | ||
</blockquote> | ||
<figcaption> | ||
— The minterpy developers in <cite>["Lifting the curse of dimensionality"](link-to-math-intro)</cite> | ||
— The minterpy developers in <cite>["Lifting the curse of dimensionality"](https://interpol.pages.hzdr.de/minterpy/fundamentals/introduction.html)</cite> | ||
</figcaption> | ||
</figure> | ||
|
||
|
@@ -38,7 +41,7 @@ to a broad field of computational challenges, including but not limited to: | |
|
||
Since this implementation is a prototype, | ||
we currently only provide the installation by self-building from source. | ||
We recommend to use `git` to get the `minterpy` source: | ||
We recommend to using `git` to get the `minterpy` source: | ||
|
||
```bash | ||
git clone https://gitlab.hzdr.de/interpol/minterpy.git | ||
|
@@ -114,7 +117,7 @@ the number of dimensions (`spatial_dimension`), | |
and the degree of the underlying polynomial (`poly_degree`). | ||
|
||
You may adjust this parameter in order to get higher accuracy. | ||
For the example above, a degree of 64 produces an interpolant which reproduces | ||
For the example above, a degree of 64 produces an interpolant that reproduces | ||
the `test_function` almost up to machine precision: | ||
|
||
```python | ||
|
@@ -127,9 +130,10 @@ the `test_function` almost up to machine precision: | |
plt.legend() | ||
plt.show() | ||
``` | ||
<img src="./docs/assets/images/test-function1D.png" alt="Compare test function with its interpolant" width="400"/> | ||
|
||
![Compare test function with its interpolant](docs/assets/test_function1D.png) | ||
For a more comprehensive examples, see the [getting started guides](link-to-tutorials) | ||
|
||
For more comprehensive examples, see the [getting started guides](https://interpol.pages.hzdr.de/minterpy/getting-started/index.html) | ||
section of the ``minterpy`` docs. | ||
|
||
## Testing | ||
|
@@ -148,7 +152,7 @@ from within the `minterpy` source directory. | |
## Contributing to `minterpy` | ||
|
||
Contributions to the `minterpy` packages are highly welcome. | ||
We recommend you to have a look at the [CONTRIBUTING.md](./CONTRIBUTING.md) first. | ||
We recommend you have a look at the [CONTRIBUTING.md](./CONTRIBUTING.md) first. | ||
For a more comprehensive contribution guide visit | ||
the [Contributors section](link-to-developer-section) of the documentation. | ||
|
||
|
@@ -168,6 +172,7 @@ namely | |
- Uwe Hernandez Acosta ([HZDR]/[CASUS]) ([email protected]) | ||
- Sachin Krishnan Thekke Veettil ([HZDR]/[CASUS]) ([email protected]) | ||
- Damar Wicaksono ([HZDR]/[CASUS]) ([email protected]) | ||
- Janina Schreiber ([HZDR]/[CASUS]) ([email protected]) | ||
|
||
### Mathematical foundation | ||
|
||
|
@@ -193,13 +198,10 @@ namely | |
|
||
This package would not be possible without many contributions done | ||
from the community as well. | ||
For that we want to send big thanks to: | ||
For that, we want to send big thanks to: | ||
|
||
- the guy who will show me how to include a list of contributors on github/gitlab | ||
|
||
## Citing | ||
|
||
:construction: Add here the informations how to cite ``minterpy``. | ||
|
||
## License | ||
|
||
|
@@ -223,30 +225,8 @@ For that we want to send big thanks to: | |
[MPI-CBG]: https://www.mpi-cbg.de | ||
[CSBD]: https://www.csbdresden.de | ||
|
||
## :construction: :construction: Useful badges: | ||
|
||
[![Actions Status][actions-badge]][actions-link] | ||
[![Documentation Status][rtd-badge]][rtd-link] | ||
[![Code style: black][black-badge]][black-link] | ||
|
||
[![PyPI version][pypi-version]][pypi-link] | ||
[![Conda-Forge][conda-badge]][conda-link] | ||
[![PyPI platforms][pypi-platforms]][pypi-link] | ||
|
||
|
||
[black-badge]: https://img.shields.io/badge/code%20style-black-000000.svg | ||
[black-link]: https://github.com/psf/black | ||
[conda-badge]: https://img.shields.io/conda/vn/conda-forge/minterpy | ||
[conda-link]: https://github.com/conda-forge/minterpy-feedstock | ||
[pypi-link]: https://pypi.org/project/minterpy/ | ||
[pypi-platforms]: https://img.shields.io/pypi/pyversions/minterpy | ||
[pypi-version]: https://badge.fury.io/py/minterpy.svg | ||
[rtd-badge]: https://readthedocs.org/projects/minterpy/badge/?version=latest | ||
[rtd-link]: https://minterpy.readthedocs.io/en/latest/?badge=latest | ||
|
||
## :construction: :construction: Todos | ||
- insert missing links | ||
- add sponsor logos (CASUS, HZDR, CSBD?, MPI-CBG?) | ||
- write shorter installation section | ||
- write more comprehensive quickstart (maybe higher dimensionality) | ||
- discuss the License we want to use | ||
|
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Oops, something went wrong.