Skip to content
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

PEtab import: Add option for treating fixed parameters as constants #1877

Merged
merged 8 commits into from
Oct 28, 2022

Conversation

dweindl
Copy link
Member

@dweindl dweindl commented Oct 26, 2022

Makes the changes from #1810 optional, as sometimes users prefer more flexible models.
The default remains to treat non-estimated parameters in PEtab as constants in AMICI.

Also adds a basic check for loading existing models during PEtab, to see if they are compatible to what was supposed to be imported. Only checks non-constant parameter IDs so far.

Makes the changes from #1810 optional,
as sometimes users prefer more flexible models.
The default is to treat non-estimated parameters in PEtab as constants in AMICI.
@codecov
Copy link

codecov bot commented Oct 26, 2022

Codecov Report

Merging #1877 (093e7eb) into develop (91415c7) will increase coverage by 0.30%.
The diff coverage is 92.85%.

Additional details and impacted files

Impacted file tree graph

@@             Coverage Diff             @@
##           develop    #1877      +/-   ##
===========================================
+ Coverage    75.51%   75.82%   +0.30%     
===========================================
  Files           74       74              
  Lines        12882    12895      +13     
===========================================
+ Hits          9728     9777      +49     
+ Misses        3154     3118      -36     
Flag Coverage Δ
cpp 72.89% <ø> (+0.13%) ⬆️
petab 59.89% <92.85%> (+0.75%) ⬆️
python 68.92% <0.00%> (-0.21%) ⬇️
sbmlsuite ?

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
python/tests/test_petab_import.py 100.00% <ø> (+100.00%) ⬆️
python/sdist/amici/petab_import.py 66.12% <92.85%> (+1.44%) ⬆️
src/solver_cvodes.cpp 70.23% <0.00%> (+0.16%) ⬆️
src/sundials_matrix_wrapper.cpp 80.61% <0.00%> (+0.40%) ⬆️
src/exception.cpp 81.08% <0.00%> (+5.40%) ⬆️
src/spline.cpp 72.04% <0.00%> (+6.45%) ⬆️

Copy link
Member

@dilpath dilpath left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

Copy link
Member

@FFroehlich FFroehlich left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

@sonarcloud
Copy link

sonarcloud bot commented Oct 28, 2022

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

0.0% 0.0% Coverage
0.0% 0.0% Duplication

@dweindl dweindl merged commit e43d0e8 into develop Oct 28, 2022
@dweindl dweindl deleted the petab_fixed_parameters branch October 28, 2022 10:16
@FFroehlich FFroehlich mentioned this pull request Nov 23, 2022
FFroehlich added a commit that referenced this pull request Nov 23, 2022
* Fix pandas groupby deprecation warning (#1873)

Fixes #1872

* Update reference list (#1874)

* Code printing: Use SymPy C99 math optimizations (#1377)

for SBML import. Does not currently work with PySB import. Also fixes some argument type issues.

Co-authored-by: Daniel Weindl <daniel.weindl@helmholtz-muenchen.de>

* PEtab import: Add option for treating fixed parameters as constants (#1877)

Makes the changes from #1810 optional, as sometimes users prefer more flexible models.
The default remains to treat non-estimated parameters in PEtab as constants in AMICI.

Also adds a basic check for loading existing models during PEtab, to see if they are compatible to what was supposed to be imported. Only checks non-constant parameter IDs so far.

* Make sympy code optimizations optional (#1878)

Turns out that applying sympy optimizations as introduced
in #1377 is
potentially very costly. Therefore, they are disabled by
default. They can be enabled by setting
`AmiciCxxCodePrinter.optimizations` as shown in the test
case.

* Update reference list (#1884)

* GHA: update actions (#1885)

Fixes some GHA warnings.

* Add macos hdf5 header/library paths (#1894)

* Doxygen 1.9.5 on RTD (#1889)

Older binaries are no longer available.

* Code-gen: Fix missing `return` in non-void-returning functions (#1892)

... and set `-Werror` for compiling models in debug mode.

* Add operator== for ExpData (#1881)

Adds `operator==` for `amici::ExpData` and fixes issues for other  `operator==` in case of NaNs in arrays.


Closes #1880

* Fix SetuptoolsDeprecationWarning (#1893)

Setuptools meanwhile requires listing data directories as subpackages. Fixes #1888.

* Dockerfile: Update base image to Ubuntu 22.04 (#1896)

* GHA: Pin python version for osx tests (#1891)

Fixes #1890.

Also: 
* use homebrew boost version
* fix CMake logic for selecting a specific Python version.

* Fix `petab_import.import_model(..., compile=False)` failure (#1897)

Fixes a bug where amici would fail importing an extension that was never built.

* bump version, update changelog

* fix changelog

* -Wno-error=deprecated-declarations

Co-authored-by: Daniel Weindl <dweindl@users.noreply.github.com>
Co-authored-by: Lorenzo Contento <lcontento@users.noreply.github.com>
Co-authored-by: Daniel Weindl <daniel.weindl@helmholtz-muenchen.de>
Co-authored-by: Doresic <85789271+Doresic@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants