// // SumPulse(amp, count, delay, start, dc, dc_start, dc_end) // InjectChirp(amp, f0, bta, start, chirptype, duration, dc, dc_start, dc_end) // // current injection procedures // // objref idc[1], sp[1] proc SumPulse() {local n, amp, count, delay, start, dc, dc_t1, dc_t2 //SumPulse( amp, count, delay, start, dc, dc start, dc end) //e.g. Tines[786] {SumPulse( 3, 5, 10, 250, -3, 100, 400)} n = numarg() amp = \$1 // amplitude of sEPSP count = \$2 // number sEPSP if (count < 1) { return } delay = \$3 // delay between sEPSP start = \$4 // time to start sEPSP if(n > 5) { dc = \$5 // offset level dc_t1 = \$6 // start of holding current dc_t2 = \$7 // end holding current } else { dc = 0 } idc[0] = new IClamp(0.5) idc[0].amp = dc if (dc != 0) { idc[0].dur = dc_t2 - dc_t1 idc[0].del = dc_t1 } objref sp[count] for (i=0; i 7) { dc = \$7 // offset level dc_t1 = \$8 // start of holding current dc_t2 = \$9 // end holding current } else { dc = 0 } idc[0] = new IClamp(0.5) idc[0].amp = dc if (dc != 0) { idc[0].dur = dc_t2 - dc_t1 idc[0].del = dc_t1 } sp[0] = new chirp(0.5) // chirp waveform (defined in chirp.mod) sp[0].amp = amp sp[0].t1 = start sp[0].beta = beta sp[0].Finit = f0 sp[0].ctype = flag sp[0].dur = duration } // end InjectChirp()