SimpleSEDML 0.3.0__tar.gz → 0.3.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. {simplesedml-0.3.0/src/SimpleSEDML.egg-info → simplesedml-0.3.2}/PKG-INFO +101 -8
  2. {simplesedml-0.3.0 → simplesedml-0.3.2}/README.md +86 -3
  3. {simplesedml-0.3.0 → simplesedml-0.3.2}/pyproject.toml +18 -8
  4. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/SimpleSEDML/__init__.py +1 -1
  5. {simplesedml-0.3.0 → simplesedml-0.3.2/src/SimpleSEDML.egg-info}/PKG-INFO +101 -8
  6. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/SimpleSEDML.egg-info/requires.txt +13 -2
  7. {simplesedml-0.3.0 → simplesedml-0.3.2}/LICENSE +0 -0
  8. {simplesedml-0.3.0 → simplesedml-0.3.2}/setup.cfg +0 -0
  9. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/SimpleSEDML/constants.py +0 -0
  10. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/SimpleSEDML/executor.py +0 -0
  11. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/SimpleSEDML/model.py +0 -0
  12. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/SimpleSEDML/model_information.py +0 -0
  13. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/SimpleSEDML/multiple_model_parameter_scan.py +0 -0
  14. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/SimpleSEDML/multiple_model_simple_sedml.py +0 -0
  15. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/SimpleSEDML/multiple_model_time_course.py +0 -0
  16. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/SimpleSEDML/omex_maker.py +0 -0
  17. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/SimpleSEDML/plot.py +0 -0
  18. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/SimpleSEDML/report.py +0 -0
  19. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/SimpleSEDML/simple_sedml.py +0 -0
  20. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/SimpleSEDML/simulation.py +0 -0
  21. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/SimpleSEDML/single_model_parameter_scan.py +0 -0
  22. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/SimpleSEDML/single_model_time_course.py +0 -0
  23. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/SimpleSEDML/task.py +0 -0
  24. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/SimpleSEDML/utils.py +0 -0
  25. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/SimpleSEDML/variable_collection.py +0 -0
  26. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/SimpleSEDML.egg-info/SOURCES.txt +0 -0
  27. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/SimpleSEDML.egg-info/dependency_links.txt +0 -0
  28. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/SimpleSEDML.egg-info/top_level.txt +0 -0
  29. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/tests/test__init__.py +0 -0
  30. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/tests/test_executor.py +0 -0
  31. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/tests/test_model.py +0 -0
  32. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/tests/test_model_information.py +0 -0
  33. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/tests/test_multiple_model_parameter_scan.py +0 -0
  34. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/tests/test_multiple_model_time_course.py +0 -0
  35. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/tests/test_omex_maker.py +0 -0
  36. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/tests/test_plot.py +0 -0
  37. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/tests/test_report.py +0 -0
  38. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/tests/test_simple_sedml.py +0 -0
  39. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/tests/test_simulation.py +0 -0
  40. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/tests/test_single_model_parameter_scan.py +0 -0
  41. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/tests/test_single_model_time_course.py +0 -0
  42. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/tests/test_task.py +0 -0
  43. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/tests/test_utils.py +0 -0
  44. {simplesedml-0.3.0 → simplesedml-0.3.2}/src/tests/test_variable_collection.py +0 -0
@@ -1,7 +1,7 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: SimpleSEDML
3
- Version: 0.3.0
4
- Summary: Python Subnet Discovery for Systems Biology
3
+ Version: 0.3.2
4
+ Summary: Simplified API for creating SED-ML simulation experiment descriptions
5
5
  Author-email: Joseph Hellerstein <joseph.hellerstein@gmail.com>, Herbert S Sauro <hsauro@uw.edu>
6
6
  License: MIT License
7
7
 
@@ -26,11 +26,14 @@ License: MIT License
26
26
  SOFTWARE.
27
27
 
28
28
  Project-URL: Homepage, https://github.com/sys-bio/SimpleSEDML
29
- Requires-Python: >=3.6
29
+ Requires-Python: >=3.9
30
30
  Description-Content-Type: text/markdown
31
31
  License-File: LICENSE
32
+ Requires-Dist: brotli
32
33
  Requires-Dist: biomodels_qc
33
34
  Requires-Dist: biosimulators_utils
35
+ Requires-Dist: setuptools==75.8.2
36
+ Requires-Dist: gmpy2
34
37
  Requires-Dist: numpy
35
38
  Requires-Dist: build
36
39
  Requires-Dist: coverage
@@ -41,14 +44,21 @@ Requires-Dist: pandas
41
44
  Requires-Dist: phrasedml
42
45
  Requires-Dist: pip
43
46
  Requires-Dist: python-libsbml
44
- Requires-Dist: requests
45
47
  Requires-Dist: tabulate
48
+ Requires-Dist: sbmlxdf
46
49
  Requires-Dist: tellurium
47
- Requires-Dist: twine
48
50
  Requires-Dist: urllib3
51
+ Provides-Extra: dev
52
+ Requires-Dist: build; extra == "dev"
53
+ Requires-Dist: coverage; extra == "dev"
54
+ Requires-Dist: jupyterlab; extra == "dev"
55
+ Requires-Dist: nose2; extra == "dev"
56
+ Requires-Dist: pip; extra == "dev"
57
+ Requires-Dist: toml; extra == "dev"
58
+ Requires-Dist: twine; extra == "dev"
49
59
  Dynamic: license-file
50
60
 
51
- # SimpleSEDML
61
+ # SimpleSEDML
52
62
 
53
63
  SimpleSEDML is a simple API for creating directives in the [Simulation Experiment Description Markup Language (SED-ML)](https://sed-ml.org/) community standard for describing simulation experiments.
54
64
 
@@ -65,6 +75,8 @@ and (d) output for data reports and plots.
65
75
 
66
76
  ## Installation
67
77
 
78
+ ``SimpleSEDML`` has been tested on python 3.10, 3.11.
79
+
68
80
  pip install SimpleSEDML
69
81
 
70
82
  ## Public API
@@ -90,11 +102,85 @@ All `make*` functions return objects with `getSEDML()`, `getPhraSEDML()`, `execu
90
102
  | `end` | float | `5.0` | Simulation end time |
91
103
  | `num_point` | int | `11` | Number of output time points |
92
104
  | `num_step` | int | `None` | Number of integration steps (alternative to `num_point`) |
93
- | `display_variables` | list[str] | all species | Variables to plot and include in the report |
94
- | `simulation_type` | str | `"uniform"` | Simulation algorithm type — `"uniform"` (CVODE), `"uniform_stochastic"` (Gillespie), `"steadystate"`, `"onestep"` |
105
+ | `display_variables` | list[str] | all floating species | Variables to plot and include in the report |
106
+ | `simulation_type` | str | `"uniform"` | Simulation algorithm — `"uniform"` (CVODE), `"uniform_stochastic"` (Gillespie), `"steadystate"`, `"onestep"` |
95
107
  | `model_parameter_dct` | dict | `None` | Override model parameter values, e.g. `{"k1": 0.5}` |
108
+ | `algorithm` | str | `None` | KISAO algorithm ID (overrides `simulation_type` algorithm selection) |
96
109
  | `title` | str | `""` | Plot title |
97
110
  | `is_plot` | bool | `True` | Whether to display a plot when `execute()` is called |
111
+ | `project_dir` | str | `"project/"` | Directory where model SBML files are written |
112
+
113
+ ### Key arguments for `makeMultipleModelTimeCourse`
114
+
115
+ | Argument | Type | Default | Description |
116
+ | --- | --- | --- | --- |
117
+ | `model_refs` | list[str] | `None` | List of model sources — Antimony/SBML strings, file paths, or URLs |
118
+ | `start` | float | `0.0` | Simulation start time |
119
+ | `end` | float | `5.0` | Simulation end time |
120
+ | `num_point` | int | `11` | Number of output time points |
121
+ | `num_step` | int | `None` | Number of integration steps (alternative to `num_point`) |
122
+ | `display_variables` | list[str] | all floating species | Variables to compare across models |
123
+ | `simulation_type` | str | `"uniform"` | Simulation algorithm — `"uniform"`, `"uniform_stochastic"`, `"steadystate"`, `"onestep"` |
124
+ | `model_parameter_dct` | dict | `None` | Override parameter values applied to all models, e.g. `{"k1": 0.5}` |
125
+ | `algorithm` | str | `None` | KISAO algorithm ID |
126
+ | `is_plot` | bool | `True` | Whether to display plots when `execute()` is called |
127
+ | `project_dir` | str | `"project/"` | Directory where model SBML files are written |
128
+
129
+ ### Key arguments for `makeSingleModelParameterScan`
130
+
131
+ | Argument | Type | Default | Description |
132
+ | --- | --- | --- | --- |
133
+ | `model_ref` | str | *(required)* | Model source — Antimony/SBML string, file path, or URL |
134
+ | `scan_parameter_dct` | dict | *(required)* | Parameters to scan; each key is a parameter name and the value is a list of values, e.g. `{"k1": [0.1, 0.5, 1.0]}` |
135
+ | `ref_type` | str | auto-detected | Model reference type (see [Model reference types](#model-reference-types)) |
136
+ | `simulation_type` | str | `"steadystate"` | Simulation type for each scan point — `"steadystate"` or `"onestep"` |
137
+ | `time_interval` | float | `0.5` | Integration interval used when `simulation_type="onestep"` |
138
+ | `display_variables` | list[str] | all floating species | Variables to plot on the y-axis |
139
+ | `model_parameter_dct` | dict | `None` | Baseline parameter overrides applied before the scan |
140
+ | `algorithm` | str | `None` | KISAO algorithm ID |
141
+ | `title` | str | `None` | Plot title |
142
+ | `is_plot` | bool | `True` | Whether to display a plot when `execute()` is called |
143
+ | `project_dir` | str | `"project/"` | Directory where model SBML files are written |
144
+
145
+ ### Key arguments for `makeMultipleModelParameterScan`
146
+
147
+ | Argument | Type | Default | Description |
148
+ | --- | --- | --- | --- |
149
+ | `scan_parameter_df` | pd.DataFrame | *(required)* | DataFrame of parameter values to scan; each column is a parameter name and each row is one scan point |
150
+ | `model_refs` | list[str] | `None` | List of model sources — Antimony/SBML strings, file paths, or URLs |
151
+ | `simulation_type` | str | `"onestep"` | Simulation type for each scan point — `"onestep"` or `"steadystate"` |
152
+ | `time_interval` | float | `100` | Integration interval used when `simulation_type="onestep"` |
153
+ | `display_variables` | list[str] | all floating species | Variables to compare across models |
154
+ | `model_parameter_dct` | dict | `None` | Baseline parameter overrides applied before the scan |
155
+ | `algorithm` | str | `None` | KISAO algorithm ID |
156
+ | `title` | str | `None` | Plot title |
157
+ | `is_plot` | bool | `True` | Whether to display plots when `execute()` is called |
158
+ | `project_dir` | str | `"project/"` | Directory where model SBML files are written |
159
+
160
+ ### Key arguments for `makeExecutor`
161
+
162
+ `makeExecutor` wraps an existing `SimpleSEDML` object and runs simulations directly via roadrunner, bypassing SED-ML/phraSED-ML generation.
163
+
164
+ | Argument | Type | Default | Description |
165
+ | --- | --- | --- | --- |
166
+ | `simple` | SimpleSEDML | *(required)* | A constructed `SimpleSEDML` (or subclass) instance |
167
+
168
+ Once created, the executor exposes three methods:
169
+
170
+ | Method | Description |
171
+ | --- | --- |
172
+ | `executeTask(task_id=None, scan_parameter_dct=None)` | Run a single task; returns a `pd.DataFrame`. `scan_parameter_dct` overrides parameter values for this run. |
173
+ | `executeRepeatedTask(repeated_task_id=None)` | Run a repeated task (parameter sweep); returns a `pd.DataFrame`. |
174
+ | `executePlot2d(plot_id=None, ax=None, kind='line', is_plot=True)` | Execute the simulation(s) required for a 2D plot and render it; returns a `PlotResult(ax, plot_ids)`. |
175
+
176
+ ### Key arguments for `getModelInformation`
177
+
178
+ | Argument | Type | Default | Description |
179
+ | --- | --- | --- | --- |
180
+ | `model_ref` | str | *(required)* | Model source — Antimony/SBML string, file path, or URL |
181
+ | `ref_type` | str | auto-detected | Model reference type (see [Model reference types](#model-reference-types)) |
182
+
183
+ Returns a `ModelInformation` object with attributes: `model_name`, `floating_species_dct`, `boundary_species_dct`, `parameter_dct`, `num_reaction`, `num_species`.
98
184
 
99
185
  ### Model reference types
100
186
 
@@ -225,6 +311,13 @@ which generates the following plot:
225
311
 
226
312
  ## Versions
227
313
 
314
+ * 0.3.2 4/12/2026
315
+ * Fix bug related to import of pkg_resources is kisao by using setuptools 75.8.2
316
+
317
+ * 0.3.1 4/12/2026
318
+ * Update README
319
+ * Fix package bugs
320
+
228
321
  * 0.3.0 4/10/2026
229
322
  * Fixed problem with OMEX files
230
323
  * Updated README.md
@@ -1,4 +1,4 @@
1
- # SimpleSEDML
1
+ # SimpleSEDML
2
2
 
3
3
  SimpleSEDML is a simple API for creating directives in the [Simulation Experiment Description Markup Language (SED-ML)](https://sed-ml.org/) community standard for describing simulation experiments.
4
4
 
@@ -15,6 +15,8 @@ and (d) output for data reports and plots.
15
15
 
16
16
  ## Installation
17
17
 
18
+ ``SimpleSEDML`` has been tested on python 3.10, 3.11.
19
+
18
20
  pip install SimpleSEDML
19
21
 
20
22
  ## Public API
@@ -40,11 +42,85 @@ All `make*` functions return objects with `getSEDML()`, `getPhraSEDML()`, `execu
40
42
  | `end` | float | `5.0` | Simulation end time |
41
43
  | `num_point` | int | `11` | Number of output time points |
42
44
  | `num_step` | int | `None` | Number of integration steps (alternative to `num_point`) |
43
- | `display_variables` | list[str] | all species | Variables to plot and include in the report |
44
- | `simulation_type` | str | `"uniform"` | Simulation algorithm type — `"uniform"` (CVODE), `"uniform_stochastic"` (Gillespie), `"steadystate"`, `"onestep"` |
45
+ | `display_variables` | list[str] | all floating species | Variables to plot and include in the report |
46
+ | `simulation_type` | str | `"uniform"` | Simulation algorithm — `"uniform"` (CVODE), `"uniform_stochastic"` (Gillespie), `"steadystate"`, `"onestep"` |
45
47
  | `model_parameter_dct` | dict | `None` | Override model parameter values, e.g. `{"k1": 0.5}` |
48
+ | `algorithm` | str | `None` | KISAO algorithm ID (overrides `simulation_type` algorithm selection) |
46
49
  | `title` | str | `""` | Plot title |
47
50
  | `is_plot` | bool | `True` | Whether to display a plot when `execute()` is called |
51
+ | `project_dir` | str | `"project/"` | Directory where model SBML files are written |
52
+
53
+ ### Key arguments for `makeMultipleModelTimeCourse`
54
+
55
+ | Argument | Type | Default | Description |
56
+ | --- | --- | --- | --- |
57
+ | `model_refs` | list[str] | `None` | List of model sources — Antimony/SBML strings, file paths, or URLs |
58
+ | `start` | float | `0.0` | Simulation start time |
59
+ | `end` | float | `5.0` | Simulation end time |
60
+ | `num_point` | int | `11` | Number of output time points |
61
+ | `num_step` | int | `None` | Number of integration steps (alternative to `num_point`) |
62
+ | `display_variables` | list[str] | all floating species | Variables to compare across models |
63
+ | `simulation_type` | str | `"uniform"` | Simulation algorithm — `"uniform"`, `"uniform_stochastic"`, `"steadystate"`, `"onestep"` |
64
+ | `model_parameter_dct` | dict | `None` | Override parameter values applied to all models, e.g. `{"k1": 0.5}` |
65
+ | `algorithm` | str | `None` | KISAO algorithm ID |
66
+ | `is_plot` | bool | `True` | Whether to display plots when `execute()` is called |
67
+ | `project_dir` | str | `"project/"` | Directory where model SBML files are written |
68
+
69
+ ### Key arguments for `makeSingleModelParameterScan`
70
+
71
+ | Argument | Type | Default | Description |
72
+ | --- | --- | --- | --- |
73
+ | `model_ref` | str | *(required)* | Model source — Antimony/SBML string, file path, or URL |
74
+ | `scan_parameter_dct` | dict | *(required)* | Parameters to scan; each key is a parameter name and the value is a list of values, e.g. `{"k1": [0.1, 0.5, 1.0]}` |
75
+ | `ref_type` | str | auto-detected | Model reference type (see [Model reference types](#model-reference-types)) |
76
+ | `simulation_type` | str | `"steadystate"` | Simulation type for each scan point — `"steadystate"` or `"onestep"` |
77
+ | `time_interval` | float | `0.5` | Integration interval used when `simulation_type="onestep"` |
78
+ | `display_variables` | list[str] | all floating species | Variables to plot on the y-axis |
79
+ | `model_parameter_dct` | dict | `None` | Baseline parameter overrides applied before the scan |
80
+ | `algorithm` | str | `None` | KISAO algorithm ID |
81
+ | `title` | str | `None` | Plot title |
82
+ | `is_plot` | bool | `True` | Whether to display a plot when `execute()` is called |
83
+ | `project_dir` | str | `"project/"` | Directory where model SBML files are written |
84
+
85
+ ### Key arguments for `makeMultipleModelParameterScan`
86
+
87
+ | Argument | Type | Default | Description |
88
+ | --- | --- | --- | --- |
89
+ | `scan_parameter_df` | pd.DataFrame | *(required)* | DataFrame of parameter values to scan; each column is a parameter name and each row is one scan point |
90
+ | `model_refs` | list[str] | `None` | List of model sources — Antimony/SBML strings, file paths, or URLs |
91
+ | `simulation_type` | str | `"onestep"` | Simulation type for each scan point — `"onestep"` or `"steadystate"` |
92
+ | `time_interval` | float | `100` | Integration interval used when `simulation_type="onestep"` |
93
+ | `display_variables` | list[str] | all floating species | Variables to compare across models |
94
+ | `model_parameter_dct` | dict | `None` | Baseline parameter overrides applied before the scan |
95
+ | `algorithm` | str | `None` | KISAO algorithm ID |
96
+ | `title` | str | `None` | Plot title |
97
+ | `is_plot` | bool | `True` | Whether to display plots when `execute()` is called |
98
+ | `project_dir` | str | `"project/"` | Directory where model SBML files are written |
99
+
100
+ ### Key arguments for `makeExecutor`
101
+
102
+ `makeExecutor` wraps an existing `SimpleSEDML` object and runs simulations directly via roadrunner, bypassing SED-ML/phraSED-ML generation.
103
+
104
+ | Argument | Type | Default | Description |
105
+ | --- | --- | --- | --- |
106
+ | `simple` | SimpleSEDML | *(required)* | A constructed `SimpleSEDML` (or subclass) instance |
107
+
108
+ Once created, the executor exposes three methods:
109
+
110
+ | Method | Description |
111
+ | --- | --- |
112
+ | `executeTask(task_id=None, scan_parameter_dct=None)` | Run a single task; returns a `pd.DataFrame`. `scan_parameter_dct` overrides parameter values for this run. |
113
+ | `executeRepeatedTask(repeated_task_id=None)` | Run a repeated task (parameter sweep); returns a `pd.DataFrame`. |
114
+ | `executePlot2d(plot_id=None, ax=None, kind='line', is_plot=True)` | Execute the simulation(s) required for a 2D plot and render it; returns a `PlotResult(ax, plot_ids)`. |
115
+
116
+ ### Key arguments for `getModelInformation`
117
+
118
+ | Argument | Type | Default | Description |
119
+ | --- | --- | --- | --- |
120
+ | `model_ref` | str | *(required)* | Model source — Antimony/SBML string, file path, or URL |
121
+ | `ref_type` | str | auto-detected | Model reference type (see [Model reference types](#model-reference-types)) |
122
+
123
+ Returns a `ModelInformation` object with attributes: `model_name`, `floating_species_dct`, `boundary_species_dct`, `parameter_dct`, `num_reaction`, `num_species`.
48
124
 
49
125
  ### Model reference types
50
126
 
@@ -175,6 +251,13 @@ which generates the following plot:
175
251
 
176
252
  ## Versions
177
253
 
254
+ * 0.3.2 4/12/2026
255
+ * Fix bug related to import of pkg_resources is kisao by using setuptools 75.8.2
256
+
257
+ * 0.3.1 4/12/2026
258
+ * Update README
259
+ * Fix package bugs
260
+
178
261
  * 0.3.0 4/10/2026
179
262
  * Fixed problem with OMEX files
180
263
  * Updated README.md
@@ -1,15 +1,18 @@
1
1
  [project]
2
2
  name = "SimpleSEDML"
3
- version = "0.3.0"
4
- description = "Python Subnet Discovery for Systems Biology"
3
+ version = "0.3.2"
4
+ description = "Simplified API for creating SED-ML simulation experiment descriptions"
5
5
  authors = [{ name = "Joseph Hellerstein", email = "joseph.hellerstein@gmail.com" }, {name = "Herbert S Sauro", email = "hsauro@uw.edu"}]
6
6
  license = { file = "LICENSE" }
7
7
  readme = "README.md"
8
- requires-python = ">=3.6"
8
+ requires-python = ">=3.9"
9
9
 
10
10
  dependencies = [
11
+ "brotli",
11
12
  "biomodels_qc",
12
13
  "biosimulators_utils",
14
+ "setuptools==75.8.2",
15
+ "gmpy2",
13
16
  "numpy",
14
17
  "build",
15
18
  "coverage",
@@ -20,19 +23,26 @@ dependencies = [
20
23
  "phrasedml",
21
24
  "pip",
22
25
  "python-libsbml",
23
- "requests",
24
26
  "tabulate",
27
+ "sbmlxdf",
25
28
  "tellurium",
26
- "twine",
27
29
  "urllib3",
28
30
  ]
29
31
 
32
+ [project.optional-dependencies]
33
+ dev = [
34
+ "build",
35
+ "coverage",
36
+ "jupyterlab",
37
+ "nose2",
38
+ "pip",
39
+ "toml",
40
+ "twine",
41
+ ]
42
+
30
43
  [project.urls]
31
44
  Homepage = 'https://github.com/sys-bio/SimpleSEDML'
32
45
 
33
- [options.package_data]
34
- data = "*.txt, *.csv, *.ant, *.xml"
35
-
36
46
  [build-system]
37
47
  requires = ["setuptools>=61.0.0", "wheel"]
38
48
  build-backend = "setuptools.build_meta"
@@ -1,4 +1,4 @@
1
- __version__ = "0.3.0"
1
+ __version__ = "0.3.2"
2
2
  from SimpleSEDML.simple_sedml import SimpleSEDML # type:ignore
3
3
  from SimpleSEDML.single_model_time_course import SingleModelTimeCourse # type:ignore
4
4
  from SimpleSEDML.multiple_model_time_course import MultipleModelTimeCourse # type:ignore
@@ -1,7 +1,7 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: SimpleSEDML
3
- Version: 0.3.0
4
- Summary: Python Subnet Discovery for Systems Biology
3
+ Version: 0.3.2
4
+ Summary: Simplified API for creating SED-ML simulation experiment descriptions
5
5
  Author-email: Joseph Hellerstein <joseph.hellerstein@gmail.com>, Herbert S Sauro <hsauro@uw.edu>
6
6
  License: MIT License
7
7
 
@@ -26,11 +26,14 @@ License: MIT License
26
26
  SOFTWARE.
27
27
 
28
28
  Project-URL: Homepage, https://github.com/sys-bio/SimpleSEDML
29
- Requires-Python: >=3.6
29
+ Requires-Python: >=3.9
30
30
  Description-Content-Type: text/markdown
31
31
  License-File: LICENSE
32
+ Requires-Dist: brotli
32
33
  Requires-Dist: biomodels_qc
33
34
  Requires-Dist: biosimulators_utils
35
+ Requires-Dist: setuptools==75.8.2
36
+ Requires-Dist: gmpy2
34
37
  Requires-Dist: numpy
35
38
  Requires-Dist: build
36
39
  Requires-Dist: coverage
@@ -41,14 +44,21 @@ Requires-Dist: pandas
41
44
  Requires-Dist: phrasedml
42
45
  Requires-Dist: pip
43
46
  Requires-Dist: python-libsbml
44
- Requires-Dist: requests
45
47
  Requires-Dist: tabulate
48
+ Requires-Dist: sbmlxdf
46
49
  Requires-Dist: tellurium
47
- Requires-Dist: twine
48
50
  Requires-Dist: urllib3
51
+ Provides-Extra: dev
52
+ Requires-Dist: build; extra == "dev"
53
+ Requires-Dist: coverage; extra == "dev"
54
+ Requires-Dist: jupyterlab; extra == "dev"
55
+ Requires-Dist: nose2; extra == "dev"
56
+ Requires-Dist: pip; extra == "dev"
57
+ Requires-Dist: toml; extra == "dev"
58
+ Requires-Dist: twine; extra == "dev"
49
59
  Dynamic: license-file
50
60
 
51
- # SimpleSEDML
61
+ # SimpleSEDML
52
62
 
53
63
  SimpleSEDML is a simple API for creating directives in the [Simulation Experiment Description Markup Language (SED-ML)](https://sed-ml.org/) community standard for describing simulation experiments.
54
64
 
@@ -65,6 +75,8 @@ and (d) output for data reports and plots.
65
75
 
66
76
  ## Installation
67
77
 
78
+ ``SimpleSEDML`` has been tested on python 3.10, 3.11.
79
+
68
80
  pip install SimpleSEDML
69
81
 
70
82
  ## Public API
@@ -90,11 +102,85 @@ All `make*` functions return objects with `getSEDML()`, `getPhraSEDML()`, `execu
90
102
  | `end` | float | `5.0` | Simulation end time |
91
103
  | `num_point` | int | `11` | Number of output time points |
92
104
  | `num_step` | int | `None` | Number of integration steps (alternative to `num_point`) |
93
- | `display_variables` | list[str] | all species | Variables to plot and include in the report |
94
- | `simulation_type` | str | `"uniform"` | Simulation algorithm type — `"uniform"` (CVODE), `"uniform_stochastic"` (Gillespie), `"steadystate"`, `"onestep"` |
105
+ | `display_variables` | list[str] | all floating species | Variables to plot and include in the report |
106
+ | `simulation_type` | str | `"uniform"` | Simulation algorithm — `"uniform"` (CVODE), `"uniform_stochastic"` (Gillespie), `"steadystate"`, `"onestep"` |
95
107
  | `model_parameter_dct` | dict | `None` | Override model parameter values, e.g. `{"k1": 0.5}` |
108
+ | `algorithm` | str | `None` | KISAO algorithm ID (overrides `simulation_type` algorithm selection) |
96
109
  | `title` | str | `""` | Plot title |
97
110
  | `is_plot` | bool | `True` | Whether to display a plot when `execute()` is called |
111
+ | `project_dir` | str | `"project/"` | Directory where model SBML files are written |
112
+
113
+ ### Key arguments for `makeMultipleModelTimeCourse`
114
+
115
+ | Argument | Type | Default | Description |
116
+ | --- | --- | --- | --- |
117
+ | `model_refs` | list[str] | `None` | List of model sources — Antimony/SBML strings, file paths, or URLs |
118
+ | `start` | float | `0.0` | Simulation start time |
119
+ | `end` | float | `5.0` | Simulation end time |
120
+ | `num_point` | int | `11` | Number of output time points |
121
+ | `num_step` | int | `None` | Number of integration steps (alternative to `num_point`) |
122
+ | `display_variables` | list[str] | all floating species | Variables to compare across models |
123
+ | `simulation_type` | str | `"uniform"` | Simulation algorithm — `"uniform"`, `"uniform_stochastic"`, `"steadystate"`, `"onestep"` |
124
+ | `model_parameter_dct` | dict | `None` | Override parameter values applied to all models, e.g. `{"k1": 0.5}` |
125
+ | `algorithm` | str | `None` | KISAO algorithm ID |
126
+ | `is_plot` | bool | `True` | Whether to display plots when `execute()` is called |
127
+ | `project_dir` | str | `"project/"` | Directory where model SBML files are written |
128
+
129
+ ### Key arguments for `makeSingleModelParameterScan`
130
+
131
+ | Argument | Type | Default | Description |
132
+ | --- | --- | --- | --- |
133
+ | `model_ref` | str | *(required)* | Model source — Antimony/SBML string, file path, or URL |
134
+ | `scan_parameter_dct` | dict | *(required)* | Parameters to scan; each key is a parameter name and the value is a list of values, e.g. `{"k1": [0.1, 0.5, 1.0]}` |
135
+ | `ref_type` | str | auto-detected | Model reference type (see [Model reference types](#model-reference-types)) |
136
+ | `simulation_type` | str | `"steadystate"` | Simulation type for each scan point — `"steadystate"` or `"onestep"` |
137
+ | `time_interval` | float | `0.5` | Integration interval used when `simulation_type="onestep"` |
138
+ | `display_variables` | list[str] | all floating species | Variables to plot on the y-axis |
139
+ | `model_parameter_dct` | dict | `None` | Baseline parameter overrides applied before the scan |
140
+ | `algorithm` | str | `None` | KISAO algorithm ID |
141
+ | `title` | str | `None` | Plot title |
142
+ | `is_plot` | bool | `True` | Whether to display a plot when `execute()` is called |
143
+ | `project_dir` | str | `"project/"` | Directory where model SBML files are written |
144
+
145
+ ### Key arguments for `makeMultipleModelParameterScan`
146
+
147
+ | Argument | Type | Default | Description |
148
+ | --- | --- | --- | --- |
149
+ | `scan_parameter_df` | pd.DataFrame | *(required)* | DataFrame of parameter values to scan; each column is a parameter name and each row is one scan point |
150
+ | `model_refs` | list[str] | `None` | List of model sources — Antimony/SBML strings, file paths, or URLs |
151
+ | `simulation_type` | str | `"onestep"` | Simulation type for each scan point — `"onestep"` or `"steadystate"` |
152
+ | `time_interval` | float | `100` | Integration interval used when `simulation_type="onestep"` |
153
+ | `display_variables` | list[str] | all floating species | Variables to compare across models |
154
+ | `model_parameter_dct` | dict | `None` | Baseline parameter overrides applied before the scan |
155
+ | `algorithm` | str | `None` | KISAO algorithm ID |
156
+ | `title` | str | `None` | Plot title |
157
+ | `is_plot` | bool | `True` | Whether to display plots when `execute()` is called |
158
+ | `project_dir` | str | `"project/"` | Directory where model SBML files are written |
159
+
160
+ ### Key arguments for `makeExecutor`
161
+
162
+ `makeExecutor` wraps an existing `SimpleSEDML` object and runs simulations directly via roadrunner, bypassing SED-ML/phraSED-ML generation.
163
+
164
+ | Argument | Type | Default | Description |
165
+ | --- | --- | --- | --- |
166
+ | `simple` | SimpleSEDML | *(required)* | A constructed `SimpleSEDML` (or subclass) instance |
167
+
168
+ Once created, the executor exposes three methods:
169
+
170
+ | Method | Description |
171
+ | --- | --- |
172
+ | `executeTask(task_id=None, scan_parameter_dct=None)` | Run a single task; returns a `pd.DataFrame`. `scan_parameter_dct` overrides parameter values for this run. |
173
+ | `executeRepeatedTask(repeated_task_id=None)` | Run a repeated task (parameter sweep); returns a `pd.DataFrame`. |
174
+ | `executePlot2d(plot_id=None, ax=None, kind='line', is_plot=True)` | Execute the simulation(s) required for a 2D plot and render it; returns a `PlotResult(ax, plot_ids)`. |
175
+
176
+ ### Key arguments for `getModelInformation`
177
+
178
+ | Argument | Type | Default | Description |
179
+ | --- | --- | --- | --- |
180
+ | `model_ref` | str | *(required)* | Model source — Antimony/SBML string, file path, or URL |
181
+ | `ref_type` | str | auto-detected | Model reference type (see [Model reference types](#model-reference-types)) |
182
+
183
+ Returns a `ModelInformation` object with attributes: `model_name`, `floating_species_dct`, `boundary_species_dct`, `parameter_dct`, `num_reaction`, `num_species`.
98
184
 
99
185
  ### Model reference types
100
186
 
@@ -225,6 +311,13 @@ which generates the following plot:
225
311
 
226
312
  ## Versions
227
313
 
314
+ * 0.3.2 4/12/2026
315
+ * Fix bug related to import of pkg_resources is kisao by using setuptools 75.8.2
316
+
317
+ * 0.3.1 4/12/2026
318
+ * Update README
319
+ * Fix package bugs
320
+
228
321
  * 0.3.0 4/10/2026
229
322
  * Fixed problem with OMEX files
230
323
  * Updated README.md
@@ -1,5 +1,8 @@
1
+ brotli
1
2
  biomodels_qc
2
3
  biosimulators_utils
4
+ setuptools==75.8.2
5
+ gmpy2
3
6
  numpy
4
7
  build
5
8
  coverage
@@ -10,8 +13,16 @@ pandas
10
13
  phrasedml
11
14
  pip
12
15
  python-libsbml
13
- requests
14
16
  tabulate
17
+ sbmlxdf
15
18
  tellurium
16
- twine
17
19
  urllib3
20
+
21
+ [dev]
22
+ build
23
+ coverage
24
+ jupyterlab
25
+ nose2
26
+ pip
27
+ toml
28
+ twine
File without changes
File without changes