Skip to content

Commit f921278

Browse files
authored
Release 0.10.20
Release 0.10.20 --- Merge pull request #1014 from ICB-DCM/release_0.10.20 * Fixed (re)initialization of sensitivities if ExpData::fixedParametersPreequilibration is set (#994) * Fixed sensitivities for parameters in sigma expressions for Python/SBML in case provided expression was not just a single parameter ID * Enable parallel compilation of model files from Python (#997) based on AMICI_PARALLEL_COMPILE enviroment variable * Fixed computation of log-likelihood for log10-normal distributed noise * Added `reinitializeFixedParameterInitialStates` to ExpData (#1000) (**breaking change**: overrides settings in `amici::Model`) * Python model import now verifies that chosen model name is a valid identifier (Closes #928) * Made w available in ReturnData (Closes #990) (#992) * Fixed setting of log level when passing boolean values to verbose (#991) * Documentation now on ReadTheDocs https://amici.readthedocs.io/en/ * Use proper state/observable names in plotting functions (#979) * PEtab support: * Adapt to most recent PEtab (0.1.5) * Extended support for import of PEtab models * Added support for computing cost function based on PEtab problem * Implemented handling of species in condition table * petab_import.import_model now provides reproducible parameter list (Closes #976) * Fix python import error in import_petab_problem: Add absolute paths to python path, invalidate caches and reload (#970) * Added example notebook * CI: PEtab test suite integrated in CI workflow * Added AMICI dockerfile and image deployment to dockerhub (#948) * Removed mention of 'mex' in warning/error ids (#968) * More informative errors on SWIG interface import failures (#959)
2 parents 16e3d76 + c3c4723 commit f921278

Some content is hidden

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

83 files changed

+6069
-3850
lines changed
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# https://github.com/marketplace/actions/publish-docker
2+
name: Deploy to dockerhub
3+
on: [push]
4+
jobs:
5+
build:
6+
name: Deploy to dockerhub
7+
runs-on: ubuntu-latest
8+
steps:
9+
- uses: actions/checkout@master
10+
- run: git archive -o docker/amici.tar.gz --format=tar.gz HEAD
11+
- name: Publish to Registry
12+
uses: elgohr/Publish-Docker-Github-Action@2.8
13+
with:
14+
name: dweindl/amici
15+
username: ${{ secrets.DOCKER_USERNAME }}
16+
password: ${{ secrets.DOCKER_PASSWORD }}
17+
workdir: docker/
18+
dockerfile: Dockerfile
19+
tag_names: true

.github/workflows/deploy_sdist.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ on: push
33

44
jobs:
55
build:
6+
name: Deploy Python source distribution
67

78
runs-on: ubuntu-latest
89

@@ -13,7 +14,8 @@ jobs:
1314

1415
- name: apt
1516
run: |
16-
sudo apt-get install -y swig3.0 \
17+
sudo apt-get update \
18+
&& sudo apt-get install -y swig3.0 \
1719
&& sudo ln -s /usr/bin/swig3.0 /usr/bin/swig
1820
- name: pip
1921
run: |

.github/workflows/sbml-semantic-test-suite.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ on:
1010

1111
jobs:
1212
build:
13+
name: SBML semantic test suite
1314

1415
runs-on: ubuntu-latest
1516

@@ -18,6 +19,9 @@ jobs:
1819
with:
1920
fetch-depth: 1
2021
- name: apt
21-
run: sudo apt-get install -y swig3.0 libatlas-base-dev && sudo ln -s /usr/bin/swig3.0 /usr/bin/swig
22+
run: |
23+
sudo apt-get update \
24+
&& sudo apt-get install -y swig3.0 libatlas-base-dev \
25+
&& sudo ln -s /usr/bin/swig3.0 /usr/bin/swig
2226
- run: AMICI_PARALLEL_COMPILE=2 ./scripts/installAmiciSource.sh
2327
- run: AMICI_PARALLEL_COMPILE=2 ./scripts/run-SBMLTestsuite.sh

.github/workflows/test-benchmark-collection-models.yml

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,11 @@ on:
88
pull_request:
99
branches:
1010
- master
11+
- develop
1112

1213
jobs:
1314
build:
15+
name: Benchmark collection
1416

1517
runs-on: ubuntu-latest
1618

@@ -22,13 +24,14 @@ jobs:
2224
# install dependencies
2325
- name: apt
2426
run: |
25-
sudo apt-get install -y swig3.0 libatlas-base-dev \
27+
sudo apt-get update \
28+
&& sudo apt-get install -y swig3.0 libatlas-base-dev \
2629
&& sudo ln -s /usr/bin/swig3.0 /usr/bin/swig
2730
- name: pip
2831
run: |
2932
pip3 install --upgrade --user wheel \
3033
&& pip3 install --upgrade --user setuptools
31-
- run: pip3 install shyaml petab>=0.1.1
34+
- run: pip3 install pytest shyaml
3235
- run: |
3336
echo ::add-path::${HOME}/.local/bin/
3437
echo ::add-path::${GITHUB_WORKSPACE}/tests/performance/
@@ -41,13 +44,11 @@ jobs:
4144
run: |
4245
AMICI_PARALLEL_COMPILE=2 check_time.sh \
4346
install_sdist pip3 install -v --user \
44-
$(ls -t python/sdist/dist/amici-*.tar.gz | head -1)
47+
$(ls -t python/sdist/dist/amici-*.tar.gz | head -1)[petab]
4548
4649
# retrieve test models
4750
- name: Download and test benchmark collection
48-
# TODO do something more efficient than cloning this big repo
4951
run: |
50-
git clone --depth 1 https://github.com/LeonardSchmiester/Benchmark-Models.git \
51-
&& cd Benchmark-Models && git checkout hackathon && cd .. \
52-
&& export BENCHMARK_COLLECTION="$(pwd)/Benchmark-Models/hackathon_contributions_new_data_format/" \
53-
&& tests/benchmark-models/test_benchmark_collection.sh
52+
git clone --depth 1 https://github.com/benchmarking-initiative/Benchmark-Models-PEtab.git \
53+
&& export BENCHMARK_COLLECTION="$(pwd)/Benchmark-Models-PEtab/Benchmark-Models/" \
54+
&& AMICI_PARALLEL_COMPILE=2 tests/benchmark-models/test_benchmark_collection.sh

.github/workflows/test-large-model.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,14 @@ on:
44
branches:
55
- develop
66
- master
7-
- fix_945
87

98
pull_request:
109
branches:
1110
- master
1211

1312
jobs:
1413
build:
14+
name: Performance test
1515

1616
runs-on: ubuntu-latest
1717

@@ -23,7 +23,8 @@ jobs:
2323
# install dependencies
2424
- name: apt
2525
run: |
26-
sudo apt-get install -y swig3.0 libatlas-base-dev \
26+
sudo apt-get update \
27+
&& sudo apt-get install -y swig3.0 libatlas-base-dev \
2728
&& sudo ln -s /usr/bin/swig3.0 /usr/bin/swig
2829
- name: pip
2930
run: |
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
name: PEtab testsuite
2+
on:
3+
push:
4+
branches:
5+
- develop
6+
- master
7+
8+
pull_request:
9+
branches:
10+
- master
11+
- develop
12+
13+
jobs:
14+
build:
15+
name: PEtab testsuite
16+
17+
runs-on: ubuntu-latest
18+
19+
env:
20+
ENABLE_GCOV_COVERAGE: TRUE
21+
22+
steps:
23+
- uses: actions/checkout@master
24+
with:
25+
fetch-depth: 20
26+
27+
# install dependencies
28+
- name: apt
29+
run: |
30+
sudo apt-get update \
31+
&& sudo apt-get install -y swig3.0 libatlas-base-dev \
32+
&& sudo ln -s /usr/bin/swig3.0 /usr/bin/swig
33+
- name: pip
34+
run: |
35+
pip3 install --upgrade --user wheel \
36+
&& pip3 install --upgrade --user setuptools
37+
- run: pip3 install pytest shyaml pytest-cov
38+
- run: |
39+
echo ::add-path::${HOME}/.local/bin/
40+
echo ::add-path::${GITHUB_WORKSPACE}/tests/performance/
41+
# install AMICI
42+
- name: Create AMICI sdist
43+
run: |
44+
cd python/sdist \
45+
&& check_time.sh create_sdist /usr/bin/python3 setup.py sdist
46+
- name: Install AMICI sdist
47+
run: |
48+
AMICI_PARALLEL_COMPILE=2 check_time.sh \
49+
install_sdist pip3 install -v --user \
50+
$(ls -t python/sdist/dist/amici-*.tar.gz | head -1)[petab]
51+
52+
- name: Run PEtab-related unit tests
53+
run: |
54+
pytest --cov-report=xml --cov=./ tests/testMisc.py
55+
56+
# retrieve test models
57+
- name: Download and run petab test suite
58+
run: |
59+
git clone --depth 1 https://github.com/petab-dev/petab_test_suite \
60+
&& cd petab_test_suite; pip3 install -e .; cd .. \
61+
&& AMICI_PARALLEL_COMPILE=2 pytest -v --cov-report=xml --cov-append --cov=./ tests/petab_test_suite/
62+
63+
- name: Codecov
64+
uses: codecov/codecov-action@v1.0.6
65+
with:
66+
token: ${{ secrets.CODECOV_TOKEN }}
67+
file: ./coverage.xml
68+
flags: python
69+
fail_ci_if_error: true

.gitignore

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ doc/*
1212
fonts/*
1313
images/*
1414
stylesheets/*
15+
documentation/_build/*
1516

1617
sed-ml/*
1718

@@ -37,6 +38,8 @@ models/model_robertson/build/*
3738
!models/model_calvetti
3839
models/model_calvetti/build/*
3940

41+
amici_models/*
42+
4043
simulate_model_*_hdf.m
4144
simulate_model_*.m
4245

@@ -132,6 +135,7 @@ tests/sedml-test-suite/
132135
*/sbml-semantic-test-cases/*
133136
tests/SBMLTestModels/
134137
tests/benchmark-models/test_bmc
138+
tests/petab_test_suite
135139
/python/test/amici-SBMLTest*/
136140

137141
python/examples/example_steadystate/model_steadystate_scaled/*
@@ -165,3 +169,8 @@ ThirdParty/superlu_mt_3.1.tar.gz
165169
ThirdParty/swig-*
166170

167171
_untracked/
172+
173+
documentation/generated/*
174+
175+
# vim
176+
*.swp

.readthedocs.yml

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# .readthedocs.yml
2+
# Read the Docs configuration file
3+
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
4+
5+
# Required
6+
version: 2
7+
8+
# Build documentation in the docs/ directory with Sphinx
9+
sphinx:
10+
builder: html
11+
configuration: documentation/conf.py
12+
fail_on_warning: True
13+
14+
# Build documentation with MkDocs
15+
#mkdocs:
16+
# configuration: mkdocs.yml
17+
18+
# Optionally build your docs in additional formats such as PDF and ePub
19+
formats:
20+
- pdf
21+
22+
# Optionally set the version of Python and requirements required to build your docs
23+
python:
24+
version: 3.7
25+
install:
26+
- requirements: documentation/rtd_requirements.txt
27+
28+
build:
29+
image: latest

.travis.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -174,7 +174,7 @@ install:
174174
- if [[ "$CI_ARCHIVE" == "TRUE" ]]; then ./scripts/installAmiciArchive.sh; fi
175175
- if [[ "$CI_PYTHON" == "TRUE" ]]; then ./scripts/installAmiciSource.sh; fi
176176
- if [[ "$TRAVIS_OS_NAME" == "windows" ]]; then cd python/sdist && python setup.py sdist; fi
177-
- if [[ "$TRAVIS_OS_NAME" == "windows" ]]; then pip install $(ls -t dist/amici-*.tar.gz | head -1); fi
177+
- if [[ "$TRAVIS_OS_NAME" == "windows" ]]; then pip install -v $(ls -t dist/amici-*.tar.gz | head -1); fi
178178

179179
script:
180180
- export -f travis_fold travis_nanoseconds travis_time_start travis_time_finish
@@ -189,6 +189,7 @@ script:
189189
- if [[ "$CI_CPPUTEST" == "TRUE" ]] && [[ "$TRAVIS_OS_NAME" == "linux" ]]; then $FOLD valgrind ./scripts/run-valgrind.sh; fi
190190
- if [[ "$CI_CPPUTEST" == "TRUE" ]] && [[ "$TRAVIS_OS_NAME" != "linux" ]]; then $FOLD cpputest ./scripts/run-cpputest.sh; fi
191191
- if [[ "$CI_DOC" == "TRUE" ]]; then $FOLD doxygen ./scripts/run-doxygen.sh; fi
192+
- if [[ "$CI_PYTHON" == "TRUE" ]]; then $FOLD sphinx ./scripts/run-sphinx.sh; fi
192193

193194
after_failure:
194195
- $FOLD ls -alR

README.md

Lines changed: 18 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,22 @@ computation in parameter estimation of biochemical reaction models but
2929
it is also applicable to a wider range of differential equation
3030
constrained optimization problems.
3131

32+
## Current build status
33+
34+
<a href="https://badge.fury.io/py/amici" alt="PyPI version">
35+
<img src="https://badge.fury.io/py/amici.svg"></a>
36+
<a href="https://travis-ci.com/ICB-DCM/AMICI" alt="Build Status">
37+
<img src="https://travis-ci.com/ICB-DCM/AMICI.svg?branch=master"></a>
38+
<a href="https://codecov.io/gh/ICB-DCM/AMICI" alt="CodeCov">
39+
<img src="https://codecov.io/gh/ICB-DCM/AMICI/branch/master/graph/badge.svg"></a>
40+
<a href="https://www.codacy.com/app/FFroehlich/AMICI" alt="Codacy">
41+
<img src="https://api.codacy.com/project/badge/Grade/945235766e344a7fa36278feab915ff6"></a>
42+
<a href="https://zenodo.org/badge/latestdoi/43677177" alt="Zenodo">
43+
<img src="https://zenodo.org/badge/43677177.svg"></a>
44+
<a href="https://amici.readthedocs.io/en/latest/?badge=latest" alt="RTD">
45+
<img src="https://readthedocs.org/projects/amici/badge/?version=latest"></a>
46+
<a href="https://bestpractices.coreinfrastructure.org/projects/3780">
47+
<img src="https://bestpractices.coreinfrastructure.org/projects/3780/badge"></a>
3248

3349
## Features
3450

@@ -72,7 +88,8 @@ To get started with Matlab-AMICI, various examples are available
7288
in [matlab/examples/](https://github.com/ICB-DCM/AMICI/tree/master/matlab/examples).
7389

7490
Comprehensive documentation on installation and usage of AMICI is available
75-
online at [http://icb-dcm.github.io/AMICI/](http://icb-dcm.github.io/AMICI/).
91+
online for the [python](https://amici.readthedocs.io/en/latest/) and
92+
[MATLAB/C++](http://icb-dcm.github.io/AMICI/) interfaces.
7693

7794
Any [contributions](http://icb-dcm.github.io/AMICI/md__c_o_n_t_r_i_b_u_t_i_n_g.html)
7895
to AMICI are welcome (code, bug reports, suggestions for improvements, ...).
@@ -139,15 +156,3 @@ However, the following features are unlikely to be supported:
139156
- `delay()` due to missing SUNDIALS solver support
140157

141158
In addition to SBML, we also plan to implement support for the [Simulation Experiment Description Markup Language (SED-ML)](https://sed-ml.org/).
142-
143-
144-
## Current build status
145-
146-
<a href="https://badge.fury.io/py/amici" alt="PyPI version">
147-
<img src="https://badge.fury.io/py/amici.svg"></a>
148-
<a href="https://travis-ci.com/ICB-DCM/AMICI" alt="Build Status">
149-
<img src="https://travis-ci.com/ICB-DCM/AMICI.svg?branch=master"></a>
150-
<a href="https://codecov.io/gh/ICB-DCM/AMICI" alt="CodeCov">
151-
<img src="https://codecov.io/gh/ICB-DCM/AMICI/branch/master/graph/badge.svg"></a>
152-
<a href="https://www.codacy.com/app/FFroehlich/AMICI" alt="Codacy">
153-
<img src="https://api.codacy.com/project/badge/Grade/945235766e344a7fa36278feab915ff6"></a>

0 commit comments

Comments
 (0)