sbmlsim.experiment
¶
Package for simulation experiments.
Submodules¶
Package Contents¶
Classes¶
Generic simulation experiment. |
|
Dictionary for experiments. |
|
Result of a simulation experiment. |
|
Class for running simulation experiments. |
|
Report for an experiment. |
- class sbmlsim.experiment.SimulationExperiment(sid=None, base_path=None, data_path=None, ureg=None, **kwargs)[source]¶
Generic simulation experiment.
Consists of models, datasets, simulations, tasks, results, processing, figures
- Parameters
sid (str) –
base_path (pathlib.Path) –
data_path (pathlib.Path) –
ureg (sbmlsim.units.UnitRegistry) –
- initialize(self)¶
Initialize SimulationExperiment.
Initialization must be separated from object construction due to the parallel execution of the problem later on. Certain objects cannot be serialized and must be initialized. :return:
- Return type
None
- __str__(self)¶
Get string representation.
- Return type
str
- models(self)¶
Define model definitions.
The child classes fill out the information.
- Return type
Dict[str, sbmlsim.model.AbstractModel]
- datasets(self)¶
Define dataset definitions (experimental data).
The child classes fill out the information.
- Return type
Dict[str, sbmlsim.data.DataSet]
- tasks(self)¶
Define task definitions.
The child classes fill out the information.
- Return type
Dict[str, sbmlsim.task.Task]
- simulations(self)¶
Define simulation definitions.
The child classes fill out the information.
- Return type
Dict[str, sbmlsim.simulation.AbstractSim]
- fit_mappings(self)¶
Define fit mappings.
Mapping reference data on observables. Used for the optimization of parameters. The child classes fill out the information.
- Return type
Dict[str, sbmlsim.fit.FitMapping]
- datagenerators(self)¶
Define DataGenerators including functions.
All data which is accessed in a simulation result must be defined in a data generator. The data generators are important for defining the selections of a simulation experiment.
- Return type
None
- add_selections(self, selections, task_ids=None, reset=False)¶
Add selections to given tasks.
Selections are necessary to access data from simulations. Here these selections are added to the tasks. If no tasks are given, the selections are added to all tasks.
- Parameters
reset (bool) – drop and reset all selections.
selections (Iterable[str]) –
task_ids (Iterable[str]) –
- property results(self)¶
Access simulation results.
Results are mapped on tasks based on the task_ids. E.g. to get the results for the task with id ‘task_glciv’ use ```
simexp.results[“task_glciv”] self.results[“task_glciv”]
- Return type
Dict[str, sbmlsim.result.XResult]
- figures(self)¶
Figure definition.
Selections accessed in figures and analyses must be registered beforehand via datagenerators.
Most figures do not require access to concrete data, but only abstract data concepts.
- Return type
Dict[str, sbmlsim.plot.Figure]
- _check_keys(self)¶
Check keys in information dictionaries.
- _check_types(self)¶
Check for correctness of types.
- run(self, simulator, output_path=None, show_figures=True, save_results=False, figure_formats=None, reduced_selections=True)¶
Execute given experiment and store results.
- Parameters
output_path (pathlib.Path) –
show_figures (bool) –
save_results (bool) –
figure_formats (List[str]) –
reduced_selections (bool) –
- Return type
- _run_tasks(self, simulator, reduced_selections=True)¶
Run simulations and scans.
This should not be called directly, but the results of the simulations should be requested by the results property. This allows to hash executed simulations.
- Parameters
reduced_selections (bool) –
- evaluate_fit_mappings(self)¶
Evaluate fit mappings.
- to_json(self, path=None, indent=2)¶
Convert experiment to JSON for exchange.
- Parameters
path – path for file, if None JSON str is returned
- Returns
- to_dict(self)¶
Convert to dictionary.
This is the basis for the JSON serialization.
- classmethod from_json(cls, json_info)¶
Load experiment from json path or str.
- Parameters
json_info (Union[pathlib.Path, str]) –
- Return type
- save_datasets(self, results_path)¶
Save datasets.
- Parameters
results_path (pathlib.Path) –
- Return type
None
- save_results(self, results_path)¶
Save results (mean timecourse).
- Parameters
results_path (pathlib.Path) –
- Returns
- Return type
None
- create_mpl_figures(self)¶
Create matplotlib figures.
- Return type
Dict[str, Union[sbmlsim.plot.plotting_matplotlib.FigureMPL, sbmlsim.plot.Figure]]
- show_mpl_figures(self, mpl_figures)¶
Show matplotlib figures.
- Parameters
mpl_figures (Dict[str, sbmlsim.plot.plotting_matplotlib.FigureMPL]) –
- Return type
None
- save_mpl_figures(self, results_path, mpl_figures, figure_formats=None)¶
Save matplotlib figures.
- Parameters
results_path (pathlib.Path) –
mpl_figures (Dict[str, sbmlsim.plot.plotting_matplotlib.FigureMPL]) –
figure_formats (List[str]) –
- Return type
Dict[str, List[pathlib.Path]]
- classmethod close_mpl_figures(cls, mpl_figures)¶
Close matplotlib figures.
- Parameters
mpl_figures (Dict[str, sbmlsim.plot.plotting_matplotlib.FigureMPL]) –
- class sbmlsim.experiment.ExperimentDict[source]¶
Bases:
dict
Dictionary for experiments.
- __getitem__(self, k)¶
Get item k.
- class sbmlsim.experiment.ExperimentResult[source]¶
Result of a simulation experiment.
- experiment :SimulationExperiment¶
- output_path :pathlib.Path¶
- to_dict(self)¶
Conversion to dictionary.
Used in serialization and required for reports.
- Return type
Dict
- class sbmlsim.experiment.ExperimentRunner(experiment_classes, base_path, data_path, simulator=None, ureg=None, **kwargs)[source]¶
Bases:
object
Class for running simulation experiments.
- Parameters
experiment_classes (Iterable[sbmlsim.experiment.SimulationExperiment]) –
base_path (pathlib.Path) –
data_path (pathlib.Path) –
simulator (sbmlsim.simulator.SimulatorSerial) –
ureg (sbmlsim.units.UnitRegistry) –
- set_simulator(self, simulator)¶
Set simulator on the runner and experiments.
- Parameters
simulator (sbmlsim.simulator.SimulatorSerial) –
- Return type
None
- initialize(self, experiment_classes, **kwargs)¶
Initialize ExperimentRunner.
Initialization is required in addition to construction to allow serialization of information for parallelization.
- run_experiments(self, output_path, show_figures=False, save_results=False, figure_formats=None, reduced_selections=True)¶
Run the experiments.
- Parameters
output_path (pathlib.Path) –
show_figures (bool) –
save_results (bool) –
figure_formats (List[str]) –
reduced_selections (bool) –
- Return type
- class sbmlsim.experiment.ExperimentReport(results, metadata=None, template_path=TEMPLATE_PATH)[source]¶
Report for an experiment.
- Parameters
results (ReportResults) –
metadata (Dict) –
- create_report(self, output_path, filename=None, report_type=ReportType.HTML, f_filter_context=None, **kwargs)¶
Create report of SimulationExperiments.
Processes ExperimentResults to generate overall report.
All relative paths only can be resolved in the report if the paths are below the report or at the same level in the file hierarchy.
- Parameters
output_path (pathlib.Path) –
report_type (ReportType) –