@@ -8,9 +8,26 @@ See also our [versioning policy](https://amici.readthedocs.io/en/latest/versioni
88
99** BREAKING CHANGES**
1010
11- * The package has been reorganized. All importers have been moved to
12- ` amici.importers ` subpackages. For example, all functionality from
13- ` amici.sbml_import ` is now available in ` amici.importers.sbml ` .
11+ * Removed functionality*
12+
13+ The following functionality has been removed without replacement:
14+
15+ * The complete MATLAB interface has been removed.
16+ * ` amici.sbml_import.species_to_parameters ` has been removed.
17+
18+ * API changes*
19+
20+ * For a more consistent API, all function names are now ` snake_case ` instead of
21+ ` camelCase ` .
22+ * The package has been reorganized.
23+ * All importers have been moved to ` amici.importers ` subpackages.
24+ For example, all functionality from ` amici.sbml_import ` is now available in
25+ ` amici.importers.sbml ` .
26+ * All simulation-related functionality has been moved to ` amici.sim.sundials `
27+ for the SUNDIALS interface, and ` amici.sim.jax ` for the JAX interface.
28+ * A number of functions and modules have been made private
29+ (i.e., their name starts with ` _ ` or they are excluded from ` __all__ ` ),
30+ as they are not intended for public use and may change without deprecation.
1431* The naming of free and fixed parameters has been harmonized across the API:
1532 AMICI differentiates between parameters with respect to which a model
1633 can compute sensitivities ("free parameters") and parameters with respect to
@@ -37,21 +54,16 @@ See also our [versioning policy](https://amici.readthedocs.io/en/latest/versioni
3754* ` assignmentRules2observables ` has been renamed to
3855 ` assignment_rules_to_observables ` and now returns ` list[MeasurementChannel] `
3956 to be passed to the import functions.
40- * ` assignmentRules2observables ` has been renamed to
41- ` assignment_rules_to_observables ` and now returns ` list[MeasurementChannel] `
42- to be passed to the import functions.
4357* ` AmiVector::getLength ` and ` AmiVectorArray::getLength ` have been renamed to
4458 ` size ` to be more consistent with STL containers.
4559* ` amici.petab.petab_import.import_model ` has been removed.
46- Use ` amici.petab.petab_import.import_model_sbml ` instead.
47- (The former was just an alias for the latter.)
48- * For a more consistent API, all function names are now snake_case instead of
49- camelCase.
50- * ` Model.getSolver ` has been renamed to ` Model.create_solver ` .
60+ Use ` amici.importers.petab.v1.import_petab_problem ` instead.
61+ * ` Model.getSolver ` has been renamed to ` Model.create_solver ` ,
62+ emphasizing that a new ` Solver ` instance is created on each call.
5163* ` amici.runAmiciSimulation ` and ` amici.runAmiciSimulations ` have been renamed
52- to ` amici.run_simulation ` and ` amici.run_simulations ` .
64+ to ` amici.sim.sundials.run_simulation ` and
65+ ` amici.sim.sundials.run_simulations ` , respectively.
5366* The following deprecated functionality has been removed:
54- * The complete MATLAB interface has been removed.
5567 * ` NonlinearSolverIteration::functional ` has been removed,
5668 use ` NonlinearSolverIteration::fixedpoint ` instead.
5769 * The deprecated argument ` log_as_log10 ` to ` SbmlImporter.sbml2amici ` and
@@ -62,8 +74,6 @@ See also our [versioning policy](https://amici.readthedocs.io/en/latest/versioni
6274 modules.
6375 * The ` force_compile ` argument to ` import_petab_problem ` has been removed.
6476 See the ` compile_ ` argument.
65- * Removals without deprecation:
66- * ` amici.sbml_import.species_to_parameters ` has been removed.
6777* Model output directory keyword arguments have been harmonized:
6878 What was previously ` model_output_dir ` , ` output_dir ` , ` outdir ` is now
6979 consistently called ` output_dir ` across the API.
@@ -74,7 +84,8 @@ See also our [versioning policy](https://amici.readthedocs.io/en/latest/versioni
7484
7585* Experimental support for the PEtab data format v2.0.0 (draft, see
7686 https://petab.readthedocs.io/en/latest/v2/documentation_data_format.html )
77- for SBML- and PySB-based problems (see ` amici.petab.petab_importer ` ). The API is subject to change.
87+ for SBML- and PySB-based problems (see ` amici.petab.petab_importer ` ).
88+ The API is subject to change.
7889
7990 * Current limitations for PySB-based PEtab problems:
8091 * Only species and ` pysb.Expression ` are supported as condition table
@@ -87,32 +98,35 @@ See also our [versioning policy](https://amici.readthedocs.io/en/latest/versioni
8798 results, and conversion to DataFrames.
8899* ` Model.simulate() ` has been added as a convenience function to run
89100 simulations without having to create a ` Solver ` object explicitly.
90- This is a wrapper for both ` amici.run_simulation ` and
91- ` amici.run_simulations ` , depending on the type of the ` edata ` argument.
101+ This is a wrapper for both ` amici.sim.sundials.run_simulation ` and
102+ ` amici.sim.sundials.run_simulations ` ,
103+ depending on the type of the ` edata ` argument.
92104 It also supports passing some ` Solver ` options as keyword arguments.
93- * Improved ` pickle ` support for ` amici.{Model,ModelPtr,Solver,ExpData ` .
105+ This is intended for interactive use; for better full control and
106+ performance, it is still recommended to create a ` Solver ` object and call
107+ ` amici.sim.sundials.{run_simulation,run_simulations} ` directly.
108+ * Improved ` pickle ` support for
109+ ` amici.sim.sundials.{Model,ModelPtr,Solver,ExpData} ` .
94110 Note that AMICI's pickling support is only intended for short-term storage
95111 or inter-process communication.
96112 Reading pickled objects after updating AMICI or the model code will almost
97113 certainly fail.
98- * ` amici. Model` and ` amici. ModelPtr` now support sufficient pickling for use
99- in multi-processing contexts. This works only if the amici-generated model
114+ * ` Model ` and ` ModelPtr ` now support sufficient pickling for use
115+ in multiprocessing contexts. This works only if the amici-generated model
100116 package exists in the same file system location and does not change until
101117 unpickling.
102- * ` amici. Solver` is now picklable if amici was built with HDF5 support.
118+ * ` Solver ` is now picklable if amici was built with HDF5 support.
103119 This only works on shared file systems, as the solver state is stored in a
104120 temporary HDF5 file.
105- * ` amici.ExpData ` is now picklable.
106- * Implemented support for the [ PEtab SciML] ( https://github.com/PEtab-dev/petab_sciml )
107- extension for the JAX interface.
121+ * ` ExpData ` is now picklable.
108122* The import function ` sbml2amici ` , ` pysb2amici ` , and ` antimony2amici ` now
109123 return an instance of the generated model class if called with ` compile=True `
110124 (default).
111125* The default directory for model import changed, and a base directory
112126 can now be specified via the ` AMICI_MODELS_ROOT ` environment variable.
113127 See ` amici.get_model_dir ` for details.
114- * IDs and names of model entities are now not only accessible via ` Model ` , but
115- also via ` ReturnData `
128+ * IDs and names of model entities are now not only accessible via
129+ ` amici.sim.sundials.Model ` , but also via ` amici.sim.sundials. ReturnData`
116130 (` ReturnData.{free_parameter_ids,observable_ids,...} ` ,
117131 ` ReturnData.{free_parameter_names,observable_names,...} ` ).
118132
0 commit comments