README for Rumbell et al 2016 code

Preliminary step

The below help is for the unix/linux environment. If you need help for mswin or graphical Mac OS X please consult https://senselab.med.yale.edu/ModelDB/NEURON_DwnldGuide.cshtml

First, the .mod files in the optmz/ and model/ directories must be compiled, using:

|-> nrnivmodl optmz model

Starting Neuron and selection a model

Models of both the young and aged neurons can be viewed by running the following commands:

|-> nrngui init_gui.hoc

This initialises NEURON with a GUI window containing buttons to instantiate different models.
screenshot 1
The options are:

Neuron -> "young" or "aged"
Model types -> "4-channel" or "8-channel"

These variables select which of the 4 simulation results shown in Figures 4, 5, 7 or 8 to load.

Viewing Figures from the paper

After the variables are set, clicking the "Graphs" button will load panels c, d and e for the selected simulation (i.e. parameters are set in the model for the best total fit, best PP fit and best FR fit from those optimization results, and the model is then run at both low input current (+80 pA Aged, +230 pA Young) and at high input current (+380 pA).

For example selecting Neuron -> Aged, and Model types -> Advanced 7 channel mode results in the following graphs similar to Figure 8:
screenshot 2

Investigating the models

Selecting the "MRF" button instead will load the "Multiple Run Fitter" window, where error function values are shown. The "MulRunFitter[0] Domain" window can be closed. In the "MulRunFitter[0]" window, all of the different input current levels used in the suprathreshold fitting can be accessed in the 'Generators' panel on the right. Clicking one of these 'generators' brings up a window showing the empirical trace in red. The input current is listed as "Before: pyr_.inj1_.amp=". All of the error functions used at this current injection level are on the right, each listed as "pyr3_.comp[1].v( 0.5)". Selecting one of these will show the error value for that error function in the box just below (before a simulation is run, final error values are listed as "xxxxxxxxxx"). Clicking the "Error Value" button in this window will run the model, showing the model membrane potential as a black trace. Error function values are now displayed in the middle box, on the right, and can be viewed individually by clicking through the list in the right panel. The "Error Value" box at the top shows the weighted sum of all error functions at this input current level. Back in the MulRunFitter[0] window, clicking "ErrorValue" will simulate all current injections, and a total error for the model will appear.

Parameters are currently not correctly displayed in the "Parameters" side of the window.

Altering parameters

Parameter alterations are currently done from the NEURON terminal. The list of available parameters is in the file 'parameters.dat'. These are 'dummy' parameters (they all have d in front), which are then scaled according to factors found in Table 3 in the paper when set throughout the model. The current value of each parameter can be found by typing it in the NEURON terminal. To change a parameter, set the 'dummy' version using e.g.:

|-> dgnaf = 0.04
Then set throughout the model using:

|-> set_conds()
for conductance parameters, or:

|-> set_kins()
for kinetic parameters.

'dg' parameters are maximal conductances, 'dtm' parameters are activation time constant modifiers (kinetic), and 'dvs' parameters are activation voltage modifiers (kinetic).


File contents

root/

root/data/

root/model/

root/optmz/

root/output/

root/preProcess/

root/setup/