-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Labels
Description
One use case for re-start-ability is co-simulation (e.g., Vivarium). As a pre-requisite, simulation tools need to be re-start-able (i.e., a simulation can be instantiated from the result of a previous step, ideally with all simulation state fed in externally so that global state if a co-simulation could be managed externally).
We already have re-start-ability tests for this most relevant tools:
- Kinetic
- SBML
- AMICI
- COPASI
- GillesPy2
- libSBMLSim: see Add test for simulation re-start-ability Biosimulators_LibSBMLSim#1
- MASSpy
- Smoldyn -- relies on state stored in Smoldyn simulation objects
- PySCeS
- tellurium
- VCell
- NeuroML: limited ability to make changes because targets are not well-defined
- NEURON
- NetPyNe
- pyNeuroML
- Other
- BioNetGen: : see Add test for simulation re-start-ability Biosimulators_BioNetGen#3
- OpenCOR
- XPP: : see Add test for simulation re-start-ability Biosimulators_XPP#4
- SBML
- Logical:
- BoolNet -- initial state cannot be set
- GINsim -- initial state cannot be set
- Flux balance: N/A because simulations don't really have state
- CBMPy
- COPBRApy
- RBApy
In addition to tests for individual tools, a test here would be useful.
- Execute a simulation
- Compare to
- Execute the first half of the time course
- Independently instantiate a second simulation
- Copy the output of the first simulation to the input to a second simulation
- Execute the second simulation
- Check that the end state of the second time course is the same as that of executing the entire time course all at once
This is the test case discussed with @eagmon and @prismofeverything.