CA1 network model for place cell dynamics (Turi et al 2019)

 Download zip file   Auto-launch 
Help downloading and running models
Biophysical model of CA1 hippocampal region. The model simulates place cells/fields and explores the place cell dynamics as function of VIP+ interneurons.
1 . Turi GF, Li W, Chavlis S, Pandi I, O’Hare J, Priestley JB, Grosmark AD, Liao Z, Ladow M, Zhang JF, Zemelman BV, Poirazi P, Losonczy A (2019) Vasoactive Intestinal Polypeptide-Expressing Interneurons in the Hippocampus Support Goal-Oriented Spatial Learning Neuron
Model Information (Click on a link to find other models with that property)
Model Type: Realistic Network;
Brain Region(s)/Organism: Hippocampus; Mouse;
Cell Type(s): Hippocampus CA1 pyramidal GLU cell; Hippocampus CA1 basket cell; Hippocampus CA1 basket cell - CCK/VIP; Hippocampus CA1 bistratified cell; Hippocampus CA1 axo-axonic cell; Hippocampus CA1 stratum oriens lacunosum-moleculare interneuron ; Hippocampal CA1 CR/VIP cell;
Channel(s): I A; I h; I K,Ca; I Calcium; I Na, leak; I K,leak; I M;
Gap Junctions:
Receptor(s): GabaA; GabaB; NMDA; AMPA;
Simulation Environment: NEURON; Brian;
Model Concept(s): Place cell/field;
Implementer(s): Chavlis, Spyridon [schavlis at]; Pandi, Ioanna ;
Search NeuronDB for information about:  Hippocampus CA1 pyramidal GLU cell; GabaA; GabaB; AMPA; NMDA; I A; I K,leak; I M; I h; I K,Ca; I Calcium; I Na, leak;
#!/usr/bin/env python2
# -*- coding: utf-8 -*-
Created on Sun Sep 23 12:18:33 2018

@author: spiros
import pickle
import os
from place_cell_metrics import field_size
import numpy as np

fnames = 'Simulation_Results/'

npath_x,npath_y = 200, 1
Nbins           = 100

Nperms  = 500
xrew1, xrew2 = 80/(npath_x/Nbins), 110/(npath_x/Nbins)+1
runsAll = 5        
nTrials = 1
print "\nLEARNING: ", learning
path_figs = spec+'/figures_plasticity/'
os.system('mkdir -p '+ path_figs)
file_load = spec+'/metrics/'+learning
trials = [str(i) for i in range(1, nTrials+1)]

my_list = ['Control','No_VIPcells','No_VIPCR', 'No_VIPCCK', 'No_VIPNVM','No_VIPPVM', 'No_VIPCRtoBC', 'No_VIPCRtoOLM' ]

for case in my_list:
    print "CASE:",case
    for ntrial in trials:
        theoretical_cells  = np.loadtxt('../'+fnames+learning+'/'+case+'/Trial_'+ntrial+'/Run_1/input_conv2.txt', delimiter=',')
        theoretical_fields = [int(x) for x in list(theoretical_cells[:,1])]
        theoretical_cells  = [int(x) for x in list(theoretical_cells[:,0])]
        print "TRIAL:",ntrial

        with open(file_load+'/pickled_sn_'+case+'_'+ntrial+'.pkl', 'rb') as f:
        rateMaps = loaded_data['maps']
        indices_cells = []
        for npyr in xrange(Npyramidals):
            if npyr in theoretical_cells:
                rate_map = rateMaps[npyr,:,:]
                fmean = np.mean(rate_map[xrew1:xrew2])
                fmax  = np.max(rate_map[xrew1:xrew2]) 
                sizetest1 = field_size(rate_map[xrew1:xrew2], relfreq=0.10*fmax)[0]

                if (fmean > 0.8) and (sizetest1>=4.0):
        np.savetxt('../'+fnames+learning+'/'+case+'/Trial_'+ntrial+'/cells_weights_up.txt',indices_cells, fmt='%u', delimiter=' ', newline='\n')

Loading data, please wait...