//establish fast and scaled PV-like kinetics for rectifying and non-rectifying parts of GABA synapses
for ii=1,totVgatAt  {
    synGABA[ii-1].tau1=  scale_factor0*GABAtau1/2
    synGABA[ii-1].tau2 =  scale_factor0*GABAtau2/2
    synGABA[ii-1].slope_factor=0.3
    synGABA[ii-1].V50=-150

    synGABArect[ii-1].tau1=  scale_factor1*GABAtau1
    synGABArect[ii-1].tau2 = scale_factor1*GABAtau2
    synGABArect[ii-1].slope_factor=slope_factor
    synGABArect[ii-1].V50=V50
}
GABAweight0=(GABAweight_total/5) /scale_factor0
GABAweight1=(4*GABAweight_total/5) /scale_factor1
reset_InhSyn()  
ActSyn_inh = set_InhSyn_syn_fixed(curInh_SLM, randShift_inh/4, nInhAct_SLM, shapeInh) 
print "In SLM, the number of activated inhibitory synapses at each pulse are: ",ActSyn_inh.x[0], ", " , ActSyn_inh.x[1], ", " , ActSyn_inh.x[2], ", " , ActSyn_inh.x[3], ", " , ActSyn_inh.x[4]

// Create graphs for visualisation.
objref voltFast_d1,voltFast_d2

voltFast_d1 = new Graph()
voltFast_d1.addvar("soma.sec.v(0.5)",2,1)
voltFast_d1.addvar("dend7Ref.sec.v(0.5)",3,1) 
voltFast_d1.addvar("dend2Ref.sec.v(0.5)",4,1) 
voltFast_d1.label("PV-like NL")
voltFast_d1.exec_menu("Keep Lines")
voltFast_d1.size(stimStart-20,tstop,-75,-5)

voltFast_d2 = new Graph()
voltFast_d2.addvar("soma.sec.v(0.5)",2,1)
voltFast_d2.addvar("dend7Ref.sec.v(0.5)",3,1) 
voltFast_d2.addvar("dend1Ref.sec.v(0.5)",4,1) 
voltFast_d2.label("PV-like NL")
voltFast_d2.exec_menu("Keep Lines")
voltFast_d2.size(stimStart-20,tstop,-75,-5)

curGr = graphList[0].append(voltFast_d1)
curGr = graphList[0].append(voltFast_d2)

for(jj=1; jj<simul_iter+1; jj=jj+1){
    print jj
	// Clear excitation and then turn on select synapses.
	activateExcitation(cellList,-1,1) // clear excitation
	curExc_SLM = activateExcitation(tuftList,jj*nExcAct_SLM,randShift_exc) // activate excitatory synapses
	
    shape_no=(jj/2)-1
    if (jj%2==1){shape_no=(jj-1)/2}
	
	ActSyn = set_gluSyn_fixed_N(curExc_SLM, randShift_exc/2, 0.1, norm_Pr_exc, shapeExc[shape_no])
	print "In SLM, the number of activated synapses at each pulse are: ",ActSyn.x[0], ", " , ActSyn.x[1], ", " , ActSyn.x[2], ", " , ActSyn.x[3], ", " , ActSyn.x[4]
	    
    init()
    run()
    
    storeM_fast.setcol(jj-1,recv_soma)
    storeM_fast.setcol(jj-1+simul_iter,recv_tuft1) 
    storeM_fast.setcol(jj-1+2*simul_iter,recv_tuft2) 
    storeM_fast.setcol(jj-1+3*simul_iter,recv_tuft3)
    storeM_fast.setcol(jj-1+4*simul_iter,recv_tuft4) 
    storeM_fast.setcol(jj-1+5*simul_iter,recv_tuft5) 
    storeM_fast.setcol(jj-1+6*simul_iter,recv_trunk) 
    storeM_fast.setcol(jj-1+7*simul_iter,recv_trunk2)
        
    reset_gluSyn()
}


graphList[0].remove_all()

// SAVE OUTPUT
//print2file(storeM_fast,file_name3,ColLabel)

//reset GABA synapses to nonlinear original
for ii=1,totVgatAt  {
    synGABA[ii-1].tau1=  GABAtau1/2
    synGABA[ii-1].tau2 =  GABAtau2/2
    synGABA[ii-1].slope_factor=0.3
    synGABA[ii-1].V50=-150

    synGABArect[ii-1].tau1=  GABAtau1
    synGABArect[ii-1].tau2 = GABAtau2
    synGABArect[ii-1].slope_factor=slope_factor
    synGABArect[ii-1].V50=V50
}
GABAweight0=(GABAweight_total/5)
GABAweight1=4*GABAweight_total/5 
reset_InhSyn()  
ActSyn_inh = set_InhSyn_syn_fixed(curInh_SLM, randShift_inh/4, nInhAct_SLM, shapeInh) 
print "In SLM, the number of activated inhibitory synapses at each pulse are: ",ActSyn_inh.x[0], ", " , ActSyn_inh.x[1], ", " , ActSyn_inh.x[2], ", " , ActSyn_inh.x[3], ", " , ActSyn_inh.x[4]