Synthesis of spatial tuning functions from theta cell spike trains (Welday et al., 2011)

 Download zip file 
Help downloading and running models
Accession:129067
A single compartment model reproduces the firing rate maps of place, grid, and boundary cells by receiving inhibitory inputs from theta cells. The theta cell spike trains are modulated by the rat's movement velocity in such a way that phase interference among their burst pattern creates spatial envelope function which simulate the firing rate maps.
Reference:
1 . Welday AC, Shlifer IG, Bloom ML, Zhang K, Blair HT (2011) Cosine directional tuning of theta cell burst frequencies: evidence for spatial coding by oscillatory interference. J Neurosci 31:16157-76 [PubMed]
Model Information (Click on a link to find other models with that property)
Model Type: Neuron or other electrically excitable cell;
Brain Region(s)/Organism:
Cell Type(s): Hippocampus CA1 pyramidal GLU cell; Hippocampus CA3 pyramidal GLU cell; Entorhinal cortex stellate cell;
Channel(s): I Na,p;
Gap Junctions:
Receptor(s): GabaA; AMPA;
Gene(s):
Transmitter(s): Gaba; Glutamate;
Simulation Environment: NEURON; MATLAB;
Model Concept(s): Synchronization; Envelope synthesis; Grid cell; Place cell/field;
Implementer(s): Blair, Hugh T.;
Search NeuronDB for information about:  Hippocampus CA1 pyramidal GLU cell; Hippocampus CA3 pyramidal GLU cell; GabaA; AMPA; I Na,p; Gaba; Glutamate;
%This script reproduces the grid and place cell interference patterns of
%Fig 7A from Welday et al.

figure(1);
v=25; % speed in cm/sec 
Freq=7; % theta base freq in Hz
    W=2*pi*Freq; % angular freq
d = [23.1579    28.5766    37.2030    53.3025    71.0747    79.9804   91.4141   106.6508]*3.8e-3;    %slopes of speed modulation for theta cell VCOs                  
Npt=1001; % number of data points on the time axis
t=linspace(-2,2,Npt);  % time axis: -2 sec to 2 sec

clf
% plot oscillators
for i=1:8
subplot(12,1,i)
    plot(t,cos((W+d(i)*v)*t))
    set(gca,'xtick',[]); axis tight;
end

% compute grid cells 
s=cos((W+d(2)*v)*t)+cos((W+d(8)*v)*t); % use cell 1 and cell 7
a=cos(d(2)*v*t)+cos(d(8)*v*t);
b=sin(d(2)*v*t)+sin(d(8)*v*t);
en=sqrt(a.^2+b.^2); % envelope
ph=unwrap(angle(a+sqrt(-1)*b));  % phase
% unwrap phase
for i=2:length(ph)
    if ph(i)<ph(i-1)-pi/2
        ph(i:end)=ph(i:end)+pi;
    elseif ph(i)>ph(i-1)+pi/2
        ph(i:end)=ph(i:end)-pi;
    end
end
ca=cos(W*t+ph); % carrier

% plot grid cells
subplot(12,1,9)
    plot(t, s)
    hold on
    plot(t,en,'r-')
    set(gca,'xtick',[]); axis tight;
subplot(12,1,10)
    plot(t,ca, 'g-')
    set(gca,'xtick',[]); axis tight;
    
% compute place cells 
S=0;A=0;B=0;
slp=[];
wv=[];
for i=1:8 % add all oscillators
    S=S+cos((W+d(i)*v)*t);
    wv=[wv; cos((W+d(i)*v)*t)];
    slp(i)=mean(diff(((W+d(i)*v)*t)'));
    A=A+cos(d(i)*v*t);
    B=B+sin(d(i)*v*t);
end
EN=sqrt(A.^2+B.^2); %envelope
% PH=atan(B./A); % phase
PH=unwrap(angle(A+sqrt(-1)*B));  % phase
% unwrap phase
for i=2:length(PH)
    if PH(i)<PH(i-1)-pi/2
        PH(i:end)=PH(i:end)+pi;        
    elseif PH(i)>PH(i-1)+pi/2
        PH(i:end)=PH(i:end)-pi;
    end     
end
CA=cos(W*t+PH); % carrier
%CA=cos(W*t+PH+pi); % carrier (phase + pi)
    
% plot place cells
subplot(12,1,11)
    plot(t, S)
    hold on
    plot(t,EN,'r-')
    set(gca,'xtick',[]); axis tight;
subplot(12,1,12)
    plot(t,CA, 'g-')
    set(gca,'xtick',[]); axis tight;

    figure(1);

Loading data, please wait...