Strout, J. "A library for the compartmental simulation of neurons."
Neuroscience-Net, vol. 2, Article #00013 (1997).
ABSTRACT
A programming library ("CONICAL") is presented which assists in the
construction of compartmental models of neurons. The library consists of
approximately 20 classes in the C++ programming language. Standard input
and output are used, and the code has been co-developed under several
operating systems, to ensure maximum portability. The library is
non-monolithic, i.e. portions of it may be used as needed without the
entire library present. Complex classes were derived from simpler ones
in several steps to provide flexible opportunities for customization;
and as a C++ library, the simulation code may be readily embedded in
larger applications. Documentation, including introductory material and
examples, is provided in hypertext format and can be viewed with any
tables-capable World-Wide Web browser. Classes provided include
cylindrical compartments, passive and active ion channels, and synapses,
including one based on Markov kinetic models. Performance of the library
was compared to the Genesis and Neuron neural simulators on a simple
action potential simulation. The CONICAL program required less
user-written code and much less memory than the equivalent Genesis
script, and ran more than twice as fast; it was also significantly
faster and more memory-efficient than the comparable Neuron script.
CONICAL provides an alternative simulation environment which may be
useful when portability, extensibility, or efficiency is needed,
especially on personal computers or single-processor workstations.
Key words: neural simulation, compartmental modeling, C++, class library
The paper may be found in the "Theoretical Neuroscience" section of
Neuroscience-Net (http://www.neuroscience.com/), or viewed directly at:
http://www.neuroscience.com/stroutms13/index.html
,------------------------------------------------------------------.
| Joseph J. Strout Department of Neuroscience, UCSD |
| jstrout@ucsd.edu http://www-acs.ucsd.edu/~jstrout/ |
`------------------------------------------------------------------'