Skip to content

develop -> release for Release 0.4.0 #175

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 88 commits into from
May 17, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
88 commits
Select commit Hold shift + click to select a range
88ac310
Small fix for release template
gomezzz May 5, 2022
e0d8265
Merge pull request #151 from esa/Release
gomezzz May 5, 2022
bbbb378
Merge pull request #150 from esa/Release
gomezzz May 5, 2022
b53a40f
Change the backend argument behaviour
FHof Jun 21, 2022
c2aa024
New JAX installation instructions
FHof Jun 23, 2022
9cc9988
Merge pull request #154 from FHof/feature/backend_mismatch_behaviour
gomezzz Jun 24, 2022
c1c9bdc
Added CITATION.cff
gomezzz Oct 17, 2022
3ccc51a
Update CITATION.cff
gomezzz Oct 17, 2022
5decc0e
Update CITATION.cff
gomezzz Oct 17, 2022
bb51366
Indentation fixes in cff
gomezzz Oct 17, 2022
95a559d
(feat): multi-dim integrand core
ilan-gold Dec 22, 2022
9b01c1a
(feat): multi-dim integrand simpson
ilan-gold Dec 22, 2022
e244cbd
(feat): finish newton_cotes + refactor
ilan-gold Dec 22, 2022
532977c
(fix): no erroneous print statement
ilan-gold Dec 22, 2022
fbfbe70
(style): API for tests: `dim` -> `integration_dim`
ilan-gold Dec 25, 2022
62868b5
(feat): setup API for multi dim integrand testing
ilan-gold Dec 25, 2022
cf407fb
(fix): add higher dim integrand test for deterministic methods
ilan-gold Jan 2, 2023
b8ace92
(chore): add multi dim integrand+integral tests
ilan-gold Jan 2, 2023
fce875a
(feat): > 2 integrand dims
ilan-gold Jan 2, 2023
74fa595
updated workflow script
gomezzz Jan 2, 2023
b34f1e6
fixing workflow errors
gomezzz Jan 2, 2023
97f6556
Update README.md
gomezzz Jan 2, 2023
0d6b392
try to use same pytest
gomezzz Jan 2, 2023
06e6c0c
switched to correct env file
gomezzz Jan 2, 2023
32ccda7
Merge pull request #159 from esa/fixing-badges
gomezzz Jan 2, 2023
b6af718
installing jax for tests
gomezzz Jan 2, 2023
1f3bd44
(feat): monte carlo integration
ilan-gold Jan 2, 2023
b6b122e
Removed outdated references
gomezzz Jan 2, 2023
7c66109
(chore): remove todo
ilan-gold Jan 3, 2023
cfe1808
(chore): don't do multi-dim-integrand for vegas
ilan-gold Jan 3, 2023
d662823
(feat): test for "vector" integrands
ilan-gold Jan 3, 2023
afe0ae5
Changing build env to recommended
gomezzz Jan 3, 2023
099f7f5
Merge pull request #158 from esa/switching-CI-to-mamba
gomezzz Jan 3, 2023
c27040f
Merge branch 'esa:main' into multi_dim_integrand
ilan-gold Jan 4, 2023
4277e03
(Fix): make dtype/backend correct
ilan-gold Jan 5, 2023
4204dfc
(fix): gradient sum expects single value
ilan-gold Jan 5, 2023
4cb4c70
(fix): revet `_apply_composite_rule` to static
ilan-gold Jan 5, 2023
4724216
(feat): consistent mechanism for handling arrays
ilan-gold Jan 11, 2023
c2f63a8
(fix): correct monte-carlo bounds
ilan-gold Jan 11, 2023
62c9bf6
(fix): trapezoid tolerance
ilan-gold Jan 11, 2023
8eb18d2
(fix): simpson test error tolerance
ilan-gold Jan 11, 2023
7958c5b
(fix): MC tests precision error.
ilan-gold Jan 12, 2023
937f997
Update torchquad/integration/newton_cotes.py
ilan-gold Jan 13, 2023
50f081b
(style): remove unused import
ilan-gold Jan 13, 2023
e2f2f1e
(chore): comment about einsum.
ilan-gold Jan 13, 2023
86f5312
(style): use different variable to prevent overriding argument
ilan-gold Jan 13, 2023
9e21525
(chore): add assertion message.
ilan-gold Jan 13, 2023
34ad17e
(chore): docstrings
ilan-gold Jan 13, 2023
feecd20
(chore): remove other unused import
ilan-gold Jan 13, 2023
705ef7b
Merge remote-tracking branch 'trunk/develop' into multi_dim_integrand
ilan-gold Jan 14, 2023
bcc97b3
Merge branch 'develop' into main
gomezzz Jan 16, 2023
db5d7d9
Merge pull request #161 from esa/main
gomezzz Jan 16, 2023
f803214
Merge branch 'develop' into multi_dim_integrand
ilan-gold Jan 16, 2023
6635102
(fix): env issue
ilan-gold Jan 19, 2023
e849946
Merge branch 'multi_dim_integrand' of github.com:ilan-gold/torchquad …
ilan-gold Jan 19, 2023
2974457
(fix): `intergal` -> `integral`
ilan-gold Jan 20, 2023
cb3e71e
(chore): add comment on test errors.
ilan-gold Jan 20, 2023
c098ce1
(chore): flake8 + black
ilan-gold Jan 20, 2023
9bf70c5
(chore): add docs
ilan-gold Jan 20, 2023
df65c54
(fix): `intergal` -> `integral` again
ilan-gold Jan 20, 2023
4d7e020
Update docs/source/tutorial.rst
ilan-gold Jan 23, 2023
ed19c09
Update docs/source/tutorial.rst
ilan-gold Jan 23, 2023
73910d2
(chore): add link to `scipy`
ilan-gold Jan 23, 2023
7435019
(feat): integrand that highlights improvement
ilan-gold Jan 23, 2023
d3dcaa0
Merge pull request #160 from ilan-gold/multi_dim_integrand
gomezzz Jan 24, 2023
76c4a24
Fixed tests badge
gomezzz Mar 1, 2023
8a46ce8
Updated gitignore
gomezzz Mar 8, 2023
e04b30a
Update workflow to post coverage in PR
gomezzz Mar 8, 2023
477c26a
WORKFLOW: Format Python code with black
htoftevaag Mar 8, 2023
03ae6cd
Commented out part where autoblack adds commits
gomezzz Mar 8, 2023
1376f78
Fixing paths
gomezzz Mar 8, 2023
08bbf01
Merge branch 'test-coverage' of https://github.com/esa/torchquad into…
gomezzz Mar 8, 2023
bb023d2
Removed commented out stuff
gomezzz Mar 8, 2023
fb995a0
More paths to fix
gomezzz Mar 8, 2023
4217174
Merge pull request #168 from esa/Disable-autoblack-action
gomezzz Mar 8, 2023
e5875df
(fix): use `static_argnums` for `jax` `jit` (#165)
ilan-gold Mar 8, 2023
f820796
(feat): add JIT integrator tests (#166)
ilan-gold Mar 8, 2023
e266374
Merge pull request #167 from esa/test-coverage
gomezzz Mar 8, 2023
ea1e014
Updating workflow permissions
gomezzz Mar 21, 2023
6cd7fa0
Only run on PRs
gomezzz Mar 26, 2023
64a0188
Merge pull request #169 from esa/fixing-coverage-workflow
gomezzz Apr 18, 2023
cd53251
Gaussian quadrature (#141)
elastufka Apr 19, 2023
ecaebbb
(feat): add customization API for `IntegrationGrid` (#173)
ilan-gold May 10, 2023
3a95426
(fix): update docs and clean up unsued attributes/methods
ilan-gold May 12, 2023
777f7ee
(fix): small edits
ilan-gold May 12, 2023
087b892
Merge pull request #174 from esa/main
gomezzz May 15, 2023
d3127e9
Merge pull request #176 from esa/ig/add_gaussian_docs
gomezzz May 15, 2023
e3254a2
(chore): small doc improvements (#177)
ilan-gold May 15, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/release.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ _to be written during release process_
## What Needs to Be Done (chronologically)

- [ ] Create PR from `main` -> `develop` to incorporate hotfixes / documentation changes.
- [ ] In case of merge conflicts create PR to fix them which is then merged into main.
- [ ] In case of merge conflicts create PR to fix them which is then merged into main / fix on GitHub but make sure to let it create a new branch for the changes.
- [ ] Review the PR
- [ ] Create PR to merge from current develop into release branch
- [ ] Write Changelog in PR and request review
Expand All @@ -25,7 +25,7 @@ _to be written during release process_
- [ ] Check documentation -> Check presence of documentation for all features by locally building the docs on the release
- [ ] Change version number in setup.py and docs (under conf.py)
- [ ] Trigger the Upload Python Package to testpypi GitHub Action (https://github.com/esa/torchquad/actions/workflows/deploy_to_test_pypi.yml) on the release branch (need to be logged in)
- [ ] Test the build on testpypi
- [ ] Test the build on testpypi (with `pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple torchquad`)
- [ ] Finalize release on the release branch
- [ ] Create PR: release → main , develop -> main
- [ ] PR Reviews
Expand Down
10 changes: 0 additions & 10 deletions .github/workflows/autoblack.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,3 @@ jobs:
run: pip install black
- name: Run black --check .
run: black --check .
- name: If needed, commit black changes to the pull request
if: failure()
run: |
black .
git config --global user.name 'htoftevaag'
git config --global user.email '[email protected]'
git remote set-url origin https://x-access-token:${{ secrets.Autoblack_access_token }}@github.com/$GITHUB_REPOSITORY
git checkout $GITHUB_HEAD_REF
git commit -am "WORKFLOW: Format Python code with black"
git push
90 changes: 55 additions & 35 deletions .github/workflows/run_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,49 +6,69 @@ name: Running tests
on:
push:
branches:
- main
- develop
- main
- develop
pull_request:
workflow_dispatch:
jobs:
lint_flake8:

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- name: Set up Python 3.9
uses: actions/setup-python@v2
with:
python-version: 3.9
- name: Lint with flake8
run: |
pip install flake8
flake8 . --count --show-source --statistics
- uses: actions/checkout@v2
- name: Set up Python 3.9
uses: actions/setup-python@v2
with:
python-version: 3.9
- name: Lint with flake8
run: |
pip install flake8
flake8 . --count --show-source --statistics

build:

runs-on: ubuntu-latest

permissions:
pull-requests: write
contents: read
id-token: write
steps:
- uses: actions/checkout@v2
- name: Set up Python 3.9
uses: actions/setup-python@v2
with:
python-version: 3.9
- name: Search for severe code errors with flake8
run: |
# stop the build if there are Python syntax errors or undefined names
pip install flake8
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
# # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
# flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
- name: Install dependencies
run: |
$CONDA/bin/conda env update --file environment_all_backends.yml --name base
- name: Test with pytest
run: |
cd torchquad/tests
conda install pytest
$CONDA/bin/pip3 install pytest-error-for-skips
$CONDA/bin/pytest -ra --error-for-skips
- uses: actions/checkout@v2
- name: Set up Python 3.9
uses: actions/setup-python@v2
with:
python-version: 3.9
- name: Search for severe code errors with flake8
run: |
# stop the build if there are Python syntax errors or undefined names
pip install flake8
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
# # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
# flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
- name: provision-with-micromamba
uses: mamba-org/provision-with-micromamba@main
with:
environment-file: environment_all_backends.yml
environment-name: torchquad
cache-downloads: true
- name: Test with pytest
shell: bash -l {0}
run: |
micromamba activate torchquad
cd torchquad/tests/
pip install pytest
pip install pytest-error-for-skips
pip install pytest-cov
pytest -ra --error-for-skips --junitxml=pytest.xml --cov-report=term-missing:skip-covered --cov=../../torchquad . | tee pytest-coverage.txt
- name: pytest coverage comment
uses: MishaKav/pytest-coverage-comment@main
if: github.event_name == 'pull_request'
with:
pytest-coverage-path: ./torchquad/tests/pytest-coverage.txt
title: Coverage Report
badge-title: Overall Coverage
hide-badge: false
hide-report: false
create-new-comment: false
hide-comment: false
report-only-changed-files: false
junitxml-path: ./torchquad/tests/pytest.xml
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -129,4 +129,6 @@ dmypy.json
.pyre/

my_notebooks
.vscode
.vscode
pytest-coverage.txt
pytest.xml
57 changes: 57 additions & 0 deletions CITATION.cff
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
cff-version: 1.2.0
message: "If you use this software, please cite it as below."
title: "torchquad: Numerical Integration in Arbitrary
Dimensions with PyTorch, TensorFlow & JAX"
authors:
- given-names: Pablo
family-names: Gómez
email: [email protected]
affiliation: >-
Advanced Concepts Team, European Space Agency,
Noordwijk, The Netherlands
orcid: "https://orcid.org/0000-0002-5631-8240"
- given-names: Håvard
family-names: Hem Toftevaag
affiliation: >-
Advanced Concepts Team, European Space Agency,
Noordwijk, The Netherlands
orcid: "http://orcid.org/0000-0003-4692-5722"
- given-names: Gabriele
family-names: Meoni
affiliation: >-
Advanced Concepts Team, European Space Agency,
Noordwijk, The Netherlands
orcid: "http://orcid.org/0000-0001-9311-6392"
repository-code: "https://github.com/esa/torchquad/"
url: "https://www.esa.int/gsp/ACT/open_source/torchquad/"
repository-artifact: "https://anaconda.org/conda-forge/torchquad"
license: GPL-3.0
preferred-citation:
type: article
authors:
- given-names: Pablo
family-names: Gómez
email: [email protected]
affiliation: >-
Advanced Concepts Team, European Space Agency,
Noordwijk, The Netherlands
orcid: "https://orcid.org/0000-0002-5631-8240"
- given-names: Håvard
family-names: Hem Toftevaag
affiliation: >-
Advanced Concepts Team, European Space Agency,
Noordwijk, The Netherlands
orcid: "http://orcid.org/0000-0003-4692-5722"
- given-names: Gabriele
family-names: Meoni
affiliation: >-
Advanced Concepts Team, European Space Agency,
Noordwijk, The Netherlands
orcid: "http://orcid.org/0000-0001-9311-6392"
doi: "10.21105/joss.03439"
journal: "Journal of Open Source Software"
title: "torchquad: Numerical Integration in Arbitrary
Dimensions with PyTorch"
issue: 6
volume: 64
year: 2021
8 changes: 3 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
*** Based on https://github.com/othneildrew/Best-README-Template
-->

![Read the Docs (version)](https://img.shields.io/readthedocs/torchquad/main?style=flat-square) ![GitHub Workflow Status (branch)](https://img.shields.io/github/workflow/status/esa/torchquad/Running%20tests/main?style=flat-square) ![GitHub last commit](https://img.shields.io/github/last-commit/esa/torchquad?style=flat-square)
![Read the Docs (version)](https://img.shields.io/readthedocs/torchquad/main?style=flat-square) [![Tests](https://github.com/esa/torchquad/actions/workflows/run_tests.yml/badge.svg)](https://github.com/esa/torchquad/actions/workflows/run_tests.yml) ![GitHub last commit](https://img.shields.io/github/last-commit/esa/torchquad?style=flat-square)
![GitHub](https://img.shields.io/github/license/esa/torchquad?style=flat-square) ![Conda (channel only)](https://img.shields.io/conda/vn/conda-forge/torchquad?style=flat-square) ![PyPI](https://img.shields.io/pypi/v/torchquad?style=flat-square) ![PyPI - Python Version](https://img.shields.io/pypi/pyversions/torchquad?style=flat-square)

![GitHub contributors](https://img.shields.io/github/contributors/esa/torchquad?style=flat-square)
Expand All @@ -23,8 +23,6 @@
<a href="https://torchquad.readthedocs.io"><strong>Explore the docs »</strong></a>
<br />
<br />
<a href="https://github.com/esa/torchquad/blob/master/notebooks/Torchquad%20-%20Example%20notebook.ipynb">View Example notebook</a>
·
<a href="https://github.com/esa/torchquad/issues">Report Bug</a>
·
<a href="https://github.com/esa/torchquad/issues">Request Feature</a>
Expand Down Expand Up @@ -127,7 +125,7 @@ Note also that installing PyTorch with *pip* may **not** set it up with CUDA sup
Here are installation instructions for other numerical backends:
```sh
conda install "tensorflow>=2.6.0=cuda*" -c conda-forge
pip install "jax[cuda]>=0.2.22" --find-links https://storage.googleapis.com/jax-releases/jax_releases.html # linux only
pip install "jax[cuda]>=0.2.22" --find-links https://storage.googleapis.com/jax-releases/jax_cuda_releases.html # linux only
conda install "numpy>=1.19.5" -c conda-forge
```

Expand Down Expand Up @@ -275,7 +273,7 @@ Created by ESA's [Advanced Concepts Team](https://www.esa.int/gsp/ACT/index.html

- Pablo Gómez - `pablo.gomez at esa.int`
- Gabriele Meoni - `gabriele.meoni at esa.int`
- Håvard Hem Toftevaag - `havard.hem.toftevaag at esa.int`
- Håvard Hem Toftevaag

Project Link: [https://github.com/esa/torchquad](https://github.com/esa/torchquad)

Expand Down
2 changes: 1 addition & 1 deletion docs/source/install.rst
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ Here are installation instructions for other numerical backends:
.. code-block:: bash

conda install "tensorflow>=2.6.0=cuda*" -c conda-forge
pip install "jax[cuda]>=0.2.22" --find-links https://storage.googleapis.com/jax-releases/jax_releases.html # linux only
pip install "jax[cuda]>=0.2.22" --find-links https://storage.googleapis.com/jax-releases/jax_cuda_releases.html # linux only
conda install "numpy>=1.19.5" -c conda-forge

More installation instructions for numerical backends can be found in
Expand Down
11 changes: 11 additions & 0 deletions docs/source/integration_methods.rst
Original file line number Diff line number Diff line change
Expand Up @@ -51,3 +51,14 @@ Trapezoid Rule
.. autoclass:: torchquad.Trapezoid
:members: integrate
:noindex:

Gaussian Quadrature
^^^^^^^^^^^^^^^^^^^^^^

.. autoclass:: torchquad.Gaussian
:members: integrate, _resize_roots
:noindex:

.. autoclass:: torchquad.GaussLegendre
:members: integrate
:noindex:
Loading