diff --git a/python/sdist/amici/importers/pysb/__init__.py b/python/sdist/amici/importers/pysb/__init__.py index dacec0eb4a..390b29796f 100644 --- a/python/sdist/amici/importers/pysb/__init__.py +++ b/python/sdist/amici/importers/pysb/__init__.py @@ -14,9 +14,7 @@ import sys from collections.abc import Callable, Iterable from pathlib import Path -from typing import ( - Any, -) +from typing import Any import numpy as np import pysb diff --git a/python/sdist/amici/importers/sbml/__init__.py b/python/sdist/amici/importers/sbml/__init__.py index ee35b16767..da6bd129e3 100644 --- a/python/sdist/amici/importers/sbml/__init__.py +++ b/python/sdist/amici/importers/sbml/__init__.py @@ -82,7 +82,6 @@ SymbolicFormula = dict[sp.Symbol, sp.Expr] - default_symbols = {symbol: {} for symbol in SymbolId} ConservationLaw = dict[str, str | sp.Expr] diff --git a/python/sdist/amici/importers/sbml/conserved_quantities_rref.py b/python/sdist/amici/importers/sbml/conserved_quantities_rref.py index a64ef574d5..0bc68bfe77 100644 --- a/python/sdist/amici/importers/sbml/conserved_quantities_rref.py +++ b/python/sdist/amici/importers/sbml/conserved_quantities_rref.py @@ -1,15 +1,13 @@ """Find conserved quantities deterministically""" -from typing import Literal - import numpy as np __all__ = ["nullspace_by_rref", "rref"] def rref( - mat: np.array, round_ndigits: Literal[False] | int | None = None -) -> np.array: + mat: np.ndarray, round_ndigits: bool | int | None = None +) -> np.ndarray: """ Bring matrix ``mat`` to reduced row echelon form @@ -69,7 +67,7 @@ def _round(mat): return mat -def pivots(mat: np.array) -> list[int]: +def pivots(mat: np.ndarray) -> list[int]: """Get indices of pivot columns in ``mat``, assumed to be in reduced row echelon form""" pivot_cols = [] @@ -83,7 +81,7 @@ def pivots(mat: np.array) -> list[int]: return pivot_cols -def nullspace_by_rref(mat: np.array) -> np.array: +def nullspace_by_rref(mat: np.ndarray) -> np.ndarray: """Compute basis of the nullspace of ``mat`` based on the reduced row echelon form""" rref_mat = rref(mat) diff --git a/python/sdist/amici/sim/sundials/_numpy.py b/python/sdist/amici/sim/sundials/_numpy.py index b44c21614f..f33884f9b2 100644 --- a/python/sdist/amici/sim/sundials/_numpy.py +++ b/python/sdist/amici/sim/sundials/_numpy.py @@ -491,7 +491,7 @@ def __repr__(self): def by_id( self, entity_id: str, field: str = None, model: Model = None - ) -> np.array: + ) -> np.ndarray: """ Get the value of a given field for a named entity. @@ -635,7 +635,7 @@ def _entity_type_from_id( raise KeyError(f"Unknown symbol {entity_id}.") -def evaluate(expr: StrOrExpr, rdata: ReturnDataView) -> np.array: +def evaluate(expr: StrOrExpr, rdata: ReturnDataView) -> np.ndarray: """Evaluate a symbolic expression based on the given simulation outputs. :param expr: diff --git a/python/sdist/amici/sim/sundials/gradient_check.py b/python/sdist/amici/sim/sundials/gradient_check.py index 4f92d935d9..c45bfff83c 100644 --- a/python/sdist/amici/sim/sundials/gradient_check.py +++ b/python/sdist/amici/sim/sundials/gradient_check.py @@ -15,7 +15,7 @@ ExpData, Model, ParameterScaling, - ReturnData, + ReturnDataView, SensitivityMethod, SensitivityOrder, Solver, @@ -272,8 +272,8 @@ def check_derivatives( def _check_close( - result: np.array, - expected: np.array, + result: np.ndarray, + expected: np.ndarray, atol: float, rtol: float, field: str, @@ -342,7 +342,11 @@ def _check_close( def _check_results( - rdata: ReturnData, field: str, expected: np.array, atol: float, rtol: float + rdata: ReturnDataView, + field: str, + expected: np.ndarray, + atol: float, + rtol: float, ) -> None: """ Checks whether rdata[field] agrees with expected according to provided diff --git a/python/sdist/amici/sim/sundials/petab/v1/__init__.py b/python/sdist/amici/sim/sundials/petab/v1/__init__.py index 7d0a413b6b..fb596f9f2b 100644 --- a/python/sdist/amici/sim/sundials/petab/v1/__init__.py +++ b/python/sdist/amici/sim/sundials/petab/v1/__init__.py @@ -1,4 +1,8 @@ -from ._conditions import create_edatas, create_parameterized_edatas +from ._conditions import ( + create_edatas, + create_parameterized_edatas, + fill_in_parameters, +) from ._petab_problem import PetabProblem from ._simulations import ( EDATAS, @@ -31,4 +35,5 @@ "PetabSimulator", "create_edatas", "create_parameterized_edatas", + "fill_in_parameters", ] diff --git a/python/sdist/amici/sim/sundials/petab/v1/_simulations.py b/python/sdist/amici/sim/sundials/petab/v1/_simulations.py index 389c740503..e2d19a925b 100644 --- a/python/sdist/amici/sim/sundials/petab/v1/_simulations.py +++ b/python/sdist/amici/sim/sundials/petab/v1/_simulations.py @@ -60,6 +60,8 @@ "SRES", "RDATAS", "EDATAS", + "rdatas_to_measurement_df", + "rdatas_to_simulation_df", ] diff --git a/python/sdist/amici/testing/models.py b/python/sdist/amici/testing/models.py index b17cb76475..49d2a8a2be 100644 --- a/python/sdist/amici/testing/models.py +++ b/python/sdist/amici/testing/models.py @@ -1,8 +1,11 @@ """Test models used by AMICI.""" +from __future__ import annotations + import sys import tempfile from pathlib import Path +from typing import TYPE_CHECKING import libsbml import sympy as sp @@ -11,7 +14,9 @@ from amici.importers.antimony import antimony2amici, antimony2sbml from amici.importers.sbml.splines import CubicHermiteSpline from amici.importers.utils import amici_time_symbol -from amici.sim.sundials import AmiciModel, Model + +if TYPE_CHECKING: + from amici.sim.sundials import AmiciModel, Model model_dirac_ant = r""" p1 = 1; diff --git a/python/tests/util.py b/python/tests/util.py index d0c0bb8137..01538f68f5 100644 --- a/python/tests/util.py +++ b/python/tests/util.py @@ -6,7 +6,6 @@ import numpy as np import pandas as pd -from amici import import_model_module from amici.importers.sbml import SbmlImporter from amici.sim.sundials import ( AMICI_SUCCESS, @@ -14,6 +13,7 @@ ExpData, SensitivityMethod, SensitivityOrder, + import_model_module, run_simulation, ) from amici.sim.sundials.gradient_check import _check_close