Release notes for sbmlutils 0.16.0
We are pleased to release the next version of sbmlutils including the following changes. Measured data drives a model: an interpolation of the data replaces quantities of an existing model in place, through a comp model which leaves the original untouched, or in a model definition (#16, #500).
New features
Interpolation.drivedrives a parameter, species or compartment of an existing model with the interpolated data, in place; x is the time or a quantity of the model,targetsmaps a column to the element it drives (#16, #500)Interpolation.drive_compdrives a model through a comp model which references the original, or embeds it withembed=True; flattened it simulates as the model driven in place (#16, #500)Interpolation.assignment_rulesgives the interpolation as assignment rules of a model definition (#16, #500)
Breaking changes
- linear and cubic spline interpolation hold the first value before and the last value after the data, instead of
0.0(#16, #500) - data which cannot be interpolated raises a
ValueErrorinstead of a warning: fewer than 2 columns or data points (3 for the cubic spline), column names which are not strings or repeat, a first column which is not an SBML id, a column which is not numeric, a missing or infinite value, x which repeats (#16, #500) Interpolation.add_interpolator_to_modelis removed,drivereplaces it;Interpolation.create_interpolatorsis the propertyInterpolation.interpolators; the attributesdocandmodelof anInterpolationare removed (#16, #500)- the standalone model of an interpolation is SBML L3V2 with a port on every interpolated parameter and on x, its notes name the data and the method (#16, #500)
Documentation
- the guide Interpolation covers driving a model in place, through comp and in a model definition, and its code is run by the tests; the example
examples.interpolation.drivingdrives a model of glucose uptake with measured plasma glucose,examples.interpolation.pancreasdrives a dose response (#16, #500)
