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

Feature 2327 constraints #2339

Closed
wants to merge 23 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
b355ab7
GHA: only try to publish docker image if secrets are set (#2310)
dweindl Feb 26, 2024
16ec8b2
Refactor DEExporter/DEModel/csc_matrix (#2311)
dweindl Feb 26, 2024
8271da1
Don't eliminate parameters that are initial assignment targets (pt1) …
dweindl Feb 26, 2024
aeb5f34
Refactor de_export.py, extract sympy_utils.py (#2307)
dweindl Feb 26, 2024
c9b08ac
Refactor de_export.py, extract template functions (#2314)
dweindl Feb 26, 2024
eda7ad0
Refactor: smoother conversion from SUNMatrixWrapper to SUNMatrix (#2317)
dweindl Feb 26, 2024
bd915ad
Cache remote files for tests (#2313)
dweindl Feb 26, 2024
780d767
CMake: update BLAS detection (#2318)
dweindl Feb 26, 2024
4b1e73b
Refactor de_export.py, extract model compilation (#2315)
dweindl Feb 26, 2024
e679e51
Upgrade to SuiteSparse 7.6 (#2316)
dweindl Feb 26, 2024
5e386ee
Don't eliminate parameters that are initial assignment targets (pt2) …
dweindl Feb 27, 2024
6a1cc3c
Refactor DEModel, remove SbmlImporter dependency (#2312)
dweindl Feb 27, 2024
eb3fd4a
Split expressions into static and dynamic (#2303)
dweindl Feb 27, 2024
504f4bc
Refactor: Move amici.de_model to amici.de_model_components (#2323)
dweindl Feb 27, 2024
c4bcb9d
Refactor de_export.py, extract C++ function info to cxx_functions.py …
dweindl Feb 27, 2024
b4ab8a2
Deterministic ordering of source files in generated CMakeLists.txt (#…
dweindl Feb 27, 2024
85e35ae
Refactor de_export.py, extract _codegen.model_class (#2319)
dweindl Feb 28, 2024
4782cad
Refactor de_export, extract DEModel (#2324)
dweindl Feb 28, 2024
239ce2c
Allow setting MaxConvFails and MaxNonlinIters on solvers (#2335)
dweindl Mar 4, 2024
4a065e6
Fix size check in `Model::setStateIsNonNegative` (#2332)
dweindl Mar 4, 2024
61d17fa
GHA: use dateutil from pypi (#2337)
dweindl Mar 4, 2024
3a6b0df
Fix uncaught C++ exception in runAmiciSimulation (#2338)
dweindl Mar 4, 2024
a872bf2
Enable setting constraints on state variables
dweindl Feb 28, 2024
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
3 changes: 3 additions & 0 deletions .github/actions/setup-amici-cpp/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,9 @@ runs:
- run: echo "ENABLE_GCOV_COVERAGE=TRUE" >> $GITHUB_ENV
shell: bash

- run: echo "PYTHONFAULTHANDLER=1" >> $GITHUB_ENV
shell: bash

- name: Set up Sonar tools
uses: ./.github/actions/setup-sonar-tools

Expand Down
18 changes: 17 additions & 1 deletion .github/workflows/deploy_protected.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,25 @@ on:
workflow_dispatch:

jobs:
check-secret:
runs-on: ubuntu-latest
outputs:
secrets-defined: ${{ steps.secret-check.outputs.defined }}
steps:
- name: Check for Secret availability
id: secret-check
shell: bash
run: |
if [ "${{ secrets.DOCKER_USERNAME }}" != '' ]; then
echo "defined=true" >> $GITHUB_OUTPUT;
else
echo "defined=false" >> $GITHUB_OUTPUT;
fi

dockerhub:
name: Deploy Dockerhub
if: github.event.pull_request.head.repo.fork == false
needs: [check-secret]
if: needs.check-secret.outputs.secrets-defined == 'true'
runs-on: ubuntu-22.04

strategy:
Expand Down
14 changes: 14 additions & 0 deletions .github/workflows/test_python_cplusplus.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,13 @@ jobs:
python-version: [ "3.9" ]

steps:
- name: Cache
uses: actions/cache@v3
with:
path: |
~/.cache/pooch
key: ${{ runner.os }}-py${{ matrix.python-version }}-${{ github.job }}

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
Expand Down Expand Up @@ -265,6 +272,13 @@ jobs:
runs-on: macos-latest

steps:
- name: Cache
uses: actions/cache@v3
with:
path: |
~/Library/Caches/pooch
key: ${{ runner.os }}-py${{ matrix.python-version }}-${{ github.job }}

- name: Set up Python
uses: actions/setup-python@v5
with:
Expand Down
4 changes: 0 additions & 4 deletions .github/workflows/test_python_ver_matrix.yml
Original file line number Diff line number Diff line change
Expand Up @@ -50,10 +50,6 @@ jobs:
- name: Install python package
run: scripts/installAmiciSource.sh

# until https://github.com/dateutil/dateutil >2.8.2 is released https://github.com/dateutil/dateutil/issues/1314
- run: source build/venv/bin/activate && pip3 install git+https://github.com/dateutil/dateutil.git@296d419fe6bf3b22897f8f210735ac9c4e1cb796
if: matrix.python-version == '3.12'

# install pysb before sympy to allow for sympy>=1.12 (https://github.com/pysb/pysb/commit/e83937cb8c74afc9b2fa96595b68464946745f33)
- run: source build/venv/bin/activate && pip3 install git+https://github.com/pysb/pysb

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test_sbml_semantic_test_suite.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ on:
paths:
- .github/workflows/test_sbml_semantic_test_suite.yml
- python/sdist/amici/de_export.py
- python/sdist/amici/de_model.py
- python/sdist/amici/de_model_components.py
- python/sdist/amici/sbml_import.py
- python/sdist/amici/import_utils.py
- scripts/run-SBMLTestsuite.sh
Expand Down
30 changes: 28 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -169,9 +169,35 @@ if(${BLAS} STREQUAL "MKL" OR DEFINED ENV{MKLROOT})
-lmkl
CACHE STRING "")
endif()
elseif(NOT DEFINED ENV{BLAS_LIBS} AND NOT DEFINED ENV{BLAS_CFLAGS})
elseif(
NOT DEFINED ENV{BLAS_LIBS}
AND NOT DEFINED ENV{BLAS_CFLAGS}
AND NOT BLAS_FOUND)
# if nothing is specified via environment variables, let's try FindBLAS
find_package(BLAS)
if($(CMAKE_VERSION) VERSION_GREATER_EQUAL 3.22)
set(BLA_SIZEOF_INTEGER 8)
endif()

if(APPLE AND (NOT DEFINED BLA_VENDOR OR BLA_VENDOR STREQUAL "All"))
set(BLA_VENDOR Apple)
find_package(BLAS)
if(BLAS_FOUND)
set_property(
TARGET BLAS::BLAS
APPEND
PROPERTY INTERFACE_COMPILE_DEFINITIONS ACCELERATE_NEW_LAPACK)
set_property(
TARGET BLAS::BLAS
APPEND
PROPERTY INTERFACE_COMPILE_DEFINITIONS ACCELERATE_LAPACK_ILP64)
else()
set(BLA_VENDOR "All")
endif()

endif()
if(NOT BLAS_FOUND)
find_package(BLAS)
endif()
if(NOT BLAS_FOUND)
# Nothing specified by the user and FindBLAS didn't find anything; let's try
# if cblas is available on the system paths.
Expand Down
4 changes: 4 additions & 0 deletions ThirdParty/SuiteSparse/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,7 @@ CSparse/Tcov/cov.sort
CSparse/Tcov/cover.out
CSparse/Tcov/covs.out
CSparse/Tcov/cs_*.c
CSparse/Tcov/csparse_version.c
CSparse/Tcov/cstcov_test
CSparse/Tcov/*.out
CSparse/Tcov/cs_demo1
Expand All @@ -138,6 +139,7 @@ CXSparse/Tcov/cov.sort
CXSparse/Tcov/cover.out
CXSparse/Tcov/covs.out
CXSparse/Tcov/cs_*.c
CXSparse/Tcov/cxsparse_version.c
CXSparse/Tcov/*.out
CXSparse/Tcov/cs_demo1_ci
CXSparse/Tcov/cs_demo1_cl
Expand Down Expand Up @@ -168,7 +170,9 @@ SPQR/Tcov/gpu_results.txt
SPQR/Tcov/gpuqrengine_demo
SPQR/Tcov/qrdemo_gpu
SPQR/Tcov/qrtest
SPQR/Tcov/qrtest32
SPQR/Tcov/qrtest_out.txt
SPQR/Tcov/qrtest_out32.txt
SPQR/Tcov/troll.m
SPQR/Tcov/cov.out

Expand Down
Loading
Loading