function createRandTimeTables(path,name,nTables,meanFreq,duration) int i,nTables float meanFreq,duration str path str name if(!{exists {path}}) create neutral {path} end // Loop to setup time table objects for (i = 1;i<nTables+1;i=i+1) create timetable {path}/{name}[{i}] setfield {path}/{name}[{i}] maxtime {duration} act_val 1.0 method 1 meth_desc1 {meanFreq} call {path}/{name}[{i}] TABFILL // Note: Time Table can connect directly to synapse with // activation message, but not SPIKE message; Spike message // is handled differently by SYNCHAN, allowing creating of synapse with weights/delays create spikegen {path}/{name}[{i}]/spikes setfield {path}/{name}[{i}]/spikes \ output_amp 1 thresh 0.5 abs_refract 0.0001 addmsg {path}/{name}[{i}] {path}/{name}[{i}]/spikes \ INPUT activation end end // Connect time tables to synapses function countSynapses(synTypeSearchString, return_synpath,synindex) str synTypeSearchString str synpath int return_synpath int synindex int syncount = 0 str compt str searchstr foreach compt ({el {neuronname}/##/{synTypeSearchString}}) syncount = syncount+1 if (syncount == synindex) //echo {compt} {syncount} synpath = compt end end //echo {"syncount= "@{syncount}} if (return_synpath==1) return synpath else return syncount end end