Thanks Poul. -------------------------- Sent using BlackBerry
----- Original Message ----- From: [email protected] <[email protected]> To: CellML Discussion List <[email protected]> Sent: Fri Jun 05 09:22:23 2009 Subject: Re: [cellml-discussion] Using CellML for simplified neuron models? (Alan Garny) 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 _______________________________________________ cellml-discussion mailing list [email protected] http://www.cellml.org/mailman/listinfo/cellml-discussion
