[sbml-discuss] Feature for SBML Level 2 Version 2 -
Schaff at NEURON.UCHC.EDU
Thu Feb 17 11:21:07 PST 2005
I can confirm that the kinetic laws do indeed get ugly (for VCell anyway), it's not about unit conversions because substance/time vs. concentration/time are not dimensionally equivalent, there is an explicit volume term. In order to document the transformations required during import we are currently introducing into the kinetic expression a named conversion factor with the appropriate units. This is important because in VCell, the description of molecular species and reactions are completely decoupled from any realization of the geometry. We use concentrations only, which is convenient for PDE's and well-defined but inconvenient for multi-compartmental non-spatial models).
For example, let's talk about a reaction between a volume species and a membrane species. The corresponding VCell reaction is described as a flux density while SBML reactions are describing a total flux integrated over the surface of the membrane. So it is well defined to use either substance/time or concentration/time, but the two are quite different. Concentration/time is the local description of the physical process that works equally well even for those cells that are not well-mixed (attempt at humor). Although I must concede the point made by earlier postings that concentrations are inconvenient when the geometry is dynamic (e.g. total volume as a function of time).
Despite my rantings, I think that substance/time is probably better as an interchange format because it is exceedingly clear. Although we find it somewhat inconvenient and it does ALMOST imply that models expressed in SBML are non-spatial, but so are most models and tools.
Now I'll go back into my cave for another 6 months.
Virtual Cell Project (vcell.org)
UConn Health Center
From: sbml-discuss-bounces at caltech.edu [mailto:sbml-discuss-bounces at caltech.edu] On Behalf Of Andrew Finney
Sent: Thursday, February 17, 2005 5:58 AM
To: 'SBML Discussion List'
Subject: RE: [sbml-discuss] Feature for SBML Level 2 Version 2 - UnitsofKinetic Laws
IMHO its fine if the consensus of the community
is that we don't need this new feature.
I think I should run through a Use Case of SBML
to highlight why I think it might be necessary:
Assuming we start with a tool that supports:
a) the entry of kinetic laws in conventional concentration per time units
(to be user friendly)
b) multiple compartment models
c) variable volume compartments
Such a tool would probably allow the user to specify that the units
for kinetic laws are in either concentration per time units or
substance per time units.
Using SBML L2V1 it would be difficult for the tool to round trip
models. On output the kinetic laws entered by the user with conventional
concentration per time units would have a volume multiplication term to
convert the kinetic law into substance per time units. On input such
laws would have to be interpreted as having substance per time units only.
The only way to over come this would be to use an annotation.
Two different tools that had a similar user interface in this respect would
have a hard time exchanging a model as it was actually entered by the user.
The user would experience the kinetic law units changing as the model
+44 (0)1453 549548
from US - 011 44 1453 549548
University of Hertfordshire, UK
Fellow at the Molecular Sciences Institute, USA
> -----Original Message-----
> From: sbml-discuss-bounces at caltech.edu
> [mailto:sbml-discuss-bounces at caltech.edu] On Behalf Of Stefan Hoops
> Sent: 16 February 2005 16:51
> To: sbml-discuss at caltech.edu
> Subject: Re: [sbml-discuss] Feature for SBML Level 2 Version
> 2 - Units ofKinetic Laws
> Hello All,
> I am with Joerg and Robert on this for exactly the reasons they gave.
> The current SBML solution is clean and allows compartmentalization as
> well as time dependent volumes and is therefore richer than the added
> feature by itself.
> As Joerg says the XML is not (at least not mainly) intended for human
> consumption or creation and therefor it should be the tools (i.e., the
> developers) task to deal with the problem.
> In contrast adding a new flag will not make SBML more easily human
> On Wed, 16 Feb 2005 10:20:30 +0100
> "Joerg R. Weimar" <J.Weimar at tu-bs.de> wrote:
> > Dear All,
> > At first I found the proposal of Andrew quite convincing, but what
> > about the following fact:
> > Let S(t) be the number of moleucles of species S,
> > Vs (t) be the volume of the compartment in which S resides,
> > and [S](t) be the concentration of S.
> > Then
> > S(t) = [S](t) * Vs(t) by the definition of concentration.
> > The ODE in the SBMLV2L1 semantics should be
> > d S(t)/dt = K1 + K2 + ... Kn
> > Now apply the chain rule of differentiation:
> > d S(t)/dt = Vs(t) * d[S](t)/dt + [S](t) * d Vs(t)/dt
> > The first term corresponds to the ODEs Andrew wrote down (with Vs
> > brought to he right hand side), but the second temp
> disappeared in his
> > formula. Implicitly he assumed that d Vs(t) /dt = 0, i.e., constant
> > volume, but this is certainly not always the case.
> > Rewriting, we get
> > d[S](t)/dt = (K1 + K2 + ... Kn)/Vs(t) - [S](t)/Vs(t) * d Vs(t)/dt
> > Here the second term is more clearly visible as the dilution term.
> > When Vs(t) is not differentiable (see cell division event
> in the cell
> > cycle models), things get even more complicated.
> > Therefore we would have to specify that:
> > > Constraints:
> > >
> > > When the "unitsAreConcentrationPerTime" attribute is
> true then all
> > > the modifiers, reactants and products should be located
> in the same
> > > compartment. This compartmentis then the compartment where the
> > > reaction is located.
> > The compartment in which the reaction is located (as defined by the
> > previous sentence) must have a constant volume, i.e., no
> Rule or Event
> > may modify this volume.
> > Since this would be another semantic condition for the use of the
> > proposed extension, I suggest staying with the current
> definition and
> > urging all tool developers to correctly treat this issue. Remember,
> > SBML like any XML language is not primarily intended for
> humen reading
> > and writing, but rather for exchange between tools.
> > Jörg Weimar.
> > Andrew Finney wrote:
> > > When the unitsAreConcentrationPerTime attribute is true
> of a Ki then
> > > the ODE is:
> > >
> > > d[S]/dt = (K1 + K2 + (Ki * V) + ...Kn)/V
> > >
> > > where V is the size of the compartment in which the reaction
> > > corresponding to
> > > Ki is located, which must always be the compartment where S is
> > > located.
> > >
> > > Of course the equation can be recast so that individual transport
> > > reaction laws are divided by the compartment volume if you prefer:
> > >
> > > d[S]/dt = K1/V + K2/V + Ki +...Kn/V
> > >
> > >
> > --
> > Privatdozent Dr. Jörg R. Weimar, Arbeitsgruppe Bioinformatik,
> > Institut für Informationssysteme, TU-Braunschweig
> > J.Weimar at tu-bs.de, http://www.jweimar.de
> > Tel. +49-531-2096237 Mühlenpfordtstr.23 D-38106 Braunschweig
> Stefan Hoops, Ph.D.
> Senior Project Associate
> Virginia Bioinformatics Institute - 0477
> Virginia Tech
> Bioinformatics Facility I
> Blacksburg, Va 24061, USA
> Phone: (540) 231-1799
> Fax: (540) 231-2606
> Email: shoops at vbi.vt.edu
More information about the Sbml-discuss