|
Neurocal
Neural Engineering
Center,
Case Western Reserve
University
http://nec.cwru.edu/
created by
Zeng Lertmanorat
Download latest version

Introduction
Neurocal is a simulation software designed for solving the equation that
describes the activity of nerve cells. It helps visualize how nerve cells react
to any source of inputs such as intracellular stimulation, extracellular
stimulation, ions concentration, temperature and etc. The software runs within
Matlab environment, which
allows users to take advantage of built-in functions in Matlab to display and
analyze the simulation result.
Getting started
Neurocal solves the simulation based
on a model file that describes the model configuration that can be done
within 4 lines of code. The best way to learn what model file is is to check
out examples in "Neurocal/model" subdirectory from exaple_1 to
example_8. For more information about how to create a model file, please refer
to the
how to create model file
section.
Once a
model file has been created, start Matlab program and change the Matlab
working directory to where Neurocal is located. Then, type "
Neurocal" . Neurocal window will be popped up as shown below.
Neurocal window is the main window of this program. The simulation
starts by selecting a model file using "File:Open model"
menu in Neurocal window.
Once a
model file has been chosen, open one of Setting windows under Setting
menu. In any Setting window, there are 3 buttons; "Ok",
"Close", and "Apply". Simulation starts
when "Apply" button is clicked. The difference
between “Ok” and “Apply” is that “Apply” save adjusted
parameters and performs a simulation, whereas “Ok” only save the
adjusted parameters. “Ok” allow users to make changes on more than one
parameters before running the simulation.
Once a
simulation is performed, you can view the results using Graph (menu in Neurocal
window). You can also view the result in the Matlab command line by running “show”
function, which will allow you to access to variables in the model, such as
membrane voltage, membrane current , etc.. The variables are created in Structure
format. For example, “soma.vm” is the membrane voltage for a variable
named “soma”. For more information about Structure, please refer to
Matlab users guide.
1.Neurocal window

|
is the main window of this software. It consists of
1) A text box that displays the name of currently-used
model file, which is "Ex_03_simple_axon" in this
example.
2) Menus that allows users
to operate the simulation. The functions of menus are described below.
|
1.1 File

|
In order to run the simulation, user must
specify first which model file will be used. Within the File
menu, there is a submenu Open model. Use this
submenu to open a model file you want to use for the simulation.
|
1.2 Setting

|
Within the Setting
menu, there are six submenus.
1)
Time: set the value of
time step and time length for simulation.
2)
Environment:
set the value of Temperature and extra- cellular resistivity.
3)
Parameters:
access to the parameters of any vaiable.
4)
Channel: access
to the membrane kinetic parameters if you have one in your model.
5)& 6)
Intracellular Stim and
Extracellular Stim bring up a graphic
user interface for adjusting parameters of intracellular and extracellular
stimulator respectively. These parameters are first assigned within a model
file. If the model file does not contain any stimulator parameter, these
menus will not work. For more information, please refer to the
how to create model file
section.
|
1.3 Graph
|

|
No need to explain what they are.
|
2.Setting:Time
|

|
is created
from Neurocal -> Setting -> Time menu for adjusting the
simulation parameters.
Time(ms) : The length of simulation
Time step : There are three options for time step size.
1)-Fixed step (1-20)(us):
Users define the step size on the edit box.
2)-Variable (Coarse) : The step size
is automatically calculated with Coarse accuracy
3)-Variable (Fine) : The step
size is automatically calculated with Fine accuracy
|
3.Setting:Environment
|

|
is created from Neurocal -> Setting -> Environment menu
for adjusting the simulation parameters.
1) R extra-cel (Ohm-Cm) : The extracellular resistivity
in the model. It is used only when the extracellular stimulator is assigned
in the model file. It has no effect on the model that has only intracellular
stimulator.
2) Temperature : The temperature in the system
|
4.Setting:Parameters
|

|
Allow uses to change the
parameters of variables in the model file. Please
read it carefully.
·
The length of variable (L) can be either
"a constance number" or "a
function of the diameter". The latter is useful for modeling the
myelinated axon.
·
The Rm (membrane resistance) is
normally a number. However, if the variable has any active channel, Rm
will be replaced by 1/GLk (leakage current).
·
If there is any extracellular stimulator in
the model, all segments need to have a "coordinate" so that the
extracellular voltage can be calculated accordingly. The coordinates can be
automatically assigned by vectors [XYZi] and [XYZc]. [XYZi] represents the
vector of the variable (axon) and the [XYZc] is the coordinate of its center
node. In this example, the axon is on the X axis with the center node on the
origin. After a simulation is performed, you can check the coordinate at
"axon.xyz".
·
If there is NO extracellular stimulator in the
model, [XYZi] or [XYZc] won't be used.
Please refer to
How
to create a variable section to see what each parameter means.
|
5.Setting:Channels
|

|
Allow uses to change the
parameters of membrane kinetics of any Variable.
|
6.Setting:Intralcellular
Stimulation
|

|
is created from Neurocal ->
Setting -> Intracellular Stim menu for adjusting parameters of
intracellular stimulator(s) first assigned within a model file. Each
intracellular stimulator has 5 parameters that can be adjusted ;Variable,
Position, Amplitude, Duration, and Delay. The position is a value between 0
and 1, which represent two ends of a variable. For a variable that has only 1
segment. This value has no effect. For more information, please refer to the
How to create a model file section. In this
example, there are 3 intracellular stimulators in the model.
|
7.Setting:Extracellular
Stimulation
|

|
is created from Neurocal -> Setting -> Extra cellular Stim menu
for adjusting parameters of extracellular stimulator(s) first assigned within
a model file.
Each extracellular stimulator has 6 parameters that can be adjusted ;X,
Y, Z, Amplitude, Duration, and Delay. In this example, there is one
extracellular stimulators in the model. Multiple extracellular stimulators
can be implemented.
|
8.Graph:2D-Time
|

|
is created from Neurocal ->
Graph -> 2DViewer menu for displaying simulation result in 2 dimension
mode. Clicking the Plot menu brings up a plot control window
(2D-Viewer:Plot).
The display properties of the
result can be changed by clicking
on the
toolbar and then selecting any plot you want to make changes. You can delete
or change the plot style of the result. For more information, please refer to
Matlab user guide..
|
9. 2D-Time : Plot
|

|
is created
from 2D-Time -> Plot menu. This window allows users to
select what to plot on the 2D-Time window. The first (left)
column is the list of variables in the model. The second (middle) column is
the list of segments associated with the variable in the first column. The
third (right) column is the list of parameters associated with the variable
in the first column.. There are 4 buttons.
Color : specify a color for the next plot.
Replace : erase old plots and
plot new values.
Add : keep old plots and add new
values.
Close : close the window
|
10.Graph:2D-Space
|

|
The time to be plotted can be chosen either by the slide bar
or the edit box.
|
11. 2D-Space: Plot
12.Graph:3D-Viewer
|

|
is created from Neurocal ->
Graph -> 3DViewer menu for displaying simulation result in 3 dimension
mode. There are 3 menus on this window.
Plot
: Brings up a plot control window (3D-Viewer:Plot).
Duplicate : Plot
the current result on a new window.
Export
: Save the current result into a text file in ASCII format with tab
delimiter. In the output file, the first column is Time and the rest
are the current plot.
|
13. 3D-Viewer : Plot
|

|
is created
from 3D-Viewer-Plot. This window allows users to select what to
plot on the 3D-Viewer window. The first (left) column is the
list of variables in the model. The second (right) column is the list of
parameters associated with the variable in the first column.. There are 2
buttons.
Replace: plot the variable and
parameter selected.
Close : close the
window.
|
How to access
result in Matlab Command
Once a simulation has been done, you can view the result in
the Matlab command line by running “show” function, which will allow you to access to
variables in the model, such as membrane voltage, membrane current , etc.. The
variables are created in Structure format. For example, “soma.vm”
is the membrane voltage for a variable named “soma”. For more information
about Structure, please refer to Matlab users guide.
How a
vaiable is created
Each variable represents a cylinder which can be divided into several
segments
How to
create a model file
A model file for Exstim
is similar to a mod file in Neuron simulation program. Let's check the
examples.
|
%Ex_01_Simple_soma
1:create('soma');
%create a variable named soma with default parameters.
2:global
soma
%required for all variable created
3:insert(soma,'hh')
%insert HH channel into SOMA [variable
model]
4:Iinstim(soma,0.5,0.1,100,100)
%intracellular stimulation
% [variable positon(0-1) amp(uA) pulsewidth(us) delay(us)]
|
Several default values are assigned to a variable
(soma) when created.
soma.nseg =
1 %number of
segment.
soma.dia = 10
%diameter (um)
soma.L =
100 %length of the
cyclinder (um)
soma.c = 1
%membrane capacitance (uF/cm2)
soma.ra = 100
%axonal resistance (ohm-cm)
soma.rm =
3 %membrane
resistance (kohm/cm2)
soma.vini= -70 %membrane
resting voltage (mV)
These values can be changed within the model file. Let see an example below
|
%Ex_03_Simple_axon_active
1:create('axon');
%create a variable named axon with default parameters.
2:global axon
%required for all variable created
3:axon.nseg=55;
% change the number of segments
4:axon.L=10*axon.dia*axon.nseg;
% um change the length of axon
5:insert(axon,'hh')
%insert HH channel into AXON [variable model]
6:Iinstim(axon,0.5,0.1,100,0)
%intracellular stimulation [variable positon(0-1)
amp(uA) pw(us) delay(us)]
|
The final example is a model file for a simple
neuron.
|
%Ex_08_Simple_Neuron
1:create('axon');
2:create('soma');
3:create('dendrite',3)
%create dendrite(1),dendrite(2),dendrite(3)
4:global axon soma dendrite
5:axon.L=2500;
6:axon.nseg=20;
7:dendrite{1}.L=2000;
8:dendrite{1}.nseg=20;
9:dendrite{2}.L=4000;
10:dendrite{2}.nseg=20;
11:dendrite{3}.L=2000;
12:dendrite{3}.nseg=20;
13:connect(soma,0,dendrite{1},0);
%[main, position(0-1), branch, position (0 OR 1)]
14:connect(soma,0,dendrite{2},0);
%the branch position is either 0 or 1
15:connect(soma,0,dendrite{3},0);
%the branch position is either 0 or 1
16:connect(axon,0,soma,0);
%the branch position is either 0 or 1
17:insert(axon,'hh')
18:Iinstim(soma,1,0.5,200,0) %[variable
positon(0-1) amp(uA) pw(us) delay(us)]
|
System
Requirement
-Windows operating system
-Matlab version 6.
Restriction
1. To name a model file, please DO NOT use any strange characters like
+, -,!,@,#,$,%,^, (,),{<}<[,]
etc. If you get an error when opening a model file, try simplying the file
name.
2. The length of filename can not exceed 31 characters...
|