Skip to content

Release notes for sbml2cellml 0.3.2

Units are converted in both directions, and the release notes are part of the documentation. The glimepiride example models, which have a complete unit annotation and units on numbers, all convert to valid CellML and simulate with libopencor now.

Features

  • SBML to CellML: every unit definition becomes CellML units of the same name; the unit kinds item and avogadro, which CellML lacks, become new base units and dimensionless units
  • SBML to CellML: the numbers in formulas keep their units, e.g., 2 mM; they referenced units which did not exist in the CellML model before, which made a model invalid
  • SBML to CellML: the variables get the units of their compartment, parameter, local parameter, species (substance per size of the compartment for a concentration) or reaction (extent per time) when the unit annotation of the model is complete, including the built-in units of SBML level 1 and 2. With a variable without units all variables stay dimensionless, a warning names the variables
  • CellML to SBML: the units of the numbers are part of the SBML math
  • CellML to SBML: new base units item become the SBML unit kind item
  • the release notes are part of the documentation, see Release notes

Fixes

  • CellML to SBML: the multiplier of a unit with an exponent was copied, but CellML applies the exponent to the prefix only, SBML to the multiplier as well: 1/60 second^-1 (per minute) became 60 per second. The SBML multiplier is multiplier^(1/exponent) now, and the prefix of a reference to custom units is raised to the exponent
  • CellML to SBML: a factor which cannot be folded into a unit, e.g., of a unit with the exponent 0, becomes a dimensionless unit instead of an error
  • the units per_second, which no variable used, are no longer added to every CellML model

Changes

  • the release notes moved from release-notes/ to docs/release-notes/

Limitations

  • the unit check of the libcellml 0.7.1 analyser warns about consistent equations with units which have a multiplier and an exponent, e.g., per minute (cellml/libcellml#1463); the warnings do not make a model invalid
  • events, the delay symbol and coupled algebraic rules are not converted
  • Windows is not supported, the Windows wheels of libcellml 0.7.1 contain ARM64 binaries
  • see the conversion issues in the documentation

Your sbml2cellml team