Skip to content

Commit 7205332

Browse files
author
Uwe Hernandez Acosta
committed
Merge branch 'release-v0.2.0-alpha' into 'main'
Release 0.2.0-alpha See merge request interpol/minterpy!58
2 parents 75d8976 + 57f00ca commit 7205332

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+2462
-5635
lines changed

.gitlab-ci.yml

Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
# To contribute improvements to CI/CD templates, please follow the Development guide at:
2+
# https://docs.gitlab.com/ee/development/cicd/templates.html
3+
# This specific template is located at:
4+
# https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Python.gitlab-ci.yml
5+
6+
# Official language image. Look for the different tagged releases at:
7+
# https://hub.docker.com/r/library/python/tags/
8+
image: python:3.8
9+
10+
# Change pip's cache directory to be inside the project directory since we can
11+
# only cache local items.
12+
variables:
13+
PIP_CACHE_DIR: "$CI_PROJECT_DIR/.cache/pip"
14+
15+
# Pip's cache doesn't store the python packages
16+
# https://pip.pypa.io/en/stable/reference/pip_install/#caching
17+
#
18+
# If you want to also cache the installed packages, you have to install
19+
# them in a virtualenv and cache it as well.
20+
cache:
21+
paths:
22+
- .cache/pip
23+
- venv/
24+
25+
26+
stages:
27+
- test
28+
- docs
29+
30+
before_script:
31+
- uname -a
32+
- python --version # For debugging
33+
- cat setup.cfg
34+
- apt-get update -y && apt-get upgrade -y
35+
- pip install --upgrade pip
36+
- pip install virtualenv
37+
- virtualenv venv
38+
- source venv/bin/activate
39+
40+
unittest:
41+
stage: test
42+
script:
43+
- pip install pytest pytest-cov
44+
- pip install -e .
45+
- pytest --junitxml=report.xml -vvv
46+
rules:
47+
- if: $CI_PIPELINE_SOURCE == 'merge_request_event'
48+
- if: $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == 'dev'
49+
- if: $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == 'main'
50+
artifacts:
51+
when: always
52+
reports:
53+
junit: report.xml
54+
55+
coverage:
56+
stage: test
57+
script:
58+
- pip install pytest pytest-cov
59+
- pip install -e .
60+
- export NUMBA_DISABLE_JIT=1
61+
- pytest --junitxml=report.xml tests --cov-report xml --cov=src -vvv
62+
coverage: '/TOTAL\s+\d+\s+\d+\s+(\d+%)/'
63+
only:
64+
- main
65+
- dev
66+
artifacts:
67+
when: always
68+
reports:
69+
junit: report.xml
70+
71+
pages:
72+
stage: docs
73+
script:
74+
- apt-get install -y pandoc
75+
- rm -rf public
76+
- mkdir public
77+
- pip install -e .[docs]
78+
- pip install jupyter
79+
- cd docs ; make html
80+
- cd ..
81+
- cp -r docs/build/html/* public/
82+
artifacts:
83+
paths:
84+
- public
85+
only:
86+
- dev

CHANGELOG.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,29 @@
11
# Changelog
22

3+
# Version 0.2.0-alpha
4+
This is the next alpha release of `minterpy`, which adds several new functionalities and enhances code quality and performance.
5+
6+
## new features
7+
* partial derivatives for canonical and Newton polynomials
8+
* support of arbitrary positive `lp_degree`
9+
* ordinary regression based on multivariate polynomials as the first extra feature
10+
11+
## maintenance
12+
* bug fixes
13+
* adding API documentation
14+
* improvement of user documentations
15+
* clean-up: deletion of code/comments, which are no longer used
16+
* introduction of a corporate design including logo and banner to docs, repository, README etc.
17+
18+
19+
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.
20+
21+
322
# Version 0.1.0-alpha
423
This is the initial alpha release of `minterpy`. It contains general structures to perform the polynomial interpolation task in multiple dimensions:
524
* Multivariate polynomial bases (ABC + concrete implementations)
625
* Base transformations
726
* Interpolation schemes
827

928
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.
29+

README.md

Lines changed: 13 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,14 @@
1+
![](./docs/assets/Wordmark-color.png)
2+
3+
[![Code style: black][black-badge]][black-link]
14
# minterpy
25

36
<figure class="quote">
47
<blockquote>
58
to minterpy *sth.* (transitive verb) -- to produce a multivariate polynomial representation of *sth.* .
69
</blockquote>
710
<figcaption>
8-
&mdash; The minterpy developers in <cite>["Lifting the curse of dimensionality"](link-to-math-intro)</cite>
11+
&mdash; The minterpy developers in <cite>["Lifting the curse of dimensionality"](https://interpol.pages.hzdr.de/minterpy/fundamentals/introduction.html)</cite>
912
</figcaption>
1013
</figure>
1114

@@ -38,7 +41,7 @@ to a broad field of computational challenges, including but not limited to:
3841

3942
Since this implementation is a prototype,
4043
we currently only provide the installation by self-building from source.
41-
We recommend to use `git` to get the `minterpy` source:
44+
We recommend to using `git` to get the `minterpy` source:
4245

4346
```bash
4447
git clone https://gitlab.hzdr.de/interpol/minterpy.git
@@ -114,7 +117,7 @@ the number of dimensions (`spatial_dimension`),
114117
and the degree of the underlying polynomial (`poly_degree`).
115118

116119
You may adjust this parameter in order to get higher accuracy.
117-
For the example above, a degree of 64 produces an interpolant which reproduces
120+
For the example above, a degree of 64 produces an interpolant that reproduces
118121
the `test_function` almost up to machine precision:
119122

120123
```python
@@ -127,9 +130,10 @@ the `test_function` almost up to machine precision:
127130
plt.legend()
128131
plt.show()
129132
```
133+
<img src="./docs/assets/images/test-function1D.png" alt="Compare test function with its interpolant" width="400"/>
130134

131-
![Compare test function with its interpolant](docs/assets/test_function1D.png)
132-
For a more comprehensive examples, see the [getting started guides](link-to-tutorials)
135+
136+
For more comprehensive examples, see the [getting started guides](https://interpol.pages.hzdr.de/minterpy/getting-started/index.html)
133137
section of the ``minterpy`` docs.
134138

135139
## Testing
@@ -148,7 +152,7 @@ from within the `minterpy` source directory.
148152
## Contributing to `minterpy`
149153

150154
Contributions to the `minterpy` packages are highly welcome.
151-
We recommend you to have a look at the [CONTRIBUTING.md](./CONTRIBUTING.md) first.
155+
We recommend you have a look at the [CONTRIBUTING.md](./CONTRIBUTING.md) first.
152156
For a more comprehensive contribution guide visit
153157
the [Contributors section](link-to-developer-section) of the documentation.
154158

@@ -168,6 +172,7 @@ namely
168172
- Uwe Hernandez Acosta ([HZDR]/[CASUS]) ([email protected])
169173
- Sachin Krishnan Thekke Veettil ([HZDR]/[CASUS]) ([email protected])
170174
- Damar Wicaksono ([HZDR]/[CASUS]) ([email protected])
175+
- Janina Schreiber ([HZDR]/[CASUS]) ([email protected])
171176

172177
### Mathematical foundation
173178

@@ -193,13 +198,10 @@ namely
193198

194199
This package would not be possible without many contributions done
195200
from the community as well.
196-
For that we want to send big thanks to:
201+
For that, we want to send big thanks to:
197202

198203
- the guy who will show me how to include a list of contributors on github/gitlab
199204

200-
## Citing
201-
202-
:construction: Add here the informations how to cite ``minterpy``.
203205

204206
## License
205207

@@ -223,30 +225,8 @@ For that we want to send big thanks to:
223225
[MPI-CBG]: https://www.mpi-cbg.de
224226
[CSBD]: https://www.csbdresden.de
225227

226-
## :construction: :construction: Useful badges:
227-
228-
[![Actions Status][actions-badge]][actions-link]
229-
[![Documentation Status][rtd-badge]][rtd-link]
230-
[![Code style: black][black-badge]][black-link]
231-
232-
[![PyPI version][pypi-version]][pypi-link]
233-
[![Conda-Forge][conda-badge]][conda-link]
234-
[![PyPI platforms][pypi-platforms]][pypi-link]
235228

236229

237230
[black-badge]: https://img.shields.io/badge/code%20style-black-000000.svg
238231
[black-link]: https://github.com/psf/black
239-
[conda-badge]: https://img.shields.io/conda/vn/conda-forge/minterpy
240-
[conda-link]: https://github.com/conda-forge/minterpy-feedstock
241-
[pypi-link]: https://pypi.org/project/minterpy/
242-
[pypi-platforms]: https://img.shields.io/pypi/pyversions/minterpy
243-
[pypi-version]: https://badge.fury.io/py/minterpy.svg
244-
[rtd-badge]: https://readthedocs.org/projects/minterpy/badge/?version=latest
245-
[rtd-link]: https://minterpy.readthedocs.io/en/latest/?badge=latest
246-
247-
## :construction: :construction: Todos
248-
- insert missing links
249-
- add sponsor logos (CASUS, HZDR, CSBD?, MPI-CBG?)
250-
- write shorter installation section
251-
- write more comprehensive quickstart (maybe higher dimensionality)
252-
- discuss the License we want to use
232+

docs/assets/Wordmark-color.png

15.9 KB
Loading

0 commit comments

Comments
 (0)