did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

We're the #1 textbook rental company. Let us show you why.

9780521843218

The Neuron Book

by
  • ISBN13:

    9780521843218

  • ISBN10:

    0521843219

  • Edition: 1st
  • Format: Hardcover
  • Copyright: 2006-02-06
  • Publisher: Cambridge University Press

Note: Supplemental materials are not guaranteed with Rental or Used book purchases.

Purchase Benefits

  • Free Shipping Icon Free Shipping On Orders Over $35!
    Your order must be $35 or more to qualify for free economy shipping. Bulk sales, PO's, Marketplace items, eBooks and apparel do not qualify for this offer.
  • eCampus.com Logo Get Rewarded for Ordering Your Textbooks! Enroll Now
List Price: $137.00 Save up to $50.69
  • Rent Book $86.31
    Add to Cart Free Shipping Icon Free Shipping

    TERM
    PRICE
    DUE
    SPECIAL ORDER: 1-2 WEEKS
    *This item is part of an exclusive publisher rental program and requires an additional convenience fee. This fee will be reflected in the shopping cart.

Supplemental Materials

What is included with this book?

Summary

The authoritative reference on NEURON, the simulation environment for modeling biological neurons and neural networks that enjoys wide use in the experimental and computational neuroscience communities. This book shows how to use NEURON to construct and apply empirically based models. Written primarily for neuroscience investigators, teachers, and students, it assumes no previous knowledge of computer programming or numerical methods. 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 NEURON Book covers material that ranges from the inner workings of this program, to practical considerations involved in specifying the anatomical and biophysical properties that are to be represented in models. It uses a problem-solving approach, with many working examples that readers can try for themselves.

Table of Contents

Preface xvii
Acknowledgments xix
A tour of the Neuron simulation environment
1(31)
Modeling and understanding
1(1)
Introducing Neuron
1(1)
State the question
2(1)
Formulate a conceptual model
3(2)
Implement the model in Neuron
5(13)
Starting and stopping Neuron
6(1)
Bringing up a CellBuilder
6(2)
Entering the specifications of the model cell
8(1)
Topology
8(2)
Subsets
10(2)
Geometry
12(1)
Biophysics
13(3)
Saving the model cell
16(1)
Executing the model specification
16(2)
Instrument the model
18(3)
Signal sources
18(2)
Signal monitors
20(1)
Set up controls for running the simulation
21(1)
Save model with instrumentation and run control
21(2)
Run the simulation experiment
23(1)
Analyze results
24(8)
References
30(2)
The modeling perspective
32(4)
Why model?
32(1)
From physical system to computational model
33(3)
Conceptual model: a simplified representation of a physical system
33(1)
Computational model: an accurate representation of a conceptual model
33(1)
An Example
34(2)
Expressing conceptual models in mathematical terms
36(19)
Chemical reactions
36(8)
Flux and conservation in kinetic schemes
37(2)
Stoichiometry, flux, and mole equivalents
39(2)
Compartment size
41(2)
Scale factors
43(1)
Electrical circuits
44(6)
Cables
50(5)
References
54(1)
Essentials of numerical methods for neural modeling
55(35)
Spatial and temporal error in discretized cable equations
56(6)
Analytic solutions: continuous in time and space
56(1)
Spatial discretization
57(3)
Adding temporal discretization
60(2)
Numerical integration methods
62(21)
Forward Euler: simple, inaccurate and unstable
62(2)
Numerical instability
64(2)
Backward Euler: inaccurate but stable
66(2)
Crank-Nicholson: stable and more accurate
68(2)
Efficient handling of nonlinearity
70(2)
Adaptive integration: fast or accurate, occasionally both
72(1)
Implementational considerations
73(2)
The user's perspective
75(5)
Local variable time step method
80(3)
Discrete event simulations
83(1)
Error
83(3)
Summary of NEURON's integration methods
86(4)
Fixed time step integrators
86(1)
Default: backward Euler
86(1)
Crank--Nicholson
86(1)
Adaptive integrators
87(1)
CVODE
88(1)
DASPK
88(1)
References
88(2)
Representing neurons with a digital computer
90(38)
Discretization
90(2)
How Neuron separates anatomy and biophysics from purely numerical issues
92(6)
Sections and section variables
92(1)
Range and range variables
93(2)
Segments
95(1)
Implications and applications of this strategy
96(1)
Spatial accuracy
96(1)
A practical test of spatial accuracy
97(1)
How to specify model properties
98(3)
Which section do we mean?
98(1)
Dot notation
99(1)
Section stack
99(1)
Default section
100(1)
How to set up model topology
101(2)
Loops of sections
101(1)
A section may have only one parent
101(1)
The root section
101(1)
Attach sections at 0 or 1 for accuracy
102(1)
Checking the tree structure with topology ( )
102(1)
Viewing topology with a Shape plot
103(1)
How to specify geometry
103(8)
Stylized specification
104(1)
3-D specification
105(2)
Avoiding artifacts
107(1)
Beware of zero diameter
107(1)
Stylized specification may be reinterpreted as 3-D specification
108(3)
How to specify biophysical properties
111(6)
Distributed mechanisms
111(1)
Point processes
112(1)
User-defined mechanisms
113(1)
Working with range variables
114(1)
Iterating over nodes
114(1)
Linear taper
115(1)
How changing nseg affects range variables
115(2)
Choosing a spatial grid
117(11)
A consideration of intent and judgment
118(3)
Discretization guidelines
121(1)
The d_lambda rule
122(4)
References
126(2)
How to build and use models of individual cells
128(29)
Graphical user interface vs. hoc code: which to use, and when?
128(1)
Hidden secrets of the GUI
129(1)
Implementing a model with hoc
130(9)
Topology
130(2)
Geometry
132(1)
Biophysics
133(1)
Testing the model implementation
133(2)
An aside: how does our model implementation in hoc compare with the output of the Cell Builder?
135(4)
Instrumenting a model with hoc
139(1)
Setting up simulation control with hoc
139(2)
Testing simulation control
141(1)
Evaluating and using the model
141(1)
Combining hoc and the GUI
141(13)
No Neuron Main Menu toolbar?
142(1)
Default section? We ain't got no default section!
142(2)
Strange Shapes?
144(1)
The barbed wire model
144(4)
The case of the disappearing section
148(3)
Graphs don't work?
151(1)
Conflicts between hoc code and GUI tools
152(2)
Elementary project management
154(3)
Iterative program development
155(1)
Reference
156(1)
How to control simulations
157(26)
Simulation control with the graphical user interface
157(2)
The standard run system
159(5)
An outline of the standard run system
160(1)
Fadvance ( )
160(1)
advance ( )
161(1)
step ( )
161(1)
steprun ( ) and continuerun ( )
162(1)
run ( )
163(1)
Details of fadvance ( )
164(15)
The fixed step methods: backward Euler and Crank--Nicholson
165(6)
Adaptive integrators
171(2)
Local time step integration with discrete events
173(6)
Global time step integration with discrete events
179(1)
Incorporating Graphs and new objects into the plotting system
179(4)
References
181(2)
How to initialize simulations
183(24)
State variables and STATE variables
183(2)
Basic initialization in NEURON: finitialize ( )
185(2)
Default initialization in the standard run system: stdinit ( ) and init ( )
187(8)
Initial blocks in NMODL
188(2)
Default vs. explicit initialization of STATEs
190(1)
Ion concentrations and equilibrium potentials
190(5)
Examples of custom initializations
195(12)
Initializing to a particular resting potential
195(2)
Initializing to steady state
197(1)
Initializing to a desired state
198(1)
Initializing by changing model parameters
199(1)
Details of the mechanism
200(2)
Initializing the mechanism
202(4)
Reference
206(1)
How to expand NEURON's library of mechanisms
207(58)
Overview of NMODL
207(1)
Example 9.1: A passive ``leak'' current
208(6)
The Neuron block
210(1)
Variable declaration blocks
211(1)
The PARAMETER block
212(1)
The ASSIGNED block
212(1)
Equation definition blocks
213(1)
The BREAKPOINT block
213(1)
Usage
214(1)
Example 9.2: A localized shunt
214(3)
The Neuron block
215(1)
Variable declaration blocks
215(1)
Equation definition blocks
216(1)
The Breakpoint block
216(1)
Usage
217(1)
Example 9.3: An intracellular stimulating electrode
217(3)
The Neuron block
218(1)
Equation definition blocks
218(1)
The Breakpoint block
218(1)
The Initial block
219(1)
Usage
219(1)
Example 9.4: A voltage-gated current
220(8)
The Neuron block
222(1)
The Units block
222(1)
Variable declaration blocks
222(1)
The Assigned block
222(1)
The State block
223(1)
Equation definition blocks
223(1)
The Breakpoint block
223(1)
The Initial block
224(1)
The Derivative block
225(1)
The Function block
226(1)
Usage
227(1)
Example 9.5: A calcium-activated. voltage-gated current
228(5)
The Neuron block
230(1)
The Units block
231(1)
Variable declaration blocks
231(1)
The Assigned block
231(1)
The State block
232(1)
Equation definition blocks
232(1)
The Breakpoint block
232(1)
The Derivative block
232(1)
The Function and Procedure blocks
232(1)
Usage
233(1)
Example 9.6: Extracellular potassium accumulation
233(5)
The Neuron block
235(1)
Variable declaration blocks
236(1)
The Parameter block
236(1)
The State block
236(1)
Equation definition blocks
236(1)
The Breakpoint block
236(1)
The Initial block
236(1)
The Derivative block
237(1)
Usage
237(1)
General comments about kinetic schemes
238(2)
Example 9.7: Kinetic scheme for a voltage-gated current
240(5)
The Neuron block
242(1)
Variable declaration blocks
242(1)
The State block
242(1)
Equation definition blocks
243(1)
The Breakpoint block
243(1)
The Initial block
243(1)
The Kinetic block
243(1)
The Function_Tables
244(1)
Usage
245(1)
Example 9.8: Calcium diffusion with buffering
245(10)
Modeling diffusion with kinetic schemes
246(4)
The Neuron block
250(1)
The Units block
250(1)
Variable declaration blocks
250(1)
The Assigned block
250(1)
The State block
250(1)
Local variables declared outside of equation definition blocks
251(1)
Equation definition blocks
251(1)
The Initial block
251(1)
Procedure factors ( )
252(1)
The Kinetic block
252(2)
Usage
254(1)
Example 9.9: A calcium pump
255(5)
The Neuron block
255(1)
The Units block
256(1)
Variable declaration blocks
256(1)
The Parameter block
256(1)
The Assigned block
257(1)
The Constant block
257(1)
The State block
257(1)
Equation definition blocks
257(1)
The Breakpoint block
257(1)
The Initial block
258(1)
The Kinetic block
259(1)
Usage
260(1)
Models with discontinuities
260(3)
Discontinuities in Parameters and Assigned variables
260(1)
Discontinuities in States
261(2)
Event handlers
263(1)
Time-dependent Parameter changes
263(2)
References
264(1)
Synaptic transmission and artificial spiking cells
265(41)
Modeling communication between cells
266(23)
Example 10.1: Graded synaptic transmission
266(2)
The Neuron block
268(1)
The Breakpoint block
269(1)
Usage
269(2)
Example 10.2: A gap junction
271(1)
Usage
272(1)
Modeling spike-triggered synaptic transmission: an event-based strategy
272(1)
Conceptual model
273(1)
The Net Con class
274(3)
Example 10.3: Synapse with exponential decay
277(1)
The Breakpoint block
278(1)
The Derivative block
278(1)
The Net_Receive block
278(1)
Usage
278(2)
Example 10.4: Alpha function synapse
280(1)
Example 10.5: Use-dependent synaptic plasticity
281(2)
The Net_Receive block
283(1)
Example 10.6: Saturating synapses
284(3)
The Parameter block
287(1)
The State block
287(1)
The Initial block
287(1)
The Breakpoint and Derivative blocks
288(1)
The Net_Receive block
288(1)
Artificial spiking cells
289(17)
Example 10.7: IntFirel, a basic integrate and fire model
290(1)
The Neuron block
291(1)
The Net_Receive block
292(1)
Enhancements to the basic mechanism
292(5)
Example 10.8: IntFire2, firing rate proportional to input
297(1)
Implementation in NMODL
298(3)
Example 10.9: IntFire4, different synaptic time constants
301(3)
Other comments regarding artificial spiking cells
304(1)
References
305(1)
Modeling networks
306(37)
Building a simple network with the GUI
307(1)
Conceptual model
308(1)
Adding a new artificial spiking cell to Neuron
309(2)
Creating a prototype net with the GUI
311(13)
Define the types of cells
311(1)
Create each cell in the network
312(3)
Connect the cells
315(1)
Setting up network architecture
315(1)
Specifying delays and weights
316(2)
Set up instrumentation
318(1)
Set up controls for running simulations
319(3)
Run a simulation
322(1)
Caveats and other comments
322(1)
Changing the properties of an existing network
322(1)
A word about cell names
323(1)
Combining the GUI and programming
324(19)
Creating a hoc file from the NetWork Builder
324(2)
NetGUI default section
326(1)
Network cell templates
326(1)
Network specification interface
327(1)
Network instantiation
328(1)
Exploiting the reusable code
328(13)
References
341(2)
hoc, NEURON's interpreter
343(20)
The interpreter
344(1)
Adding new mechanisms to the interpreter
345(1)
The stand-alone interpreter
346(4)
Starting and exiting the interpreter
346(2)
Error handling
348(2)
Syntax
350(13)
Names
350(1)
Keywords
350(3)
Variables
353(1)
Expressions
354(1)
Statements
355(1)
Comments
355(1)
Flow control
356(1)
Functions and procedures
357(1)
Arguments
358(1)
Call by reference vs. call by value
359(1)
Local variables
360(1)
Recursive functions
360(1)
Input and output
361(1)
Editing
362(1)
Reference
362(1)
Object-oriented programming
363(15)
Object vs. class
363(1)
The object model in hoc
364(1)
Objects and object references
364(8)
Declaring an object reference
364(1)
Creating and destroying an object
365(1)
Using an object reference
366(1)
Passing objrefs (and objects) to functions
366(1)
Defining an object class
367(1)
Direct commands
368(1)
Initializing variables in an object
368(1)
Keyword names
369(1)
Object references vs. object names
370(1)
An example of the didactic use of object names
371(1)
Using objects to solve programming problems
372(4)
Dealing with collections or sets
372(1)
Array of objects
372(1)
List of objects
373(2)
Encapsulating code
375(1)
Polymorphism and inheritance
376(2)
Reference
377(1)
How to modify Neuron itself
378(21)
A word about graphics terminology
378(1)
Graphical interface programming
378(21)
General issues
380(1)
A pattern for defining a GUI tool template
381(2)
Enclosing the GUI tool in a single window
383(2)
Saving the window to a session
385(4)
Tool-specific development
389(1)
Plotting
389(3)
Handling events
392(3)
Finishing up
395(4)
Appendix A1 Mathematical analysis of IntFire 4
399(7)
Proof that the estimate is never later than the true firing time
401(5)
Part 1: If m0 ≤ 0, then m(t)remains < 1
402(2)
Part 2: If m' > 0, (1 -- m)/m' underestimates the firing time
404(2)
Appendix A2 Neuron's built-in editor
406(6)
Starting and stopping
407(1)
Switching from hoc to emacs
407(1)
Returning from emacs to hoc
407(1)
Killing the current command
407(1)
Moving the cursor
407(1)
Modes
408(1)
Deleting and inserting
408(1)
Blocks of text: marking, cutting, and pasting
408(1)
Searching and replacing
409(1)
Text formatting and other tricks
409(1)
Buffers and file I/O
409(1)
Windows
410(1)
Macros and repeating commands
411(1)
References
411(1)
Epilogue 412(1)
Index 413

Supplemental Materials

What is included with this book?

The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.

The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.

Rewards Program