Hippocampal spiking model for context dependent behavior (Raudies & Hasselmo 2014)

 Download zip file 
Help downloading and running models
Accession:194882
Our model simulates the effect of context dependent behavior using discrete inputs to drive spiking activity representing place and item followed sequentially by a discrete representation of the motor actions involving a response to an item (digging for food) or the movement to a different item (movement to a different pot for food). This simple network was able to consistently learn the context-dependent responses.
Reference:
1 . Raudies F, Hasselmo ME (2014) A model of hippocampal spiking responses to items during learning of a context-dependent task. Front Syst Neurosci 8:178 [PubMed]
Citations  Citation Browser
Model Information (Click on a link to find other models with that property)
Model Type: Realistic Network;
Brain Region(s)/Organism: Hippocampus;
Cell Type(s): Abstract integrate-and-fire leaky neuron;
Channel(s):
Gap Junctions:
Receptor(s):
Gene(s):
Transmitter(s):
Simulation Environment: MATLAB;
Model Concept(s):
Implementer(s): Raudies, Florian [florian.raudies at gmail.com];
/
CodePublished
screenshots
README.html
binariness.m
errorarea.m
Figure3AAndFigure4.m
Figure3BAndFigure5.m
firingRateToSI.m
gpl-3.0.txt *
index2label.m
lifModel.m
ManySlotBuffer.m
meanWoutNaN.m
NetworkSimulation100Runs.mat
rasterPlotToFiringRate.m
semWoutNaN.m
spikingNetworkContextLearning.m
StackContainer.m
stdpModel.m
TimeBuffer.m
                            
function V = lifModel(~, V,opt)
% lifModel
%   t   - Time in msec.
%   V   - Membrane potential in Volts.
%   opt - Structure with fields:
%         * dt      - Time simulated in one step in milli seconds.
%         * V_PEAK  - Peak value for membrane potential in Volts.
%         * V_RESET - Reset value for membrane potential in Volts.
%         * V_TH    - Threshold voltage for spike in Volts.
%
% RETURN
%   V   - Updated membrane potential in Volts.
%
% DESCRIPTION
%   Leaky Integrate and Fire (LIF) model.

%   Florian Raudies, 09/07/2014, Boston University.

dt          = opt.dt;       % Step width in milli seconds
V_PEAK      = opt.V_PEAK;   % Peak value in Volts.
V_RESET     = opt.V_RESET;  % Reset value in Volts.
V_TH        = opt.V_TH;     % Threshold value in Volts.
C_MEM       = 5.5;          % Membrane capacitance in nano Farad.
G_LEAK      = 10;           % Membrance leaky conductance in nano Siemens.

% Does any of the potentials have the peak value or above?
AbovePeak   = V>=V_PEAK;

% If they have they have the peak value or above then reset.
V(AbovePeak)= V_RESET;

% Does any of the potentials reach a value above threshold?
AboveTh     = V>V_TH;

% If a potental is above threshold set it to the peak value.
V(AboveTh)  = V_PEAK;

% Update all membrane potentials not updated thus far by using the lif eq.
Update      = ~AbovePeak & ~AboveTh;
V(Update)   = V(Update) + dt*10^-3*(G_LEAK/C_MEM*(V_RESET-V(Update)) ...
                                  + opt.I(Update)/C_MEM);