November 29, 2004
Preface to The NEURON Book
Preface to The NEURON Book
N.T. Carnevale1 and M.L. Hines2
Departments of 1Psychology and 2Computer Science
Yale University, New Haven, CT
ted.carnevale@yale.edu
michael.hines@yale.edu
Who should read this book
This book is about how to use the NEURON simulation environment to construct and
apply empirically-based models of neurons and neural networks. It is written primarily
for neuroscience investigators, teachers, and students, but readers with a background in
the physical sciences or mathematics who have some knowledge about brain cells and
circuits and are interested in computational modeling will also find it helpful. The
emphasis is on the most productive use of NEURON as a means for testing hypotheses
that are founded on experimental observations, and for exploring ideas that may lead to
the design of new experiments. Therefore the book uses a problem-solving approach,
with many working examples that readers can try for themselves.
What this book is, and is not, about
Formulating a conceptual model is an attempt to capture the essential features that
underlie some particular function. This necessarily involves simplification and
abstraction of real-world complexities. Even so, one may not necessarily understand all
Copyright © 2001-2004 N.T. Carnevale and M.L. Hines, all rights reserved
Preface to The NEURON Book
November 29, 2004
implications of the conceptual model. To evaluate a conceptual model it is often
necessary to devise a hypothesis or test in which the behavior of the model is compared
against a prediction. Computational models are useful for performing such tests. The
conceptual model and the hypothesis should determine what is included in a
computational model and what is left out. This book is not about how to come up with
conceptual models or hypotheses, but instead focuses on how to use NEURON to create
and use computational models as a means for evaluating conceptual models.
What to read, and why
The first chapter conveys a basic idea of NEURON's primary domain of application
by guiding the reader through the construction and use of a model neuron. This exercise
is based entirely on NEURON's GUI, and requires no programming ability or prior
experience with NEURON whatsoever.
The second chapter considers the role of computational modeling in neuroscience
research from a general perspective. Chapters 3 and 4 focus on aspects of applied
mathematics and numerical methods that are particularly relevant to computational
neuroscience. Chapter 5 discusses the concepts and strategies that are used in NEURON
to simplify the task of representing neurons, which (at least at the level of synapses and
cells) are distributed and continuous in space and time, in a digital computer, where
neither time nor numeric values are continuous. Chapter 6 returns to the topic of model
construction, emphasizing the use of programming.
Chapters 7 and 8 provide "inside information" about NEURON's standard run and
initialization systems, so that readers can make best use of their features and customize
Page 2
Copyright © 2001-2004 N.T. Carnevale and M.L. Hines, all rights reserved
November 29, 2004
Preface to The NEURON Book
them to meet special modeling needs. Chapter 9 shows how to use the NMODL
programming language to add new biophysical mechanisms to NEURON. This theme
continues in Chapter 10, which starts with mechanisms of communication between cells
(gap junctions, graded and spike-triggered synaptic transmission), and moves on to
models of artificial spiking neurons (e.g. integrate and fire cells). The first half of Chapter
11 is a tutorial on NEURON's GUI tools for creating simple network models, and the
second half shows how to use the strengths of the GUI and hoc programming to create
more complex networks.
Chapter 12 discusses the elementary features of the hoc programming language itself.
Chapter 13 describes the object-oriented extensions that have been added to hoc. These
extensions have greatly facilitated construction of NEURON's GUI tools, and they can
also be very helpful in many other complex programming tasks such as creating and
managing network models. Chapter 14 presents an example of how to use object oriented
programming to increase the functionality of NEURON.
Appendix 1 presents a mathematical analysis of the IntFire4 artificial spiking cell
mechanism, proving a result that is used to achieve computational efficiency when
simulating this model. Appendix 2 summarizes the commands for NEURON's built-in
text editor.
Acknowledgments
First and foremost, we want to thank our mentor and colleague John W. Moore for his
vision, support, encouragement, and active participation in the development of
NEURON, without which neither it nor this book would exist. Through his research and
Copyright © 2001-2004 N.T. Carnevale and M.L. Hines, all rights reserved
Page 3
Preface to The NEURON Book
November 29, 2004
teaching, he was introducing students to "computational neuroscience" long before that
glorious term was invented. NEURON had its beginnings in John's laboratory at Duke
University almost three decades ago, when he and one of the authors (MLH) started their
collaboration to develop simulation software for neuroscience research. Users of
NEURON on the Macintosh owe John a particular debt. He continues to participate in the
development and dissemination of NEURON, concentrating most recently on educational
applications in collaboration with Ann Stuart (Moore and Stuart 2004).
The list of those who have added in one way or another to the development of
NEURON is far too long for this short preface. Zach Mainen, Alain Destexhe, Bill
Lytton, Terry Sejnowski, and Gordon Shepherd deserve special mention for many
contributions, both direct and indirect, that range from specific enhancements to the
program, to fostering the wider acceptance of computational approaches in general, and
NEURON in particular, by the neuroscience community at large. We also thank the
countless NEURON users whose questions and suggestions continue to help guide the
evolution of this software and its documentation. We hope that everyone else will forgive
any omission and remind us, gently, in time for the second edition.
Finally, we thank our wives and children for their encouragement and patience while
we completed this book.
References
Moore, J.W. and Stuart, A.E. Neurons in Action: Computer Simulations with NeuroLab.
Sunderland, MA: Sinauer Associates, 2004.
Page 4
Copyright © 2001-2004 N.T. Carnevale and M.L. Hines, all rights reserved
November 29, 2004
Contents of The NEURON Book
The NEURON Book
Table of contents
Note: page numbers in each chapter start from 1, and correspond to double-spaced
format.
Preface
Chapter 1. A tour of the NEURON simulation environment
Modeling and understanding
Introducing NEURON
1. State the question
2. Formulate a conceptual model
3. Implement the model in NEURON
Starting and stopping NEURON
Bringing up a CellBuilder
Enter the specifications of the model cell
Topology
Subsets
Geometry
Biophysics
Copyright © 2001-2004 N.T. Carnevale and M.L. Hines, all rights reserved
1
2
3
4
7
8
10
11
11
15
16
20
Contents of The NEURON Book
November 29, 2004
Save the model cell
Execute the model specification
4. Instrument the model
Signal sources
Signal monitors
5. Set up controls for running the simulation
6. Save model with instrumentation and run control
7. Run the simulation experiment
8. Analyze results
References
Index
Chapter 2. Principles of neural modeling
Why model?
From physical system to computational model
Conceptual model: a simplified representation of a physical system
Computational model: an accurate representation of a conceptual model
An example
Index
22
24
25
25
27
30
31
33
37
40
42
1
2
2
3
4
6
Page 2
Copyright © 2001-2004 N.T. Carnevale and M.L. Hines, all rights reserved
November 29, 2004
Contents of The NEURON Book
Chapter 3. Expressing conceptual models in mathematical
terms
Chemical reactions
Flux and conservation in kinetic schemes
Stoichiometry, flux, and mole equivalents
Compartment size
Scale factors
Electrical circuits
Cables
References
Index
Chapter 4. Essentials of numerical methods for neural
modeling
Spatial and temporal error in discretized cable equations
Analytic solutions: continuous in time and space
Spatial discretization
Adding temporal discretization
2
3
5
7
11
13
14
28
29
2
3
6
9
Copyright © 2001-2004 N.T. Carnevale and M.L. Hines, all rights reserved
Page 3