Dear Hans

Thank you for raising this. It s, in fact, one of the issues discussed at the recent combined CellML SBGN-SBO BioPAX MIASE Workshop held this April on Waiheke Island. There is a clear need to be able to specify discontinuous processes and events, such as you have described. However, both CellML and SBML use a declarative specification of models, described with content MathML. Event handling fits more naturally with imperative descriptions of models so there is currently no clean way of describing events using content MathML. SBML, which also uses content MathML as its underlying mathematical description language, has addressed this problem by augmenting the language with events and reset rules. After some discussion at the recent workshop, the consensus was that the next iteration of CellML (1.2) would include facilities for specifying events and applying reset rules in a way that is consistent with SBML. There are several reasons for taking this approach: it is a method that fits reasonably naturally with modellers' notion of describing such models; the solution has been tested by the SBML community; the construct will be straightforward to handle when translating between SBML and CellML. We are currently working on the CellML 1.2 specification and plan to have a draft released shortly with the addition of events and reset rules to handle problems such as you have described.

Best wishes
Poul

On 2009-06-05, at 00:50, Dr. Hans Ekkehard Plesser wrote:


Hi Alan!

[Apologies for breaking the thread, I had subscribed to the list in digest form.]

Thank you for your example. Unfortunately, fixed time-stepping schemes where events (threshold crossings and membrane potential resets) can occur only on a fixed time grid are one of the big no-nos in neuronal network modeling, since they can lead to strong synchronization artefacts. Indeed, quite a lot of research in recent years has focused on algorithms to determine the exact time of threshold crossings efficiencly. I'd be happy to send you reference if you are interested.

Thus, if we wanted to use CellML to represent neuron models in a general form, we would need a possibility to represent instantaneous events in continuous time. I believe SBML events provide
this, don't they?

Best,
Hans



----------------------------------------------------------------------

Message: 1
Date: Mon, 1 Jun 2009 12:17:54 +0100
From: "Alan Garny" <[email protected]>
Subject: Re: [cellml-discussion] Using CellML for simplified neuron
        models?
To: "'CellML Discussion List'" <[email protected]>
Message-ID: <001001c9e2aa$9beba840$d3c2f8...@[email protected]>
Content-Type: text/plain; charset="us-ascii"

Hi Hans,

We are looking for a good way to describe and share neuron models, and
CellML appears a good
candidate. The neuron models we are interested in consist mostly of a
single compartment,
possibly of a small number of compartments.

As far as I can see, CellML appears well suited to describe the so- called
subthreshold dynamics
of model neurons. But I am wondering if CellML can also capture (or be
extended to capture) the
threshold operation present in most simplified neuron models. Briefly, the
model dynamics are
integrated according to a set of differential equations. When the membrane
potential of the
neuron crosses a certain threshold, the neuron is said to "fire": the
membrane potential is
reset to a certain value instantaneuously, and often clamped at that value
for a certain period
of time afterwards (refractory period); also, an output signal is
generated.
In simple
pseudocode, this would look like:

while ( simulation time not up )

 process input
 update dynamics according to ODE

 if ( neuron is refractory )
   V_m = V_reset
   count down "refractoriness"

 if ( V_m > Threshold )
   V_m = V_reset
   emit output signal

 count up time

I believe this could easily be done, as long as you are OK with the
following:
- this would require integrating the model using an integration technique that relies on a fixed time step. In my experience, anything will make your
resetting of Vm difficult.
- your output signal (Vm?) will always be generated.

Attached is a very simple CellML file (based on the van der Pol model) that illustrates the kind of thing I think you are after. You want to plot the x
and y parameters (see attached screenshot).

Alan
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Test.cellml
Type: application/octet-stream
Size: 4144 bytes
Desc: not available
URL: <http://www.cellml.org/pipermail/cellml-discussion/attachments/20090601/4c57e696/attachment.obj >
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Test.png
Type: image/png
Size: 77437 bytes
Desc: not available
URL: <http://www.cellml.org/pipermail/cellml-discussion/attachments/20090601/4c57e696/attachment.png >

------------------------------

_______________________________________________
cellml-discussion mailing list
[email protected]
http://www.cellml.org/mailman/listinfo/cellml-discussion


End of cellml-discussion Digest, Vol 59, Issue 1
************************************************

--
Dr. Hans Ekkehard Plesser
Associate Professor

Dept. of Mathematical Sciences and Technology
Norwegian University of Life Sciences

Phone +47 6496 5467
Fax   +47 6496 5401
Email [email protected]
Home  http://arken.umb.no/~plesser
_______________________________________________
cellml-discussion mailing list
[email protected]
http://www.cellml.org/mailman/listinfo/cellml-discussion

_______________________________________________
cellml-discussion mailing list
[email protected]
http://www.cellml.org/mailman/listinfo/cellml-discussion

Reply via email to