settings['CLASS_ACTIVATION_SPIKE_INJECTION_POP_LABEL'] = sys.argv[7]
if numArgumentsProvided >=8 :
    settings['NUM_OBSERVATIONS'] = int(sys.argv[8])
if numArgumentsProvided >=9 :
    settings['OBSERVATION_EXPOSURE_TIME_MS'] = int(sys.argv[9])
if numArgumentsProvided >=10 :
    settings['OUTPUT_DIR'] = sys.argv[10]    
if numArgumentsProvided >=11 :
    params['CLUSTER_SIZE'] = int(sys.argv[11])
if numArgumentsProvided >=12 :
    settings['STARTUP_WAIT_SECS'] = int(sys.argv[12])
    print 'updated STARTUP_WAIT_SECS  to ', settings['STARTUP_WAIT_SECS'] 

classifier.printParameters('Model Parameters',params)
classifier.printParameters('Classifier Settings',settings)
utils.writeObjectToFile(params,(settings['OUTPUT_DIR'] + '/Spynnaker-ModelParams.txt'))
utils.writeObjectToFile(settings,(settings['OUTPUT_DIR'] + '/Spynnaker-Settings.txt'))

populationsInput = list()
populationsNoiseSource = list()
populationsRN = list()
populationsPN = list()
populationsAN = list()
projectionsPNAN = list() #keep handle to these for saving learnt weights

totalSimulationTimeMs = settings['OBSERVATION_EXPOSURE_TIME_MS'] * settings['NUM_OBSERVATIONS']  + (1000 * settings['STARTUP_WAIT_SECS']) + 1000
print 'Total Simulation Time will be', totalSimulationTimeMs

startEverything = time.time()

DT = 1.0 #ms Integration timestep for simulation