// $Id: geom.hoc,v 1.30 1995/10/05 23:57:16 billl Exp $ //* RE Cell begintemplate RE public soma public nmda, ampa, gabaa, gabab, p, inhib, excit, inj public up external fgabaa,fgabab, fampa, fnmda, ftc, fre, finj, fgen, mkcode objectvar nmda, ampa, gabaa, gabab, p, inhib, excit, inj objref this,up create soma proc init() { col = $1 prenum = $2 num = $3 soma {diam = 10 L = 31.831} access soma // type, col, pre0, tier p = new PRESYN(0.5,mkcode(fre(),prenum,col,num)) gabaa = new GABAA(0.5,mkcode(fre(),fgabaa(),col,num)) ampa = new AMPA(0.5,mkcode(fre(),fampa(),col,num)) inhib = new POSTSYN(gabaa) excit = new POSTSYN(ampa) inj = new PULSE(0.5,mkcode(fre(),finj(),col,num),1) } endtemplate RE //* TC Cell begintemplate TC public soma public nmda, ampa, gabaa, gabab, p, inhib, excit public up external fgabaa,fgabab, fampa, fnmda, ftc, fre, fgen, mkcode objectvar nmda, ampa, gabaa, gabab, p, inhib, excit objref this,up create soma proc init() { col = $1 prenum = $2 num = $3 soma { diam = 10 L = 31.831 } // such that surface = 1000 um2 access soma // type, col, pre0, tier p = new PRESYN(0.5,mkcode(ftc(),prenum,col,num)) gabaa = new GABALOW(0.5,mkcode(ftc(),fgabaa(),col,num)) gabab = new GABAB1(0.5,mkcode(ftc(),fgabab(),col,num)) // type, col, pre0, tier inhib = new POSTSYN(gabaa,gabab) } endtemplate TC //* Defining Thalamic Column begintemplate COL public re, tc, repre, tcpre, numtc, numre, col, up public tcprelist, reprelist external fgabaa,fgabab, fampa, fnmda, ftc, fre, fgen objref this,up objref re[1] objref tc[1] proc init() { col = $1 numre = $2 numtc = $3 repre = $4 tcpre = repre + numre objectvar re[numre], tc[numtc] for i=0,numre-1 { re[i] = new RE(col,repre+i,i) } for i=0,numtc-1 { tc[i] = new TC(col,tcpre+i,i) } } proc tcprelist () { for i=0,numtc-1 { $o1.append(tc[i].p) } } proc reprelist () { for i=0,numre-1 { $o1.append(re[i].p) } } endtemplate COL