# -*- coding: utf-8 -*-
"""
@author: chris
mpiexec -f ~/machinefile -enable-x -n 1 python Plots_Openloop_Paper_Results_syn.py -o fig5 --noplot 2>&1 | tee log/log5.txt
qsub -v J=Plots_Openloop_Paper_Results_syn.py,O=fig5 -pe ompigige 1 PBSinsigneo.sh
mpiexec -f ~/machinefile -enable-x -n 1 python Plots_Openloop_Paper_Results_syn.py -o fig6 --noplot 2>&1 | tee log/log6.txt
qsub -v J=Plots_Openloop_Paper_Results_syn.py,O=fig6 -pe ompigige 1 PBSinsigneo.sh
mpiexec -f ~/machinefile -enable-x -n 96 python Plots_Openloop_Paper_Results_syn.py -o fig7 --noplot 2>&1 | tee log/log7.txt
qsub -v J=Plots_Openloop_Paper_Results_syn.py,O=fig7 -pe ompigige 100 PBSinsigneo.sh
mpiexec -f ~/machinefile -enable-x -n 50 python Plots_Openloop_Paper_Results_syn.py -o fig8b --noplot 2>&1 | tee log/log8b.txt
qsub -v J=Plots_Openloop_Paper_Results_syn.py,O=fig8b -pe ompigige 50 PBSinsigneo.sh
mpiexec -f ~/machinefile -enable-x -n 50 python Plots_Openloop_Paper_Results_syn.py -o fig8a --noplot 2>&1 | tee log/log8a.txt
qsub -v J=Plots_Openloop_Paper_Results_syn.py,O=fig8a -pe ompigige 50 PBSinsigneo.sh
"""
from __future__ import with_statement
from __future__ import division
import sys
sys.path.append('NEURON/')
import os
from mpi4py import MPI
#print sys.version
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('-o', action='store', dest='opt')
parser.add_argument('--noplot', action='store_true')
parser.add_argument('--norun', action='store_true')
parser.add_argument('--noqual', action='store_true')
pars = parser.parse_args()
import matplotlib
if MPI.COMM_WORLD.rank == 0:
matplotlib.use('Tkagg', warn=True)
else:
matplotlib.use('Agg', warn=True)
do_plot = 1
if pars.noplot: # do not plot to windows
matplotlib.use('Agg', warn=True)
if MPI.COMM_WORLD.rank == 0: print "- No plotting"
do_plot = 0
do_run = 1
if pars.norun: # do not run again use pickled files!
print "- Not running, using saved files"
do_run = 0
use_mpi = True
import numpy as np
import matplotlib.pyplot as plt
#matplotlib.rc('font', **{'sans-serif' : 'Arial'}) #, 'family' : 'sans-serif'})
#matplotlib.rc('font', family='sans-serif')
#from matplotlib import rc
#rc('font',**{'family':'sans-serif','sans-serif':['Helvetica']})
#rc('text', usetex=True)
from matplotlib.font_manager import FontProperties
font0 = FontProperties()
from neuron import h
from units import *
from Population import *
from Stimulation import *
from Plotter import *
from Stimhelp import *
# PLOS: Fonts: 8 - 12, Multi-panel figures labels: 12
fig_size = [28*0.3937, 10*0.3937]
params = {'backend': 'ps',
'axes.labelsize': 8,
'axes.linewidth' : 0.5,
'title.fontsize': 8,
'text.fontsize': 10,
'font.size':10,
'axes.titlesize':8,
'legend.fontsize': 8,
'xtick.labelsize': 8,
'ytick.labelsize': 8,
'legend.borderpad': 0.2,
'legend.linewidth': 0.1,
'legend.loc': 'best',
'legend.ncol': 4,
'text.usetex': False,
'figure.figsize': fig_size}
rcParams.update(params)
o1 = (1,0.5,0)
o2 = (1,0.75,0.5)
ye1 = (1,1,0.2)
ye2 = (1,1,0.6)
g1 = (0.2,1,0)
g2 = (0.7,1,0.55)
b1 = (0.1,0.7,1)
b2 = (0.65,0.93,1)
p1 = (0.4,0.3,1)
p2 = (0.8,0.75,1)
r1 = (0.9,0.1,0.2)
r2 = (1,0.6,0.75)
b1 = '#1F78B4' #377EB8
b2 = '#A6CEE3'
g1 = '#33A02C' #4DAF4A
g2 = '#B2DF8A'
r1 = '#E31A1C' #E41A1C
r2 = '#FB9A99'
o1 = '#FF7F00' #FF7F00
o2 = '#FDBF6F'
p1 = '#6A3D9A' #984EA3
p2 = '#CAB2D6'
#b1 = '#1F78B4'
#b2 = '#45B4FF'
#g1 = '#33A02C'
#g2 = '#51FF45'
#r1 = '#E31A1C'
#r2 = '#FF4547'
#o1 = '#FF7f00'
#o2 = '#FFA245'
#p1 = '#6A3D9A'
#p2 = '#9F45FF'
#gray = 'gray'
ye1 = '#FFFF33'
br1 = '#A65628'
pi1 = '#F781BF'
gr1 = '#999999'
color0 = 'black' # BLACK
color1 = 'blue' # BLUE
color2 = 'red' # RED
color3 = 'gray' # GRAY
color4 = 'purple' # PURPLE
color5 = '#FF6600' # 'orange' # ORANGE
color6 = 'green' # GREEN
color7 = 'yellow' # YELLOW
color8 = 'brown' # brown
linewidth = 1
xmax = 130
dt = 0.025*ms
simstep = 1*s
delay_baseline = 8
plot_train = True
t_stim = 1000*s # only for cnoise
#t_stim = 180*s # only for cnoise
#t_stim = 20*s # only for cnoise
do_if = False
data_dir = "./publish/openloop/fulldata"
minimal_dir = "./publish/openloop/minimal"
export = False
data_dir = "./publish/openloop/minimal"
minimal_dir = False
# FIGURE 6
if pars.opt == "fig5":
t_stim = 1000*s
do_if = False
export = False
do_vec = np.array([
#"pop_transfer_none_synno_cn_a01_fig5_noisesynlow_color1_pos1_label_keep_", "pop_transfer_none_synno_cn_a05_fig5_noisesynlow_color2_pos1_label_keep_",
"pop_transfer_none_synno_cn_a1_fig5_noisesynlow_colorb1_pos1_label15_first_",
#"pop_transfer_none_synno_cn_a01_nsyn4_varih_N10_fig5_noisesynmed_color1_dashed_pos1_keep_", "pop_transfer_none_synno_cn_a05_nsyn4_varih_N10_fig5_noisesynmed_color2_dashed_pos1_keep_",
#"pop_transfer_none_synno_cn_a1_nsyn4_varih_N10_fig5_noisesynmed_color6_dashed_pos1_keep_",
#"pop_transfer_none_synno_cn_a01_nsyn4_varih_N10_fig5_noisesynpoiss_color1_dotted_pos1_keep_", "pop_transfer_none_synno_cn_a05_nsyn4_varih_N10_fig5_noisesynpoiss_color2_dotted_pos1_keep_",
"pop_transfer_none_synno_cn_a1_nsyn4_varih_N10_fig5_noisesynlow_colorg1_pos1_label16_", #"pop_transfer_none_synno_cn_a1_nsyn4_varih_N10_fig5_noisesynpoiss_colorg1_dotted_pos1_label17_",
#"pop_transfer_none_synno_cn_a10_nsyn4_varih_N5_fig5_noisesynlow_twopop_colorr1_pos1_label16b_keep_",
#"pop_transfer_none_synampagr_cn_a01_fig5_noisesynlow_color1_pos2_label_", "pop_transfer_none_synampagr_cn_a05_fig5_noisesynlow_color2_pos2_label_",
"pop_transfer_none_synampagr_cn_a1_fig5_noisesynlow_colorb1_pos2_label15_first_",
#"pop_transfer_none_synampagr_cn_a01_nsyn4_varih_N10_fig5_noisesynmed_color1_dashed_pos2_", "pop_transfer_none_synampagr_cn_a05_nsyn4_varih_N10_fig5_noisesynmed_color2_dashed_pos2_",
#"pop_transfer_none_synampagr_cn_a1_nsyn4_varih_N10_fig5_noisesynmed_color6_dashed_pos2_",
#"pop_transfer_none_synampagr_cn_a01_nsyn4_varih_N10_fig5_noisesynpoiss_color1_dotted_pos2_", "pop_transfer_none_synampagr_cn_a05_nsyn4_varih_N10_fig5_noisesynpoiss_color2_dotted_pos2_",
"pop_transfer_none_synampagr_cn_a1_nsyn4_varih_N10_fig5_noisesynlow_colorg1_pos2_label16_", #"pop_transfer_none_synampagr_cn_a1_nsyn4_varih_N10_fig5_noisesynpoiss_colorg1_dotted_pos2_label17_",
#"pop_transfer_none_synampagr_cn_a10_nsyn4_varih_N5_fig5_noisesynlow_twopop_colorr1_pos2_label16b_keep_",
#"pop_transfer_none_synnmdagr_cn_a01_fig5_noisesynlow_color1_pos3_label_", "pop_transfer_none_synnmdagr_cn_a05_fig5_noisesynlow_color2_pos3_label_",
"pop_transfer_none_synnmdagr_cn_a1_fig5_noisesynlow_colorb1_pos3_label15_first_",
#"pop_transfer_none_synnmdagr_cn_a01_nsyn4_varih_N10_fig5_noisesynmed_color1_dashed_pos3_", "pop_transfer_none_synnmdagr_cn_a05_nsyn4_varih_N10_fig5_noisesynmed_color2_dashed_pos3_",
#"pop_transfer_none_synnmdagr_cn_a1_nsyn4_varih_N10_fig5_noisesynmed_color6_dashed_pos3_",
#"pop_transfer_none_synnmdagr_cn_a01_nsyn4_varih_N10_fig5_noisesynpoiss_color1_dotted_pos3_", "pop_transfer_none_synnmdagr_cn_a05_nsyn4_varih_N10_fig5_noisesynpoiss_color2_dotted_pos3_",
"pop_transfer_none_synnmdagr_cn_a1_nsyn4_varih_N10_fig5_noisesynlow_colorg1_pos3_label16_", #"pop_transfer_none_synnmdagr_cn_a1_nsyn4_varih_N10_fig5_noisesynpoiss_colorg1_dotted_pos3_label17_",
#"pop_transfer_none_synnmdagr_cn_a10_nsyn4_varih_N5_fig5_noisesynlow_twopop_colorr1_pos3_label16b_keep_",
#"pop_transfer_none_syngabagr_cn_a01_fig5_end_noisesynlow_color1_pos4_label_end_", "pop_transfer_none_syngabagr_cn_a05_fig5_end_noisesynlow_color2_pos4_label_end_",
"pop_transfer_none_syngabagr_cn_a1_fig5_end_noisesynlow_colorb1_pos4_label15_end_first_",
#"pop_transfer_none_syngabagr_cn_a01_nsyn4_varih_N10_fig5_noisesynmed_color1_dashed_pos4_end_", "pop_transfer_none_syngabagr_cn_a05_nsyn4_varih_N10_fig5_noisesynmed_color2_dashed_pos4_end_",
#"pop_transfer_none_syngabagr_cn_a1_nsyn4_varih_N10_fig5_noisesynmed_color6_dashed_pos4_end_",
#"pop_transfer_none_syngabagr_cn_a01_nsyn4_varih_N10_fig5_noisesynpoiss_color1_dotted_pos4_end_", "pop_transfer_none_syngabagr_cn_a05_nsyn4_varih_N10_fig5_noisesynpoiss_color2_dotted_pos4_end_",
"pop_transfer_none_syngabagr_cn_a1_nsyn4_varih_N10_fig5_end_noisesynlow_colorg1_pos4_label16_", #"pop_transfer_none_syngabagr_cn_a1_nsyn4_varih_N10_fig5_noisesynpoiss_colorg1_dotted_pos4_label17_end_",
#"pop_transfer_none_syngabagr_cn_a10_nsyn4_varih_N5_fig5_end_noisesynlow_twopop_colorr1_pos4_label16b_end_keep_",
])
if pars.opt == "fig5a":
t_stim = 1000*s
do_if = False
do_vec = np.array([
#"pop_transfer_none_synno_cn_a1_fig5_noisesynlow_colorb1_pos1_label15_first_keep_",
#"pop_transfer_none_synno_cn_a1_nsyn4_varih_N10_fig5_noisesynlow_colorg1_pos1_label16_keep_",
#"pop_transfer_none_synampagr_cn_a1_fig5_noisesynlow_colorb1_pos2_label15_first_keep_",
#"pop_transfer_none_synampagr_cn_a1_nsyn4_varih_N10_fig5_noisesynlow_colorg1_pos2_label16_keep_",
"pop_transfer_none_synampagrstoch_cn_a1_nsyn4_varih_N10_fig5_noisesynlow_colorg2_pos2_label16_keep_",
#"pop_transfer_none_synnmdagr_cn_a1_fig5_noisesynlow_colorb1_pos3_label15_first_keep_",
#"pop_transfer_none_synnmdagr_cn_a1_nsyn4_varih_N10_fig5_noisesynlow_colorg1_pos3_label16_keep_",
"pop_transfer_none_synnmdagrstoch_cn_a1_nsyn4_varih_N10_fig5_noisesynlow_colorg2_pos3_label16_keep_",
#"pop_transfer_none_syngabagr_cn_a1_fig5_end_noisesynlow_colorb1_pos4_label15_end_first_keep_",
#"pop_transfer_none_syngabagr_cn_a1_nsyn4_varih_N10_fig5_end_noisesynlow_colorg1_pos4_label16_end_keep_",
"pop_transfer_none_syngabagrstoch_cn_a1_nsyn4_varih_N10_fig5_end_noisesynlow_colorg2_pos4_label16_end_",
])
if pars.opt == "fig5test":
t_stim = 1000*s
do_if = False
do_vec = np.array([
"pop_transfer_none_synno_cn_a1_fig5_noisesynlow_color1_pos1_label15_first_keep_",
"pop_transfer_none_synno_cn_a1_nsyn4_varih_N10_fig5_noisesynlow_color6_pos1_label16_keep_", "pop_transfer_none_synno_cn_a1_nsyn4_varih_N10_fig5_noisesynpoiss_color6_dotted_pos1_label17_keep_",
"pop_transfer_none_synampagr_cn_a1_fig5_noisesynlow_color1_pos2_label15_first_keep_",
"pop_transfer_none_synampagr_cn_a1_nsyn4_varih_N10_fig5_noisesynlow_color6_pos2_label16_keep_", "pop_transfer_none_synampagr_cn_a1_nsyn4_varih_N10_fig5_noisesynpoiss_color6_dotted_pos2_label17_keep_",
"pop_transfer_none_synampagrstoch_cn_a1_nsyn4_varih_N10_fig5_noisesynlow_color2_pos2_label16_", "pop_transfer_none_synampagrstoch_cn_a1_nsyn4_varih_N10_fig5_noisesynpoiss_color2_dotted_pos2_label17_",
"pop_transfer_none_synnmdagr_cn_a1_fig5_noisesynlow_color1_pos3_label15_first_keep_",
"pop_transfer_none_synnmdagr_cn_a1_nsyn4_varih_N10_fig5_noisesynlow_color6_pos3_label16_keep_", "pop_transfer_none_synnmdagr_cn_a1_nsyn4_varih_N10_fig5_noisesynpoiss_color6_dotted_pos3_label17_keep_",
"pop_transfer_none_synnmdagrstoch_cn_a1_nsyn4_varih_N10_fig5_noisesynlow_color2_pos3_label16_", "pop_transfer_none_synnmdagrstoch_cn_a1_nsyn4_varih_N10_fig5_noisesynpoiss_color2_dotted_pos3_label17_",
"pop_transfer_none_syngabagr_cn_a1_fig5_end_noisesynlow_color1_pos4_label15_end_first_keep_",
"pop_transfer_none_syngabagr_cn_a1_nsyn4_varih_N10_fig5_end_noisesynlow_color6_pos4_label16_end_keep_", "pop_transfer_none_syngabagr_cn_a1_nsyn4_varih_N10_fig5_noisesynpoiss_color6_dotted_pos4_label17_end_keep_",
])
if pars.opt == "fig5atalk":
t_stim = 1000*s
do_if = False
do_vec = np.array([
"pop_transfer_none_synno_cn_a05_fig5_noisesynlow_color1_pos1_label_talk_keep_end_", "pop_transfer_none_synno_cn_a1_fig5_noisesynlow_color2_pos1_label_talk_keep_end_",
"pop_transfer_none_synno_cn_a05_nsyn4_varih_N10_fig5_noisesynpoiss_color1_dotted_pos1_talk_keep_end_", "pop_transfer_none_synno_cn_a1_nsyn4_varih_N10_fig5_noisesynpoiss_color2_dotted_pos1_talk_keep_end_",
"pop_transfer_none_synampagr_cn_a05_fig5_noisesynlow_color1_pos2_label_talk_keep_end_", "pop_transfer_none_synampagr_cn_a1_fig5_noisesynlow_color2_pos2_label_talk_keep_end_",
"pop_transfer_none_synampagr_cn_a05_nsyn4_varih_N10_fig5_noisesynpoiss_color1_dotted_pos2_talk_keep_end_", "pop_transfer_none_synampagr_cn_a1_nsyn4_varih_N10_fig5_noisesynpoiss_color2_dotted_pos2_talk_keep_end_",
])
if pars.opt == "fig5btalk":
t_stim = 1000*s
do_if = False
do_vec = np.array([
"pop_transfer_none_synnmdagr_cn_a05_fig5_noisesynlow_color1_pos1_label_talk_keep_end_", "pop_transfer_none_synnmdagr_cn_a1_fig5_noisesynlow_color2_pos1_label_talk_keep_end_",
"pop_transfer_none_synnmdagr_cn_a05_nsyn4_varih_N10_fig5_noisesynpoiss_color1_dotted_pos1_talk_keep_end_", "pop_transfer_none_synnmdagr_cn_a1_nsyn4_varih_N10_fig5_noisesynpoiss_color2_dotted_pos1_talk_keep_end_",
"pop_transfer_none_syngabagr_cn_a05_fig5_end_noisesynlow_color1_pos2_label_talk_keep_end_", "pop_transfer_none_syngabagr_cn_a1_fig5_end_noisesynlow_color2_pos2_label_talk_keep_end_",
"pop_transfer_none_syngabagr_cn_a05_nsyn4_varih_N10_fig5_noisesynpoiss_color1_dotted_pos2_talk_keep_end_", "pop_transfer_none_syngabagr_cn_a1_nsyn4_varih_N10_fig5_noisesynpoiss_color2_dotted_pos2_talk_keep_end_",
])
# FIGURE 7
if pars.opt == "fig6":
t_stim = 1000*s
do_if = False
export = False
do_vec = np.array([
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_N10_CFo0_fig6_end_noisesynlow_colorb1_pos1_normalize_label11_first_", #"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_N10_CFo0_fig6_end_noisesynpoiss_color1_dotted_pos1_",
"pop_transfer_grc_syngr_cn_a1_nsyn4_noinh_varih_N10_CFo0.50_fig6_end_noisesynlow_colorg1_pos1_label12_", #"pop_transfer_grc_syngr_cn_a1_nsyn4_noinh_varih_N10_CFo0.50_fig6_end_noisesynpoiss_dotted_color6_pos1_png_",
#"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_N10_CFo0_fig6_end_noisesynlow_colorb2_pos1_normalize_label11_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_N10_CFo6_fig6_end_noisesynlow_inhlow_coloro1_label13_pos1_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_N10_CFo6_fig6_end_noisesynlow_inhpoiss_coloro1_dotted_pos1_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N10_CFo6_fig6_end_noisesynlow_inhlow_colorr1_pos1_label14_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N10_CFo6_fig6_end_noisesynlow_inhpoiss_dotted_colorr1_pos1_",
#"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N10_CFo6_fig6_end_noisesynlow_inhlow_colorr2_pos1_label14_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_N100_CFo0_fig6_end_noisesynlow_colorb1_pos1b_normalize_label11_first_", #"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_N100_CFo0_fig6_end_noisesynpoiss_color1_dotted_pos1_",
"pop_transfer_grc_syngr_cn_a1_nsyn4_noinh_varih_N100_CFo0.50_fig6_end_noisesynlow_colorg1_pos1b_label12_", #"pop_transfer_grc_syngr_cn_a1_nsyn4_noinh_varih_N100_CFo0.50_fig6_end_noisesynpoiss_dotted_color6_pos1_png_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_N100_CFo6_fig6_end_plotv20_noisesynlow_inhlow_coloro1_label13_pos1b_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_N100_CFo6_fig6_end_noisesynlow_inhpoiss_coloro1_dotted_pos1b_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N100_CFo6_fig6_end_noisesynlow_inhlow_colorr1_pos1b_label14_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N100_CFo6_fig6_end_noisesynlow_inhpoiss_dotted_colorr1_pos1b_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N100_gc10_CFo6_fig6_end_noisesynlow_inhlow_colorp1_pos1b_",
#"pop_CF-cutf_none_synno_cn_a1_varih_N10_noisesynlow_fig6_color0_end_label1_pos14_first_label18_",
#"pop_CF-cutf_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N10_noisesynlow_fig6_color2_end_label3_pos14_label19_",
#"pop_CF-cutf_none_synno_cn_a1_varih_N100_noisesynlow_inhlow_fig6_color3_end_label1_pos14_first_label20_keep_",
#"pop_CF-cutf_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N100_noisesynlow_inhlow_fig6_color2_end_label3_pos14_label21_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_lincomb_N10_CFo4_fig6_noisesynlow_color2_end_pos2_normalize_label9_first_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_lincomb_N10_CFo4_fig6_noisesynpoiss_dotted_color2_end_pos2_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_bothin_N10_CFo4_fig6_noisesynlow_color5_end_pos2_label5_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_bothin_N10_CFo4_fig6_noisesynpoiss_dotted_color5_end_pos2_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_inhin_N10_CFo4_fig6_noisesynlow_color1_end_normalize_pos2_label7_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_inhin_N10_CFo4_fig6_noisesynpoiss_dotted_color1_end_pos2_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_N10_CFo0_fig6_end_noisesynlow_color0_pos1_normalize_label1_first_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_N10_CFo0_fig6_end_noisesynmed_color0_dashed_pos1_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_N10_CFo0_fig6_end_noisesynpoiss_color0_dotted_pos1_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_N10_CFo4_fig6_plotv20_end_noisesynlow_color2_label1_pos1_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_N10_CFo4_fig6_end_noisesynmed_color2_dashed_pos1_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_N10_CFo4_fig6_end_noisesynpoiss_color2_dotted_pos1_",
#"pop_transfer_grc_syngr_cn_adjfinh_a01_nsyn4_varih_N10_CFo0_fig6_end_noisesynlow_color3_pos1_normalize_ddown25_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_CFo0_fig6_end_noisesynlow_color0_pos1", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_CFo0_fig6_end_noisesynpoiss_color0_dotted_pos1",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_CFo4_fig6_plotv20_end_noisesynlow_color2_pos1", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_CFo4_fig6_end_noisesynpoiss_color2_dotted_pos1",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_lowinh_CFo40_fig6_end_noisesynlow_color1_pos1", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_lowinh_CFo40_fig6_end_noisesynpoiss_color1_dotted_pos1",
#"pop_transfer_grc_syngr_cn_a1_nsyn4_noinh_varih_CFo0.6_fig6_end_noisesynlow_color6_pos1", "pop_transfer_grc_syngr_cn_a1_nsyn4_noinh_varih_CFo0.6_fig6_end_noisesynpoiss_color6_dotted_pos1",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_lowinh_N10_CFo40_fig6_end_noisesynlow_color1_pos3", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_lowinh_N10_CFo40_fig6_end_noisesynpoiss_color1_dotted_pos3"
])
if pars.opt == "fig6_background":
t_stim = 10*s
data_dir = "./data"
minimal_dir = False
export = False
do_if = False
do_vec = np.array([
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N100_CFo6_fig6_end_noisesynlow_inhlow_colorr1_pos1b_label14_",
])
if pars.opt == "fig6a":
t_stim = 1000*s
do_if = False
do_vec = np.array([
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_lowvarih_N10_CFo0_fig6_end_noisesynlow_colorb1_pos1_normalize_label11_first_keep_",
"pop_transfer_grc_syngr_cn_a1_nsyn4_noinh_lowvarih_N10_CFo0.50_fig6_end_noisesynlow_colorg1_pos1_label12_keep_",
"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_lowvarih_N10_CFo0_fig6_end_noisesynlow_colorb2_pos1_normalize_label11_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_lowvarih_N10_CFo6_fig6_end_noisesynlow_inhlow_coloro1_label13_pos1_keep_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_N10_CFo6_fig6_end_noisesynlow_inhpoiss_coloro1_dotted_pos1_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_N10_CFo6_fig6_end_noisesynlow_inhlow_colorr1_pos1_label14_keep_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N10_CFo6_fig6_end_noisesynlow_inhpoiss_dotted_colorr1_pos1_keep_",
"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_N10_CFo6_fig6_end_noisesynlow_inhlow_colorr2_pos1_label14_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_lowvarih_N100_CFo0_fig6_end_noisesynlow_colorb1_pos1b_normalize_label11_first_keep_",
"pop_transfer_grc_syngr_cn_a1_nsyn4_noinh_lowvarih_N100_CFo0.50_fig6_end_noisesynlow_colorg1_pos1b_label12_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_lowvarih_N100_CFo6_fig6_end_plotv20_noisesynlow_inhlow_coloro1_label13_pos1b_keep_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_N100_CFo6_fig6_end_noisesynlow_inhpoiss_coloro1_dotted_pos1b_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_N100_CFo6_fig6_end_noisesynlow_inhlow_colorr1_pos1b_label14_keep_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N100_CFo6_fig6_end_noisesynlow_inhpoiss_dotted_colorr1_pos1b_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_N100_gc10_CFo6_fig6_end_noisesynlow_inhlow_colorp1_pos1b_",
])
if pars.opt == "fig6_poster":
t_stim = 1000*s
do_if = False
do_vec = np.array([
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_N10_CFo0_fig6_end_noisesynlow_color1_pos1_normalize_label11_first_keep_",
"pop_transfer_grc_syngr_cn_a1_nsyn4_noinh_varih_N10_CFo0.50_fig6_end_noisesynlow_color6_pos1_label12_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_N10_CFo6_fig6_end_noisesynlow_inhlow_color5_label13_pos1_keep_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_N10_CFo6_fig6_end_noisesynlow_inhpoiss_color5_dotted_pos1_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N10_CFo6_fig6_end_noisesynlow_inhlow_color2_pos1_label14_keep_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N10_CFo6_fig6_end_noisesynlow_inhpoiss_dotted_color2_pos1_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_N100_CFo0_fig6_end_noisesynlow_color1_pos1b_normalize_label11_first_keep_",
"pop_transfer_grc_syngr_cn_a1_nsyn4_noinh_varih_N100_CFo0.50_fig6_end_noisesynlow_color6_pos1b_label12_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_N100_CFo6_fig6_end_plotv20_noisesynlow_inhlow_color5_label13_pos1b_keep_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_N100_CFo6_fig6_end_noisesynlow_inhpoiss_color5_dotted_pos1b_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N100_CFo6_fig6_end_noisesynlow_inhlow_color2_pos1b_label14_keep_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N100_CFo6_fig6_end_noisesynlow_inhpoiss_dotted_color2_pos1b_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N100_gc10_CFo6_fig6_end_noisesynlow_inhlow_color4_pos1b_keep_",
])
if pars.opt == "fig6b_poster":
t_stim = 500*s
#t_stim = 100*s
do_if = False
do_vec = np.array([
"pop_CF-cutf_none_synno_cn_a1_varih_N100_noisesynlow_inhlow_fig6_color3_end_label1_pos14_first_label20_keep_",
"pop_CF-cutf_none_synno_cn_a1_varih_N50_noisesynlow_inhlow_twopop_fig6_color1_end_label1_pos14_first_label20_keep_",
"pop_CF-cutf_none_synno_cn_a10_varih_N50_noisesynlow_inhlow_twopop_fig6_color6_end_label1_pos14_first_label20_keep_",
"pop_CF-cutf_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N100_noisesynlow_inhlow_fig6_color2_end_label3_pos14_label21_keep_",
"pop_CF-cutf_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_twopop_N50_noisesynlow_inhlow_fig6_color2_end_label3_pos14_label21_keep_",
#"pop_CF-cutf_grc_syngr_cn_adjfinh_a10_nsyn4_varih_varinhn_twopop_N50_noisesynlow_inhlow_fig6_color2_end_label3_pos14_label21_",
])
if pars.opt == "fig6test":
t_stim = 1000*s
do_if = False
do_vec = np.array([
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N100_mf10_CFo6_fig6_end_noisesynlow_inhlow_color0_pos1b_label14_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N100_gc10_CFo6_fig6_end_noisesynlow_inhlow_color1_pos1b_label14_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N100_mf10_gc10_CFo6_fig6_end_noisesynlow_inhlow_color2_pos1b_label14_keep_",
])
if pars.opt == "fig6talk":
t_stim = 1000*s
do_if = False
do_vec = np.array([
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_N10_CFo0_fig6_end_noisesynlow_color1_pos1_normalize_label11_first_talk_keep_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_N10_CFo0_fig6_end_noisesynpoiss_color1_dotted_pos1_talk_keep_",
"pop_transfer_grc_syngr_cn_a1_nsyn4_noinh_varih_N10_CFo0.64_fig6_end_noisesynlow_color6_pos1_label12_talk_keep_", "pop_transfer_grc_syngr_cn_a1_nsyn4_noinh_varih_N10_CFo0.64_fig6_end_noisesynpoiss_dotted_color6_pos1_talk_keep_png_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_N10_CFo4_fig6_end_plotv20_end_noisesynlow_color9_label13_pos1_talk_keep_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_N10_CFo4_fig6_end_noisesynpoiss_color9_dotted_pos1_talk_keep_png_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N10_CFo4_fig6_end_plotv20_end_noisesynlow_color2_pos1_label14_talk_keep_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N10_CFo4_fig6_end_noisesynpoiss_dotted_color2_pos1_talk_keep_png_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_CFo0_fig6_end_noisesynlow_color0_pos1", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_CFo0_fig6_end_noisesynpoiss_color0_dotted_pos1",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_CFo4_fig6_plotv20_end_noisesynlow_color2_pos1", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_CFo4_fig6_end_noisesynpoiss_color2_dotted_pos1",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_lowinh_CFo40_fig6_end_noisesynlow_color1_pos1", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_lowinh_CFo40_fig6_end_noisesynpoiss_color1_dotted_pos1",
#"pop_transfer_grc_syngr_cn_a1_nsyn4_noinh_varih_CFo0.6_fig6_end_noisesynlow_color6_pos1", "pop_transfer_grc_syngr_cn_a1_nsyn4_noinh_varih_CFo0.6_fig6_end_noisesynpoiss_color6_dotted_pos1",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_lowinh_N10_CFo40_fig6_end_noisesynlow_color1_pos3", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_lowinh_N10_CFo40_fig6_end_noisesynpoiss_color1_dotted_pos3"
])
if pars.opt == "fig6btalk":
t_stim = 1000*s
do_if = False
do_vec = np.array([
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_lincomb_N100_CFo6_fig6b_noisesynlow_inhlow_color2_end_pos1_normalize_label9_talk_keep_first_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_lincomb_N10_CFo4_fig6b_noisesynpoiss_dotted_color2_end_pos1_talk_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_bothin_N100_CFo6_fig6b_noisesynlow_inhlow_color9_end_pos1_label5_talk_keep_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_bothin_N10_CFo4_fig6b_noisesynpoiss_dotted_color9_end_pos1_talk_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_inhin_N100_CFo6_fig6b_noisesynlow_inhlow_color1_end_normalize_pos1_label7_talk_keep_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_inhin_N10_CFo4_fig6b_noisesynpoiss_dotted_color1_end_pos1_talk_keep_",
])
# FiGURE 8
if pars.opt == "fig7":
t_stim = 1000*s
do_if = False
export = False
do_vec = np.array([
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_bothin_N100_CFo6_fig7_noisesynlow_inhlow_coloro1_bottom_notransf_pos2_first_normalize_", # _label5 "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_bothin_N10_CFo4_fig6_noisesynpoiss_dotted_color5_end_pos2_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_bothin_lowinh_N100_CFo40_fig7_noisesynlow_inhlow_coloro1_bottom_notransf_pos2_dotted_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_bothin_cutf30_N100_CFo9_fig7_noisesynlow_inhlow_colorr1_pos2_keep_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_bothin_cutf5_N100_CFo14_fig7_end_noisesynlow_inhlow_colorbr1_pos2_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_inhin_N100_CFo6_fig7_noisesynlow_inhlow_colorb1_bottom_notransf_normalize_pos3_first_", # _label7 "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_inhin_N10_CFo4_fig6_noisesynpoiss_dotted_color1_end_pos2_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_inhin_lowinh_N100_CFo40_fig7_noisesynlow_inhlow_colorb1_bottom_notransf_pos3_dotted_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_lincomb_N100_CFo6_fig7_noisesynlow_inhlow_colorr1_left_notransf_pos1_normalize_first_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_lincomb2_N100_CFo6_fig7_noisesynlow_inhlow_colorr2_left_notransf_pos1_addplot_", # _label9 "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_lincomb_N10_CFo4_fig6_noisesynpoiss_dotted_color2_end_pos2_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_lincomb2c_N100_CFo6_fig7_noisesynlow_inhlow_colorr2_left_pos1_normalize_first_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_lincomb2_cutf30_N100_CFo9_fig7_noisesynlow_inhlow_colorr1_pos1_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_lincomb2_cutf5_N100_CFo14_fig7_end_noisesynlow_inhlow_colorbr1_pos1_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N10_CFo0_fig7_noisesynlow_color0_pos1_label1_normalize_first_keep_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N10_CFo0_fig7_noisesynpoiss_dotted_color0_pos1_keep_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N10_CFo0_fig7_noisesynmed_dashed_color0_pos1_keep_",
#"pop_transfer_grc_syngr_cn_a1_nsyn4_noinh_varih_N10_CFo0.64_fig7_noisesynlow_color6_pos1_label4_keep_", "pop_transfer_grc_syngr_cn_a1_nsyn4_noinh_varih_N10_CFo0.64_fig7_noisesynpoiss_dotted_color6_pos1_keep_", "pop_transfer_grc_syngr_cn_a1_nsyn4_noinh_varih_N10_CFo0.64_fig7_noisesynmed_dashed_color6_pos1_keep_",
#"pop_transfer_grc_syngr_cn_a1_nsyn3_noinh_varih_N10_CFo1_fig7_noisesynlow_color6_pos1_label4_", "pop_transfer_grc_syngr_cn_a1_nsyn3_noinh_varih_N10_CFo1_fig7_noisesynpoiss_dotted_color6_pos1_", "pop_transfer_grc_syngr_cn_a1_nsyn3_noinh_varih_N10_CFo1_fig7_noisesynmed_dashed_color6_pos1_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N10_CFo4_fig7_noisesynlow_color2_pos1_label2_keep_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N10_CFo4_fig7_noisesynpoiss_dotted_color2_pos1_keep_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N10_CFo4_fig7_noisesynmed_dashed_color2_pos1_keep_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_lowinh_N10_CFo40_fig7_noisesynlow_color1_pos1_label3_keep_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_lowinh_N10_CFo40_fig7_noisesynpoiss_dotted_color1_pos1_keep_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_lowinh_N10_CFo40_fig7_noisesynmed_dashed_color1_pos1_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_bothin_N10_CFo4_fig7_noisesynlow_color2_end_pos2_label5_keep_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_bothin_N10_CFo4_fig7_noisesynpoiss_dotted_color2_end_pos2_keep_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_bothin_N10_CFo4_fig7_noisesynmed_dashed_color2_end_pos2_keep_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_bothin_N10_lowinh_CFo40_fig7_noisesynlow_color1_end_pos2_label6_keep_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_bothin_N10_lowinh_CFo40_fig7_noisesynpoiss_dotted_color1_end_pos2_keep_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_bothin_N10_lowinh_CFo40_fig7_noisesynmed_dashed_color1_end_pos2_keep_",
#"pop_transfer_grc_syngrfastinh_cn_adjfinh_a1_nsyn4_varih_varinhn_bothin_N10_CFo40_gsinh0.00025_fig7_noisesynlow_color2_end_pos2_label6_keep_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_inhin_N10_CFo4_fig7_noisesynlow_color6_end_pos2_label7_keep_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_inhin_N10_CFo4_fig7_noisesynpoiss_dotted_color6_end_pos2_keep_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_inhin_N10_CFo4_fig7_noisesynmed_dashed_color6_end_pos2_keep_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_inhin_N10_lowinh_CFo40_fig7_noisesynlow_color5_end_pos2_label8_keep_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_inhin_N10_lowinh_CFo40_fig7_noisesynpoiss_dotted_color5_end_pos2_keep_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_inhin_N10_lowinh_CFo40_fig7_noisesynmed_dashed_color5_end_pos2_keep_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_lincomb_N10_CFo0_fig7_noisesynlow_color0_pos3_normalize_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_lincomb_N10_CFo0_fig7_noisesynpoiss_dotted_color0_pos3_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_lincomb_N10_CFo4_fig7_noisesynlow_color2_pos3_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_lincomb_N10_CFo4_fig7_noisesynpoiss_dotted_color2_pos3_",
])
if pars.opt == "fig7a":
t_stim = 1000*s
do_if = False
do_vec = np.array([
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_lincomb_N100_CFo6_fig7_noisesynlow_inhlow_colorr1_left_pos1_normalize_first_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_bothin_N100_CFo6_fig7_noisesynlow_inhlow_coloro1_left_pos2_first_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_bothin_lowinh_N100_CFo40_fig7_noisesynlow_inhlow_coloro1_left_pos2_dotted_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_inhin_N100_CFo6_fig7_noisesynlow_inhlow_colorb1_left_normalize_pos3_first_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_inhin_lowinh_N100_CFo40_fig7_noisesynlow_inhlow_colorb1_left_pos3_dotted_addplot_",
])
if pars.opt == "fig7_poster":
t_stim = 1000*s
do_if = False
do_vec = np.array([
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_lincomb_N100_CFo6_fig7_noisesynlow_inhlow_color2_left_pos1_normalize_first_keep_", # _label9 "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_lincomb_N10_CFo4_fig6_noisesynpoiss_dotted_color2_end_pos2_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_bothin_N100_CFo6_fig7_noisesynlow_inhlow_color5_left_pos2_first_keep_", # _label5 "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_bothin_N10_CFo4_fig6_noisesynpoiss_dotted_color5_end_pos2_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_bothin_lowinh_N100_CFo40_fig7_noisesynlow_inhlow_color5_left_pos2_dotted_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_inhin_N100_CFo6_fig7_noisesynlow_inhlow_color1_left_normalize_pos3_first_keep_", # _label7 "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_inhin_N10_CFo4_fig6_noisesynpoiss_dotted_color1_end_pos2_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_inhin_lowinh_N100_CFo40_fig7_noisesynlow_inhlow_color1_left_pos3_dotted_keep_addplot_",
])
if pars.opt == "fig7test":
t_stim = 100*s
do_if = False
do_vec = np.array([
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_inhin_N100_CFo4_fig7_noisesynlow_color6_end_pos2_label7_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_inhin_N100_CFo4_fig7_noisesynpoiss_dotted_color6_end_pos2_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_inhin_N100_CFo4_fig7_noisesynmed_dashed_color6_end_pos2_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_inhin_N100_lowinh_CFo40_fig7_noisesynlow_color5_end_pos2_label8_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_inhin_N100_lowinh_CFo40_fig7_noisesynpoiss_dotted_color5_end_pos2_", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_inhin_N100_lowinh_CFo40_fig7_noisesynmed_dashed_color5_end_pos2_",
])
## LOW CF:
# FIGURE 10
if pars.opt == "fig8a":
t_stim = 100*s
do_if = False
export = False
do_vec = np.array([
#"pop_CF-cutf_none_synno_cn_a10_varih_N50_noisesynlow_inhlow_twopop_fig8_colorp2_end_label1_pos14_first_label20_keep_",
#"pop_transfer_none_synno_cn_a1_varih_ih20_cutf30_N50_fig8_noisesynlow_twopop_coloro1_pos1_label23_first_plotre_normalize_keep_",
#"pop_transfer_none_synno_cn_a1_varih_ih20_cutf30_N100_fig8_noisesynlow_colorg1_pos1_label24n_plotre_plotpsth0_keep_",
#"pop_transfer_none_synno_cn_a10_varih_ih8_cutf30_N50_fig8_noisesynlow_twopop_coloro2_pos1b_label25_first_plotre_keep_",
#"pop_transfer_none_synno_cn_a10_varih_ih8_cutf30_N100_fig8_noisesynlow_colorg2_pos1b_label26n_plotre_plotpsth_keep_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N50_CFo9_fig8_noisesynlow_inhlow_twopop_colorb1_pos2_label23_first_plotre_normalize_keep_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N100_CFo9_fig8_noisesynlow_inhlow_colorr1_pos2_label24_plotre_plotpsth_keep_",
#"pop_transfer_grc_syngr_cn_adjfinh_a10_nsyn4_varih_varinhn_cutf30_N50_CFo13_fig8_noisesynlow_inhlow_twopop_colorb2_pos2b_label25_first_plotre_keep_",
#"pop_transfer_grc_syngr_cn_adjfinh_a10_nsyn4_varih_varinhn_cutf30_N100_CFo13_fig8_noisesynlow_inhlow_colorr2_pos2b_label26_plotre_plotpsth_keep_",
#"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N50_CFo9_fig8_noisesynlow_inhlow_twopop_colorb1_pos2_dotted_keep_",
#"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N100_CFo9_fig8_noisesynlow_inhlow_colorr1_pos2_dotted_keep_",
#"pop_transfer_if_syngr_cn_adjfinh_a10_nsyn4_varih_varinhn_cutf30_N50_CFo15_fig8_noisesynlow_inhlow_twopop_colorb2_pos2b_first_dotted_keep_",
#"pop_transfer_if_syngr_cn_adjfinh_a10_nsyn4_varih_varinhn_cutf30_N100_CFo15_fig8_noisesynlow_inhlow_colorr2_pos2b_dotted_keep_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N50_CFo14_fig8_end_noisesynlow_inhlow_twopop_colorb1_pos3_label27_first_plotre_normalize_keep_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N100_CFo14_fig8_end_noisesynlow_inhlow_colorr1_pos3_label28_plotre_keep_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf4_N50_CFo13_fig8_end_noisesynlow_inhlow_twopop_colorb2_pos3b_label29_first_plotre_keep_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf4_N100_CFo13_fig8_end_noisesynlow_inhlow_colorr2_pos3b_label30_plotre_keep_",
#"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N50_CFo14_fig8_end_noisesynlow_inhlow_twopop_colorb1_pos3_dotted_keep_",
#"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N100_CFo14_fig8_end_noisesynlow_inhlow_colorr1_pos3_dotted_keep_",
#"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf4_N50_CFo13_fig8_end_noisesynlow_inhlow_twopop_colorb2_pos3b_dotted_keep_",
#"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf4_N100_CFo13_fig8_end_noisesynlow_inhlow_colorr2_pos3b_dotted_keep_",
#"pop_transfer_grc_syngr_cn_adjfinh_a3_nsyn4_varih_varinhn_cutf30_N100_CFo9_fig8_noisesynlow_inhlow_coloro1_dotted_pos2_label0_plotre_",
#"pop_transfer_grc_syngr_cn_adjfinh_a3_nsyn4_varih_varinhn_cutf30_N50_CFo9_fig8_end_noisesynlow_inhlow_twopop_dotted_coloro2_pos2b_label0_plotre_",
#"pop_CF-cutf_grc_syngr_cn_adjinh_a1_nsyn4_varih_N50_noisesynlow_twopop_fig8_colorb2_end_label3_pos14_label21_keep_",
#"pop_CF-cutf_if_syngr_cn_adjinh_a1_nsyn4_varih_N50_noisesynlow_twopop_fig8_colorb2_dotted_star_end_label3_pos14_label21_keep_",
"pop_CF-cutf_none_synno_cn_a1_varih_N100_noisesynlow_inhlow_fig8_colorg1_end_label1_pos13_first_label18_",
"pop_CF-cutf_none_synno_cn_a1_varih_N50_noisesynlow_inhlow_twopop_fig8_coloro1_end_label1_pos13_label19_",
"pop_CF-cutf_none_synno_cn_a10_varih_N50_noisesynlow_inhlow_twopop_fig8_coloro2_end_label1_pos13_label20_",
"pop_CF-cutf_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N100_noisesynlow_inhlow_fig8_colorr1_end_label3_pos14_label21_first_",
"pop_CF-cutf_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N100_noisesynlow_inhlow_fig8_colorr1_dotted_star_end_label3_pos14_label23_",
#"pop_CF-cutf_grc_syngr_cn_adjinh_a1_nsyn4_varih_N100_noisesynlow_fig8_colorr2_end_label3_pos14_label25_keep_",
#"pop_CF-cutf_if_syngr_cn_adjinh_a1_nsyn4_varih_N100_noisesynlow_fig8_colorr2_dotted_star_end_label3_pos14_label26_keep_",
"pop_CF-cutf_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_twopop_N50_noisesynlow_inhlow_fig8_colorb1_end_label3_pos14_label22_",
"pop_CF-cutf_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_twopop_N50_noisesynlow_inhlow_fig8_colorb1_dotted_star_end_label3_pos14_label24_",
])
# FIGURE 9
if pars.opt == "fig8b":
t_stim = 1000*s
do_if = False
export = False
do_vec = np.array([
#"pop_transfer_grc_syngr_cn_adjfinh_a10_nsyn4_varih_varinhn_cutf4_N50_CFo15_cutf4_fig8_end_noisesynlow_inhlow_twopop_colorp2_pos3b_label29_first_plotre_",
#"pop_transfer_grc_syngr_cn_adjfinh_a10_nsyn4_varih_varinhn_cutf4_N100_CFo15_cutf4_fig8_end_noisesynlow_inhlow_colorp1_pos3b_label30_plotre_",
"pop_transfer_none_synno_cn_a1_varih_ih20_cutf30_N100_fig8_noisesynlow_colorg1_pos1_label24n_first_plotre_notransf_plotpsth0_normalize_",
"pop_transfer_none_synno_cn_a1_varih_ih20_cutf30_N50_fig8_noisesynlow_twopop_coloro1_pos1_label23_plotre_notransf_",
"pop_transfer_none_synno_cn_a10_varih_ih20_cutf30_N100_fig8_noisesynlow_colorg2_pos1b_label26n_plotre_plotpsth_notransf_",
"pop_transfer_none_synno_cn_a10_varih_ih20_cutf30_N50_fig8_noisesynlow_twopop_coloro2_pos1b_label25_first_plotre_notransf_",
# "pop_transfer_grc_syngr_cn_adjfinh_a05_nsyn4_varih_varinhn_cutf30_N100_CFo9_fig8_noisesynlow_inhlow_colorr1_pos2_label24_plotre_plotpsth_normalize_",
# "pop_transfer_grc_syngr_cn_adjfinh_a05_nsyn4_varih_varinhn_cutf30_N50_CFo9_fig8_noisesynlow_inhlow_twopop_colorb1_pos2_label23_first_plotre_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N100_CFo9_fig8_noisesynlow_inhlow_colorr1_pos2_label24_plotre_first_plotpsth_notransf_normalize_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N50_CFo9_fig8_noisesynlow_inhlow_twopop_colorb1_pos2_label23_plotre_notransf_",
"pop_transfer_grc_syngr_cn_adjfinh_a10_nsyn4_varih_varinhn_cutf30_N100_CFo9_is0.14_fig8_noisesynlow_inhlow_colorr2_pos2b_label26_plotre_plotpsth_notransf_",
"pop_transfer_grc_syngr_cn_adjfinh_a10_nsyn4_varih_varinhn_cutf30_N50_CFo9_is0.14_fig8_noisesynlow_inhlow_twopop_colorb2_pos2b_label25_first_plotre_notransf_",
#"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N50_CFo9_fig8_noisesynlow_inhlow_twopop_colorb1_pos2_dotted_",
#"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N100_CFo9_fig8_noisesynlow_inhlow_colorr1_pos2_dotted_",
#"pop_transfer_if_syngr_cn_adjfinh_a10_nsyn4_varih_varinhn_cutf30_N50_CFo9_is0.13_fig8_noisesynlow_inhlow_twopop_colorb2_pos2b_first_dotted_",
#"pop_transfer_if_syngr_cn_adjfinh_a10_nsyn4_varih_varinhn_cutf30_N100_CFo9_is0.13_fig8_noisesynlow_inhlow_colorr2_pos2b_dotted_",
"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N100_CFo9_is0.19_fig8_noisesynlow_inhlow_colorr1_pos2_dotted_notransf_", #0.2
"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N50_CFo9_is0.19_fig8_noisesynlow_inhlow_twopop_colorb1_pos2_dotted_notransf_", #0.2
"pop_transfer_if_syngr_cn_adjfinh_a10_nsyn4_varih_varinhn_cutf30_N100_CFo9_is0.40_fig8_noisesynlow_inhlow_colorr2_pos2b_dotted_notransf_", #0.41
"pop_transfer_if_syngr_cn_adjfinh_a10_nsyn4_varih_varinhn_cutf30_N50_CFo9_is0.40_fig8_noisesynlow_inhlow_twopop_colorb2_pos2b_first_dotted_notransf_", #0.41
#"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N100_CFo9_is0.20_fig8_noisesynlow_inhlow_colorr1_pos2_dotted_", #0.2
#"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N50_CFo9_is0.20_fig8_noisesynlow_inhlow_twopop_colorb1_pos2_dotted_", #0.2
#"pop_transfer_if_syngr_cn_adjfinh_a10_nsyn4_varih_varinhn_cutf30_N100_CFo9_is0.41_fig8_noisesynlow_inhlow_colorr2_pos2b_dotted_", #0.41
#"pop_transfer_if_syngr_cn_adjfinh_a10_nsyn4_varih_varinhn_cutf30_N50_CFo9_is0.41_fig8_noisesynlow_inhlow_twopop_colorb2_pos2b_first_dotted_", #0.41
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf5_N100_CFo14_fig8_end_noisesynlow_inhlow_colorbr1_pos3_label28_first_plotre_normalize_notransf_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf5_N50_CFo14_fig8_end_noisesynlow_inhlow_twopop_colorp1_pos3_label27_plotre_notransf_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N50_CFo14_is0.03_fig8_end_noisesynlow_inhlow_twopop_colorb2_pos3_label27_first_plotre_normalize_keep_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N100_CFo14_is0.03_fig8_end_noisesynlow_inhlow_colorr2_pos3_label28_plotre_keep_",
#"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf5_N50_CFo14_fig8_end_noisesynlow_inhlow_twopop_colorb1_pos3b_dotted_",
#"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf5_N100_CFo14_fig8_end_noisesynlow_inhlow_colorr1_pos3b_dotted_",
#"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N50_CFo14_is0.01_fig8_end_noisesynlow_inhlow_twopop_colorb2_pos3_dotted_",
#"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N100_CFo14_is0.01_fig8_end_noisesynlow_inhlow_colorr2_pos3_dotted_",
"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf5_N100_CFo14_is0.19_fig8_end_noisesynlow_inhlow_colorbr1_pos3_label30_dotted_notransf_", #0.2
"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf5_N50_CFo14_is0.19_fig8_end_noisesynlow_inhlow_twopop_colorp1_pos3_label29_dotted_notransf_", #0.2
#"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf5_N100_CFo14_is0.20_fig8_end_noisesynlow_inhlow_colorr2_pos3_dotted_", #0.2
#"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf5_N50_CFo14_is0.20_fig8_end_noisesynlow_inhlow_twopop_colorb2_pos3_dotted_", #0.2
#"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N100_CFo14_is0.22_fig8_end_noisesynlow_inhlow_colorr2_pos3_dotted_keep_",
#"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N50_CFo14_is0.22_fig8_end_noisesynlow_inhlow_twopop_colorb2_pos3_dotted_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf5_N200_CFo14_fig8_end_noisesynlow_inhlow_colorr1_pos3b_label32_plotre_first_keep_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf5_N100_CFo14_fig8_end_noisesynlow_inhlow_twopop_colorb1_pos3b_label31_plotre_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_highvarih_cutf30_N100_CFo0_fig8_end_noisesynlow_is0.56_colorr1_pos5_label33_notransf_",
"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_highvarih_cutf30_N100_CFo0_fig8_end_noisesynlow_is0.74_colorr1_pos5_label34_dotted_notransf_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_highervarih_cutf5_N100_CFo0_fig8_end_noisesynlow_is0.635_colorbr1_pos5_label35_notransf_",
"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_highervarih_cutf5_N100_CFo0_fig8_end_noisesynlow_is0.84_colorbr1_pos5_label36_dotted_notransf_",
])
if pars.opt == "fig8b_background":
t_stim = 10*s
data_dir = "./data"
minimal_dir = False
export = False
do_if = False
do_vec = np.array([
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N100_CFo9_fig8_noisesynlow_inhlow_colorr1_pos2_label24_plotre_first_plotpsth_notransf_normalize_",
#"pop_transfer_grc_syngr_cn_adjfinh_a10_nsyn4_varih_varinhn_cutf30_N100_CFo9_is0.14_fig8_noisesynlow_inhlow_colorr2_pos2b_label26_plotre_plotpsth_notransf_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf5_N100_CFo14_fig8_end_noisesynlow_inhlow_colorbr1_pos3_label28_first_plotre_normalize_notransf_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_highervarih_cutf5_N100_CFo0_fig8_end_noisesynlow_is0.635_colorbr1_pos5_label35_notransf_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_highvarih_cutf30_N100_CFo0_fig8_end_noisesynlow_is0.56_colorr1_pos5_label33_notransf_",
"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf5_N100_CFo14_is0.19_fig8_end_noisesynlow_inhlow_colorbr1_pos3_label30_dotted_notransf_",
#"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_highervarih_cutf5_N100_CFo0_fig8_end_noisesynlow_is0.84_colorbr1_pos5_label36_dotted_notransf_",
])
if pars.opt == "fig8b2":
t_stim = 100*s
do_if = False
do_vec = np.array([
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf60_N100_CFo6_fig8_noisesynlow_inhlow_colorr1_pos2_label24_plotre_plotpsth_normalize_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf60_N50_CFo6_fig8_noisesynlow_inhlow_twopop_colorb1_pos2_label23_first_plotre_",
"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf60_N100_CFo6_is0.19_fig8_noisesynlow_inhlow_colorr1_pos2_dotted_",
"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf60_N50_CFo6_is0.19_fig8_noisesynlow_inhlow_twopop_colorb1_pos2_dotted_",
])
if pars.opt == "fig8x":
t_stim = 1000*s
do_if = False
do_vec = np.array([
"pop_transfer_none_synno_cn_a1_varih_ih20_cutf30_N50_fig8_noisesynlow_twopop_coloro1_pos1_label23_first_plotre_keep_",
"pop_transfer_none_synno_cn_a1_varih_ih20_cutf30_N100_fig8_noisesynlow_colorg1_pos1_label24_plotre_plotpsth0_normalize_keep_",
"pop_transfer_none_synno_cn_a10_varih_ih8_cutf30_N50_fig8_noisesynlow_twopop_coloro2_pos1b_label25_first_plotre_keep_",
"pop_transfer_none_synno_cn_a10_varih_ih8_cutf30_N100_fig8_noisesynlow_colorg2_pos1b_label26_plotre_plotpsth_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_cutf30_N50_CFo9_fig8_noisesynlow_inhlow_twopop_colorb1_pos2_label23_first_plotre_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_cutf30_N100_CFo9_fig8_noisesynlow_inhlow_colorr1_pos2_label24_plotre_plotpsth_normalize_",
"pop_transfer_grc_syngr_cn_adjfinh_a10_nsyn4_lowvarih_lowvarinhn_cutf30_N50_CFo13_fig8_noisesynlow_inhlow_twopop_colorb2_pos2b_label25_first_plotre_",
"pop_transfer_grc_syngr_cn_adjfinh_a10_nsyn4_lowvarih_lowvarinhn_cutf30_N100_CFo13_fig8_noisesynlow_inhlow_colorr2_pos2b_label26_plotre_plotpsth_",
"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_cutf30_N50_CFo9_fig8_noisesynlow_inhlow_twopop_colorb1_pos2_dotted_",
"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_cutf30_N100_CFo9_fig8_noisesynlow_inhlow_colorr1_pos2_dotted_",
"pop_transfer_if_syngr_cn_adjfinh_a10_nsyn4_lowvarih_lowvarinhn_cutf30_N50_CFo15_fig8_noisesynlow_inhlow_twopop_colorb2_pos2b_first_dotted_",
"pop_transfer_if_syngr_cn_adjfinh_a10_nsyn4_lowvarih_lowvarinhn_cutf30_N100_CFo15_fig8_noisesynlow_inhlow_colorr2_pos2b_dotted_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_cutf30_N50_CFo14_fig8_end_noisesynlow_inhlow_twopop_colorb1_pos3_label27_first_plotre_normalize_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_cutf30_N100_CFo14_fig8_end_noisesynlow_inhlow_colorr1_pos3_label28_plotre_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_cutf4_N50_CFo13_cutf4_fig8_end_noisesynlow_inhlow_twopop_colorb2_pos3b_label29_first_plotre_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_cutf4_N100_CFo13_cutf4_fig8_end_noisesynlow_inhlow_colorr2_pos3b_label30_plotre_",
"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_cutf30_N50_CFo14_fig8_end_noisesynlow_inhlow_twopop_colorb1_pos3_dotted_",
"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_cutf30_N100_CFo14_fig8_end_noisesynlow_inhlow_colorr1_pos3_dotted_",
"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_cutf4_N50_CFo13_cutf4_fig8_end_noisesynlow_inhlow_twopop_colorb2_pos3b_dotted_",
"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_cutf4_N100_CFo13_cutf4_fig8_end_noisesynlow_inhlow_colorr2_pos3b_dotted_",
"pop_CF-cutf_none_synno_cn_a1_varih_N100_noisesynlow_inhlow_fig8_colorg1_end_label1_pos14_first_label18_",
"pop_CF-cutf_none_synno_cn_a1_varih_N50_noisesynlow_inhlow_twopop_fig8_coloro1_end_label1_pos14_label19_",
"pop_CF-cutf_none_synno_cn_a10_varih_N50_noisesynlow_inhlow_twopop_fig8_coloro2_end_label1_pos14_label20_",
"pop_CF-cutf_grc_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_N100_noisesynlow_inhlow_fig8_colorr1_end_label3_pos14_label21_",
"pop_CF-cutf_grc_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_twopop_N50_noisesynlow_inhlow_fig8_colorb1_end_label3_pos14_label22_",
"pop_CF-cutf_if_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_N100_noisesynlow_inhlow_fig8_colorr1_dotted_star_end_label3_pos14_label23_",
"pop_CF-cutf_if_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_twopop_N50_noisesynlow_inhlow_fig8_colorb1_dotted_star_end_label3_pos14_label24_",
])
if pars.opt == "fig8c":
t_stim = 10*s
do_if = False
do_vec = np.array([
#"pop_transfer_none_synno_cn_a1_varih_ih20_cutf30_N100_fig8_noisesynlow_coloro1_pos1_label24_first_plotre_plotpsth_normalize_keep_",
#"pop_transfer_none_synno_cn_a10_varih_ih8_cutf30_N100_fig8_noisesynlow_coloro2_pos1b_label26_plotre_plotpsth_keep_",
#"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N100_CFo9_fig8_noisesynlow_inhlow_colorr1_pos2_label24_plotre_plotpsth_normalize_keep_",
#"pop_transfer_grc_syngr_cn_adjfinh_a10_nsyn4_varih_varinhn_cutf30_N100_CFo13_fig8_noisesynlow_inhlow_colorr2_pos2b_label26_plotre_plotpsth_keep_",
"pop_CF-cutf_none_synno_cn_a1_varih_N100_noisesynlow_inhlow_fig8_coloro1_end_label1_pos14_first_label18_keep_",
"pop_CF-cutf_none_synno_cn_a1_varih_N50_noisesynlow_inhlow_twopop_fig8_colorg1_end_label1_pos14_label19_keep_",
"pop_CF-cutf_none_synno_cn_a10_varih_N50_noisesynlow_inhlow_twopop_fig8_colorg2_end_label1_pos14_label20_keep_",
"pop_CF-cutf_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N100_noisesynlow_inhlow_fig8_colorr1_end_label3_pos14_label21_keep_",
"pop_CF-cutf_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_twopop_N50_noisesynlow_inhlow_fig8_colorb1_end_label3_pos14_label22_keep_",
"pop_CF-cutf_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N100_noisesynlow_inhlow_fig8_colorr2_end_label3_pos14_label21_keep_",
"pop_CF-cutf_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_twopop_N50_noisesynlow_inhlow_fig8_colorb2_end_label3_pos14_label22_keep_",
])
if pars.opt == "fig8d":
t_stim = 1000*s
do_if = False
do_vec = np.array([
#"pop_CF-cutf_none_synno_cn_a10_varih_N50_noisesynlow_inhlow_twopop_fig8_colorp2_end_label1_pos14_first_label20_keep_",
"pop_transfer_none_synno_cn_a1_varih_ih20_cutf30_N50_fig8_noisesynlow_twopop_colorg1_pos1_label23_plotK_",
"pop_transfer_none_synno_cn_a1_varih_ih20_cutf30_N100_fig8_noisesynlow_coloro1_pos1_label24_first_plotK_normalize_keep_",
"pop_transfer_none_synno_cn_a10_varih_ih20_cutf30_N50_fig8_noisesynlow_twopop_colorg2_pos1_label25_first_plotK_",
"pop_transfer_none_synno_cn_a10_varih_ih20_cutf30_N100_fig8_noisesynlow_coloro2_pos1_label26_plotK_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N50_CFo9_fig8_noisesynlow_inhlow_twopop_colorb1_pos2_label23_first_plotK_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N100_CFo9_fig8_noisesynlow_inhlow_colorr1_pos2_label24_plotK_normalize_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a10_nsyn4_varih_varinhn_cutf30_N50_CFo13_fig8_noisesynlow_inhlow_twopop_colorb2_pos2_label25_first_plotK_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a10_nsyn4_varih_varinhn_cutf30_N100_CFo13_fig8_noisesynlow_inhlow_colorr2_pos2_label26_plotK_keep_",
"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N50_CFo9_fig8_noisesynlow_inhlow_twopop_colorb1_pos2_label23_first_plotK_dotted_keep_",
"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N100_CFo9_fig8_noisesynlow_inhlow_colorr1_pos2_label24_plotK_normalize_dotted_keep_",
"pop_transfer_if_syngr_cn_adjfinh_a10_nsyn4_varih_varinhn_cutf30_N50_CFo15_fig8_noisesynlow_inhlow_twopop_colorb2_pos2_label25_first_plotK_dotted_keep_",
"pop_transfer_if_syngr_cn_adjfinh_a10_nsyn4_varih_varinhn_cutf30_N100_CFo15_fig8_noisesynlow_inhlow_colorr2_pos2_label26_plotK_dotted_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N50_CFo14_fig8_end_noisesynlow_inhlow_twopop_colorb1_pos3_label27_first_plotK_normalize_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N100_CFo14_fig8_end_noisesynlow_inhlow_colorr1_pos3_label28_plotK_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf4_N50_CFo13_cutf4_fig8_end_noisesynlow_inhlow_twopop_colorb2_pos3_label29_first_plotK_keep_",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf4_N100_CFo13_cutf4_fig8_end_noisesynlow_inhlow_colorr2_pos3_label30_plotK_keep_",
"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N50_CFo14_fig8_end_noisesynlow_inhlow_twopop_colorb1_pos3_label27_first_plotK_normalize_dotted_keep_",
"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf30_N100_CFo14_fig8_end_noisesynlow_inhlow_colorr1_pos3_label28_plotK_dotted_keep_",
"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf4_N50_CFo13_cutf4_fig8_end_noisesynlow_inhlow_twopop_colorb2_pos3_label29_first_plotK_dotted_keep_",
"pop_transfer_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_cutf4_N100_CFo13_cutf4_fig8_end_noisesynlow_inhlow_colorr2_pos3_label30_plotK_dotted_keep_",
#"pop_transfer_grc_syngr_cn_adjfinh_a3_nsyn4_varih_varinhn_cutf30_N100_CFo9_fig8_noisesynlow_inhlow_coloro1_dotted_pos2_label0_plotre_",
#"pop_transfer_grc_syngr_cn_adjfinh_a3_nsyn4_varih_varinhn_cutf30_N50_CFo9_fig8_end_noisesynlow_inhlow_twopop_dotted_coloro2_pos2b_label0_plotre_",
"pop_CF-cutf_none_synno_cn_a1_varih_N100_noisesynlow_inhlow_fig8_coloro1_end_label1_pos14_first_label18_keep_",
"pop_CF-cutf_none_synno_cn_a1_varih_N50_noisesynlow_inhlow_twopop_fig8_colorg1_end_label1_pos14_label19_keep_",
"pop_CF-cutf_none_synno_cn_a10_varih_N50_noisesynlow_inhlow_twopop_fig8_colorg2_end_label1_pos14_label20_keep_",
"pop_CF-cutf_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N100_noisesynlow_inhlow_fig8_colorr1_end_label3_pos14_label21_keep_",
"pop_CF-cutf_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_twopop_N50_noisesynlow_inhlow_fig8_colorb1_end_label3_pos14_label22_keep_",
])
if pars.opt == "fig7b":
t_stim = 100*s
do_if = False
do_vec = np.array([
#"pop_transfer_none_synno_cn_a1_nsyn4_varih_N1000_ih1_fig7b_noisesynlow_color0_pos1", "pop_transfer_none_synno_cn_a1_nsyn4_varih_N1000_ih1_fig7b_noisesynpoiss_color0_dotted_pos1",
"pop_transfer_grc_syngr_cn_a1_nsyn4_noinh_varih_N1000_CFo0.31_fig7b_noisesynlow_color6", "pop_transfer_grc_syngr_cn_a1_nsyn4_noinh_varih_N1000_CFo0.30_fig7b_noisesynpoiss_color6_dotted",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_gsex1.15_N1000_CFo40_fig7b_noisesynlow_color2", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N1000_CFo40_fig7b_noisesynpoiss_color2_dotted",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_gsex1.15_samein_N1000_CFo40_fig7b_noisesynlow_color1", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_samein_N1000_CFo40_fig7b_noisesynpoiss_color1_dotted",
"pop_transfer_grc_syngr_cn_a1_nsyn4_noinh_varih_gsex1.15_lincomb3_N1000_CFo0.32_fig7b_noisesynlow_color3", "pop_transfer_grc_syngr_cn_a1_nsyn4_noinh_varih_lincomb3_N1000_CFo0.32_fig7b_noisesynpoiss_color3_dotted",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_gsex1.2_lincomb3_N1000_CFo40_fig7b_noisesynlow_color5", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_gsex1.1_lincomb3_N1000_CFo40_fig7b_noisesynpoiss_color5_dotted",
# GRC TONIC INHIBITION?
])
if pars.opt == "figX":
t_stim = 100*s
do_if = False
do_vec = np.array([
"pop_transfer_prk_synprk_cn_adjfinh_a1_nsyn100_varih_N1_CFo0_figX_end_noisesynlow_colorb1_pos1_normalize_label0_first_",
])
if pars.opt == "samein":
t_stim = 1000*s
do_if = False
do_vec = np.array(["pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_samein_N10_CFo4_fig7_noisesynlow_color2",
"pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_samein_N10_lowinh_CFo40_fig7_noisesynlow_color1",
])
if pars.opt == "none_4":
t_stim = 100*s
do_if = False
do_vec = np.array(["pop_transfer_none_synno_cn_a1_nsyn4_varih_N100_ih1_fig7b_noisesynlow_color0_pos1",
"pop_transfer_none_synno_cn_a1_nsyn4_varih_N100_ih1_fig7b_noisesynpoiss_color0_dotted_pos1",
#"pop_transfer_none_synno_cn_a1_nsyn4_N100_ih1_fig7b_noisesynlow_color3_pos1",
#"pop_transfer_none_synno_cn_a1_nsyn4_N100_ih1_fig7b_noisesynpoiss_color3_dotted_pos1",
])
if pars.opt == "noinh":
t_stim = 100*s
do_if = False
do_vec = np.array(["pop_transfer_grc_syngr_cn_a1_nsyn4_noinh_varih_N100_CFo0.31_fig7b_noisesynlow_color6", "pop_transfer_grc_syngr_cn_a1_nsyn4_noinh_varih_N100_CFo0.30_fig7b_noisesynpoiss_color6_dotted",
])
if pars.opt == "inh":
t_stim = 100*s
do_if = False
do_vec = np.array(["pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_gsex1.15_N100_CFo40_fig7b_noisesynlow_color2", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_N100_CFo40_fig7b_noisesynpoiss_color2_dotted",
])
if pars.opt == "inhsamein":
t_stim = 100*s
do_if = False
do_vec = np.array(["pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_gsex1.15_samein_N100_CFo40_fig7b_noisesynlow_color1", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_samein_N100_CFo40_fig7b_noisesynpoiss_color1_dotted",
])
if pars.opt == "inhsamein5":
t_stim = 100*s
do_if = False
do_vec = np.array(["pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_gsex1.15_samein5_N100_CFo40_fig7b_noisesynlow_color4", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_samein5_N100_CFo40_fig7b_noisesynpoiss_color4_dotted",
])
if pars.opt == "lincomb":
t_stim = 100*s
do_if = False
do_vec = np.array(["pop_transfer_grc_syngr_cn_a1_nsyn4_noinh_varih_gsex1.15_lincomb3_N100_CFo0.32_fig7b_noisesynlow_color3", "pop_transfer_grc_syngr_cn_a1_nsyn4_noinh_varih_lincomb3_N100_CFo0.32_fig7b_noisesynpoiss_color3_dotted",
])
if pars.opt == "inhlincomb":
t_stim = 100*s
do_if = False
do_vec = np.array(["pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_gsex1.2_lincomb3_N100_CFo40_fig7b_noisesynlow_color5", "pop_transfer_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_gsex1.1_lincomb3_N100_CFo40_fig7b_noisesynpoiss_color5_dotted",
])
temperature = 37
if MPI.COMM_WORLD.rank == 0:
if ("poster" in pars.opt) or ("talk" in pars.opt):
color1 = '#00A0E3' # Cyan
color2 = '#E5097F' # Magenta
color3 = '#808080' # Gray
color4 = '#78317B' # Lila
color5 = '#EC671F' # Orange
color6 = '#009A47' # Dark Green
color7 = '#FFED00' # Yellow
color8 = '#393476' # Uni Blue
color9 = '#E42A24' # Red
linewidth = 1.5
d_out = 10
d_down = 10
# FIGURE 6
if "fig5" in pars.opt:
if "talk" in pars.opt:
fig_size = [11.7*0.3937,7.4*0.3937]
params = {'backend': 'ps',
'axes.labelsize': 6,
'axes.linewidth' : 0.5,
'title.fontsize': 8,
'text.fontsize': 8,
'font.size':6,
'axes.titlesize':6,
'legend.fontsize': 6,
'xtick.labelsize': 6,
'ytick.labelsize': 6,
'legend.borderpad': 0.2,
'legend.linewidth': 0.1,
'legend.loc': 3,
'legend.ncol': 4,
'text.usetex': False,
'figure.figsize': fig_size}
rcParams.update(params)
linewidth = 1
d_out = 8
d_down = 3
fig1 = plt.figure('results_transfer_syn')
gs = matplotlib.gridspec.GridSpec(2, 3,
width_ratios=[1,1,1],
height_ratios=[1,1]
)
#gs.update(bottom=0.23, top=0.93, left=0.08, right=0.97, wspace=0.4, hspace=1.0)
gs.update(bottom=0.08, top=0.90, left=0.08, right=0.97, wspace=0.4, hspace=0.6)
ax1 = plt.subplot(gs[0,0])
ax2 = plt.subplot(gs[0,1])
ax3 = plt.subplot(gs[0,2])
ax4 = plt.subplot(gs[1,0])
ax5 = plt.subplot(gs[1,1])
ax6 = plt.subplot(gs[1,2])
font = font0.copy()
font.set_family('sans-serif')
font.set_weight('semibold')
# FIGURE 6
else:
fig_size = [85*0.03937,140*0.03937] # 1-Column
params['figure.figsize'] = fig_size
rcParams.update(params)
fig1 = plt.figure('results_transfer_syn')
gs = matplotlib.gridspec.GridSpec(4, 3,
width_ratios=[1,1,1],
height_ratios=[1,1,1,1]
)
#gs.update(bottom=0.23, top=0.93, left=0.08, right=0.97, wspace=0.4, hspace=1.0)
gs.update(bottom=0.07, top=0.91, left=0.095, right=0.97, wspace=0.5, hspace=1)
ax1 = plt.subplot(gs[0,0])
ax2 = plt.subplot(gs[0,1])
ax3 = plt.subplot(gs[0,2])
ax4 = plt.subplot(gs[1,0])
ax5 = plt.subplot(gs[1,1])
ax6 = plt.subplot(gs[1,2])
ax7 = plt.subplot(gs[2,0])
ax8 = plt.subplot(gs[2,1])
ax9 = plt.subplot(gs[2,2])
ax10 = plt.subplot(gs[3,0])
ax11 = plt.subplot(gs[3,1])
ax12 = plt.subplot(gs[3,2])
#gs2 = matplotlib.gridspec.GridSpec(1, 1,
# width_ratios=[1],
# height_ratios=[1]
# )
#gs2.update(bottom=0.07, top=0.15, left=0.10, right=0.97, wspace=0.4, hspace=0.4)
#ax13 = plt.subplot(gs2[0,0])
font = font0.copy()
font.set_family('sans-serif')
font.set_weight('semibold')
linewidth = 1.5
if ("poster" not in pars.opt) and ("talk" not in pars.opt):
x1 = -0.25
y1 = 1.3
ax1.text(x1, y1, 'A1', transform=ax1.transAxes, fontsize=12, va='top', fontproperties=font) # 'A$\mathbf{\mathsf{_1}}$'
ax2.text(x1, y1, 'A2', transform=ax2.transAxes, fontsize=12, va='top', fontproperties=font)
ax3.text(x1, y1, 'A3', transform=ax3.transAxes, fontsize=12, va='top', fontproperties=font)
ax4.text(x1, y1, 'B1', transform=ax4.transAxes, fontsize=12, va='top', fontproperties=font)
ax5.text(x1, y1, 'B2', transform=ax5.transAxes, fontsize=12, va='top', fontproperties=font)
ax6.text(x1, y1, 'B3', transform=ax6.transAxes, fontsize=12, va='top', fontproperties=font)
ax7.text(x1, y1, 'C1', transform=ax7.transAxes, fontsize=12, va='top', fontproperties=font)
ax8.text(x1, y1, 'C2', transform=ax8.transAxes, fontsize=12, va='top', fontproperties=font)
ax9.text(x1, y1, 'C3', transform=ax9.transAxes, fontsize=12, va='top', fontproperties=font)
ax10.text(x1, y1, 'D1', transform=ax10.transAxes, fontsize=12, va='top', fontproperties=font)
ax11.text(x1, y1, 'D2', transform=ax11.transAxes, fontsize=12, va='top', fontproperties=font)
ax12.text(x1, y1, 'D3', transform=ax12.transAxes, fontsize=12, va='top', fontproperties=font)
#ax13.text(x1, y1, 'B', transform=ax13.transAxes, fontsize=12, va='top', fontproperties=font)
# FIGURE 8
elif "fig7" in pars.opt:
if "poster" in pars.opt:
fig_size = [4.86,5] # 1.5-Column
params['figure.figsize'] = fig_size
rcParams.update(params)
fig1 = plt.figure('results_transfer_syn')
gs = matplotlib.gridspec.GridSpec(3, 3,
width_ratios=[1,1,1],
height_ratios=[1,1,1]
)
gs.update(bottom=0.07, top=0.72, left=0.09, right=0.97, wspace=0.4, hspace=0.4)
ax1 = plt.subplot(gs[0,0])
ax2 = plt.subplot(gs[1,0])
ax3 = plt.subplot(gs[2,0])
ax4 = plt.subplot(gs[0,1])
ax5 = plt.subplot(gs[1,1])
ax6 = plt.subplot(gs[2,1])
ax7 = plt.subplot(gs[0,2])
ax8 = plt.subplot(gs[1,2])
ax9 = plt.subplot(gs[2,2])
# FIGURE 8
else:
fig_size = [85*0.03937,90*0.03937] # 2-Column
params['figure.figsize'] = fig_size
rcParams.update(params)
fig1 = plt.figure('results_transfer_syn')
gs = matplotlib.gridspec.GridSpec(1, 3,
width_ratios=[1,1,1],
height_ratios=[1]
)
gs.update(bottom=0.095, top=0.56, left=0.125, right=0.97, wspace=0.2, hspace=0.4)
ax3 = plt.subplot(gs[0,0])
#ax2 = plt.subplot(gs[1,0])
#ax3 = plt.subplot(gs[2,0])
ax6 = plt.subplot(gs[0,1])
#ax5 = plt.subplot(gs[1,1])
#ax6 = plt.subplot(gs[2,1])
ax9 = plt.subplot(gs[0,2])
#ax8 = plt.subplot(gs[1,0])
#ax9 = plt.subplot(gs[2,0])
font = font0.copy()
font.set_family('sans-serif')
font.set_weight('semibold')
linewidth = 1.5
if ("poster" not in pars.opt) and ("talk" not in pars.opt):
x1 = -0.13
y1 = 1.1
#ax1.text(x1, y1, 'A', transform=ax1.transAxes, fontsize=12, va='top', fontproperties=font) # 'A$\mathbf{\mathsf{_1}}$'
#ax2.text(x1, y1, 'A2', transform=ax2.transAxes, fontsize=12, va='top', fontproperties=font)
ax3.text(x1, y1, 'A', transform=ax3.transAxes, fontsize=12, va='top', fontproperties=font)
#ax4.text(x1, y1, 'B', transform=ax4.transAxes, fontsize=12, va='top', fontproperties=font)
#ax5.text(x1, y1, 'B2', transform=ax5.transAxes, fontsize=12, va='top', fontproperties=font)
ax6.text(x1, y1, 'B', transform=ax6.transAxes, fontsize=12, va='top', fontproperties=font)
#ax7.text(x1, y1, 'C', transform=ax7.transAxes, fontsize=12, va='top', fontproperties=font)
#ax8.text(x1, y1, 'C2', transform=ax8.transAxes, fontsize=12, va='top', fontproperties=font)
ax9.text(x1, y1, 'C', transform=ax9.transAxes, fontsize=12, va='top', fontproperties=font)
# FIGURE 7
elif "fig6" in pars.opt:
if "talk" in pars.opt:
#fig_size = [4.86,5.4] # 1.5-Column 6.83
fig_size = [4.86,3] # 1.5-Column 6.83
params['figure.figsize'] = fig_size
rcParams.update(params)
fig_size = [11.7*0.3937,7.4*0.3937]
params = {'backend': 'ps',
'axes.labelsize': 6,
'axes.linewidth' : 0.5,
'title.fontsize': 8,
'text.fontsize': 8,
'font.size':6,
'axes.titlesize':6,
'legend.fontsize': 6,
'xtick.labelsize': 6,
'ytick.labelsize': 6,
'legend.borderpad': 0.2,
'legend.linewidth': 0.1,
'legend.loc': 3,
'legend.ncol': 4,
'text.usetex': False,
'figure.figsize': fig_size}
rcParams.update(params)
if "fig6b" in pars.opt:
linewidth = 1
d_out = 8
d_down = 3
fig1 = plt.figure('results_transfer_syn')
gs = matplotlib.gridspec.GridSpec(1, 3,
width_ratios=[1,1,1],
height_ratios=[1]
)
gs.update(bottom=0.11, top=0.65, left=0.08, right=0.97, wspace=0.4, hspace=0.5)
ax1 = plt.subplot(gs[0,0])
ax2 = plt.subplot(gs[0,1])
ax3 = plt.subplot(gs[0,2])
else:
linewidth = 1
d_out = 8
d_down = 3
fig1 = plt.figure('results_transfer_syn')
gs = matplotlib.gridspec.GridSpec(1, 3,
width_ratios=[1,1,1],
height_ratios=[1]
)
gs.update(bottom=0.39, top=0.92, left=0.08, right=0.97, wspace=0.4, hspace=0.5)
ax1 = plt.subplot(gs[0,0])
ax2 = plt.subplot(gs[0,1])
ax3 = plt.subplot(gs[0,2])
gs2 = matplotlib.gridspec.GridSpec(1, 1,
width_ratios=[1],
height_ratios=[1]
)
gs2.update(bottom=0.12, top=0.28, left=0.10, right=0.97, wspace=0.4, hspace=0.4)
ax13 = plt.subplot(gs2[0,0])
font = font0.copy()
font.set_family('sans-serif')
font.set_weight('semibold')
elif "fig6b" in pars.opt:
fig_size = [4.86,2.5] # 1.5-Column 6.83
params = {'backend': 'ps',
'axes.labelsize': 8,
'axes.linewidth' : 0.5,
'title.fontsize': 8,
'text.fontsize': 10,
'font.size':10,
'axes.titlesize':8,
'legend.fontsize': 6,
'xtick.labelsize': 8,
'ytick.labelsize': 8,
'legend.borderpad': 0.2,
'legend.linewidth': 0.1,
'legend.loc': 'best',
'legend.ncol': 4,
'text.usetex': False,
'figure.figsize': fig_size}
rcParams.update(params)
fig1 = plt.figure('results_transfer_syn')
gs = matplotlib.gridspec.GridSpec(1, 1,
width_ratios=[1],
height_ratios=[1]
)
gs.update(bottom=0.17, top=0.91, left=0.12, right=0.95, wspace=0.4, hspace=0.4)
ax14 = plt.subplot(gs[0,0])
font = font0.copy()
font.set_family('sans-serif')
font.set_weight('semibold')
elif "poster" in pars.opt:
fig_size = [4.86,4] # 1.5-Column 6.83
params = {'backend': 'ps',
'axes.labelsize': 8,
'axes.linewidth' : 0.5,
'title.fontsize': 8,
'text.fontsize': 10,
'font.size':10,
'axes.titlesize':8,
'legend.fontsize': 6,
'xtick.labelsize': 8,
'ytick.labelsize': 8,
'legend.borderpad': 0.2,
'legend.linewidth': 0.1,
'legend.loc': 'best',
'legend.ncol': 4,
'text.usetex': False,
'figure.figsize': fig_size}
rcParams.update(params)
fig1 = plt.figure('results_transfer_syn')
gs = matplotlib.gridspec.GridSpec(2, 3,
width_ratios=[1,1,1],
height_ratios=[1,1]
)
gs.update(bottom=0.30, top=0.95, left=0.1, right=0.97, wspace=0.4, hspace=0.4)
ax1 = plt.subplot(gs[0:2,0])
ax2 = plt.subplot(gs[0:2,1])
ax3 = plt.subplot(gs[0,2])
ax4 = plt.subplot(gs[1,2])
gs2 = matplotlib.gridspec.GridSpec(1, 1,
width_ratios=[1],
height_ratios=[1]
)
gs2.update(bottom=0.1, top=0.2, left=0.10, right=0.96, wspace=0.3, hspace=0.4)
ax13 = plt.subplot(gs2[0,0])
# FIGURE 7
else:
fig_size = [180*0.03937,100*0.03937] # 2-Column
params = {'backend': 'ps',
'axes.labelsize': 8,
'axes.linewidth' : 0.5,
'title.fontsize': 8,
'text.fontsize': 10,
'font.size':10,
'axes.titlesize':8,
'legend.fontsize': 8,
'xtick.labelsize': 8,
'ytick.labelsize': 8,
'legend.borderpad': 0.2,
'legend.linewidth': 0.1,
'legend.loc': 'best',
'legend.ncol': 4,
'text.usetex': False,
'figure.figsize': fig_size}
rcParams.update(params)
fig1 = plt.figure('results_transfer_syn')
gs = matplotlib.gridspec.GridSpec(2, 3,
width_ratios=[1,1,1],
height_ratios=[1,1]
)
gs.update(bottom=0.30, top=0.94, left=0.06, right=0.97, wspace=0.3, hspace=0.4)
ax1 = plt.subplot(gs[0:2,0])
ax2 = plt.subplot(gs[0:2,1])
ax3 = plt.subplot(gs[0,2])
ax4 = plt.subplot(gs[1,2])
gs2 = matplotlib.gridspec.GridSpec(1, 1,
width_ratios=[1],
height_ratios=[1]
)
gs2.update(bottom=0.1, top=0.2, left=0.08, right=0.98, wspace=0.3, hspace=0.4)
ax13 = plt.subplot(gs2[0,0])
#gs2 = matplotlib.gridspec.GridSpec(1, 2,
# width_ratios=[1,1],
# height_ratios=[1]
# )
#gs2.update(bottom=0.1, top=0.3, left=0.10, right=0.96, wspace=0.3, hspace=0.4)
#ax13 = plt.subplot(gs2[0,0])
#ax14 = plt.subplot(gs2[0,1])
#gs3 = matplotlib.gridspec.GridSpec(1, 3,
# width_ratios=[1,1,1],
# height_ratios=[1]
# )
#gs3.update(bottom=0.06, top=0.29, left=0.1, right=0.97, wspace=0.4, hspace=0.4)
#ax4 = plt.subplot(gs3[0,0])
#ax5 = plt.subplot(gs3[0,1])
##ax6 = plt.subplot(gs3[0,2])
font = font0.copy()
font.set_family('sans-serif')
font.set_weight('semibold')
linewidth = 1.5
if ("poster" not in pars.opt) and ("talk" not in pars.opt):
x1 = -0.05
y1 = 1.06
ax1.text(x1, y1, 'A1', transform=ax1.transAxes, fontsize=12, va='top', fontproperties=font) # 'A$\mathbf{\mathsf{_1}}$'
ax2.text(x1, y1, 'A2', transform=ax2.transAxes, fontsize=12, va='top', fontproperties=font)
ax3.text(x1, y1+0.09, 'A3', transform=ax3.transAxes, fontsize=12, va='top', fontproperties=font)
ax4.text(x1, y1+0.09, 'A4', transform=ax4.transAxes, fontsize=12, va='top', fontproperties=font)
ax13.text(-0.01, 1.3, 'B', transform=ax13.transAxes, fontsize=12, va='top', fontproperties=font)
#ax14.text(-0.01, 1.1, 'C', transform=ax14.transAxes, fontsize=12, va='top', fontproperties=font)
#ax4.text(x1, y1, 'D1', transform=ax4.transAxes, fontsize=12, va='top', fontproperties=font)
#ax5.text(x1, y1, 'D2', transform=ax5.transAxes, fontsize=12, va='top', fontproperties=font)
#ax6.text(x1, y1, 'D3', transform=ax6.transAxes, fontsize=12, va='top', fontproperties=font)
# FIGURE 10
elif "fig8a" in pars.opt:
fig_size = [180*0.03937,130*0.03937] # 2-Column
params = {'backend': 'ps',
'axes.labelsize': 8,
'axes.linewidth' : 0.5,
'title.fontsize': 8,
'text.fontsize': 10,
'font.size':10,
'axes.titlesize':8,
'legend.fontsize': 8,
'xtick.labelsize': 8,
'ytick.labelsize': 8,
'legend.borderpad': 0.2,
'legend.linewidth': 0.1,
'legend.loc': 'best',
'legend.ncol': 4,
'text.usetex': False,
'figure.figsize': fig_size}
rcParams.update(params)
fig1 = plt.figure('results_transfer_syn')
#gs4 = matplotlib.gridspec.GridSpec(1, 1,
# width_ratios=[1],
# height_ratios=[1]
# )
#gs4.update(bottom=0.13, top=0.97, left=0.10, right=0.96, wspace=0.3, hspace=0.2)
#ax13= plt.subplot(gs4[0,0])
gs4 = matplotlib.gridspec.GridSpec(2, 1,
width_ratios=[1],
height_ratios=[1,1]
)
gs4.update(bottom=0.10, top=0.96, left=0.10, right=0.97, wspace=0.2, hspace=0.12)
ax13= plt.subplot(gs4[0,0])
ax14= plt.subplot(gs4[1,0])
font = font0.copy()
font.set_family('sans-serif')
font.set_weight('semibold')
ax13.text(-0.01, 1.07, 'A', transform=ax13.transAxes, fontsize=12, va='top', fontproperties=font)
ax14.text(-0.01, 1.07, 'B', transform=ax14.transAxes, fontsize=12, va='top', fontproperties=font)
#if ("poster" not in pars.opt) and ("talk" not in pars.opt):
# x1 = -0.2
# y1 = 1.2
# ax13.text(x1, y1, 'A', transform=ax13.transAxes, fontsize=12, va='top', fontproperties=font)
linewidth = 1.5
# FIGURE 9
elif "fig8b" in pars.opt:
fig_size = [180*0.03937,110*0.03937] # 1-Column 6.83
params = {'backend': 'ps',
'axes.labelsize': 8,
'axes.linewidth' : 0.5,
'title.fontsize': 8,
'text.fontsize': 10,
'font.size':10,
'axes.titlesize':8,
'legend.fontsize': 8,
'xtick.labelsize': 8,
'ytick.labelsize': 8,
'legend.borderpad': 0.2,
'legend.linewidth': 0.1,
'legend.loc': 'best',
'legend.ncol': 4,
'text.usetex': False,
'figure.figsize': fig_size}
rcParams.update(params)
fig1 = plt.figure('results_transfer_syn')
gs1 = matplotlib.gridspec.GridSpec(2, 2,
width_ratios=[1,1],
height_ratios=[1,1]
)
gs1.update(bottom=0.71, top=0.94, left=0.07, right=0.65, wspace=0.3, hspace=0.1)
#ax1 = plt.subplot(gs1[0:2,0])
#ax2 = plt.subplot(gs1[0:2,1])
ax3 = plt.subplot(gs1[0:2,0])
ax4 = plt.subplot(gs1[0,1])
ax4b = plt.subplot(gs1[1,1])
gs2 = matplotlib.gridspec.GridSpec(2, 2,
width_ratios=[1,1],
height_ratios=[1,1]
)
gs2.update(bottom=0.4, top=0.64, left=0.07, right=0.65, wspace=0.3, hspace=0.1)
#ax5 = plt.subplot(gs2[0:2,0])
#ax6 = plt.subplot(gs2[0:2,1])
ax7 = plt.subplot(gs2[0:2,0])
ax8 = plt.subplot(gs2[0,1])
ax8b = plt.subplot(gs2[1,1])
gs3 = matplotlib.gridspec.GridSpec(2, 2,
width_ratios=[1,1],
height_ratios=[1,1]
)
gs3.update(bottom=0.09, top=0.33, left=0.07, right=0.65, wspace=0.3, hspace=0.1)
#ax9 = plt.subplot(gs3[0:2,0])
#ax10 = plt.subplot(gs3[0:2,1])
ax11 = plt.subplot(gs3[0:2,0])
ax12 = plt.subplot(gs3[0:2,1])
#ax12 = plt.subplot(gs3[0,3])
#ax12b = plt.subplot(gs3[1,3])
gs4 = matplotlib.gridspec.GridSpec(2, 1,
width_ratios=[1],
height_ratios=[1.7,0.3]
)
gs4.update(bottom=0.46, top=0.94, left=0.73, right=0.98, wspace=0.3, hspace=0.2)
ax14= plt.subplot(gs4[0,0])
ax14b= plt.subplot(gs4[1,0])
gs5 = matplotlib.gridspec.GridSpec(1, 1,
width_ratios=[1],
height_ratios=[1]
)
gs5.update(bottom=0.09, top=0.33, left=0.73, right=0.98, wspace=0.3, hspace=0.2)
ax15= plt.subplot(gs5[0,0])
font = font0.copy()
font.set_family('sans-serif')
font.set_weight('semibold')
if ("poster" not in pars.opt) and ("talk" not in pars.opt):
x1 = -0.09
y1 = 1.17
#ax1.text(x1, y1, 'A1', transform=ax1.transAxes, fontsize=12, va='top', fontproperties=font) # 'A$\mathbf{\mathsf{_1}}$'
#ax2.text(x1, y1, 'A2', transform=ax2.transAxes, fontsize=12, va='top', fontproperties=font)
ax3.text(x1, y1, 'A1', transform=ax3.transAxes, fontsize=12, va='top', fontproperties=font)
ax4.text(x1, y1+0.21, 'A2', transform=ax4.transAxes, fontsize=12, va='top', fontproperties=font)
#ax5.text(x1, y1, 'B1', transform=ax5.transAxes, fontsize=12, va='top', fontproperties=font) # 'A$\mathbf{\mathsf{_1}}$'
#ax6.text(x1, y1, 'B2', transform=ax6.transAxes, fontsize=12, va='top', fontproperties=font)
ax7.text(x1, y1, 'B1', transform=ax7.transAxes, fontsize=12, va='top', fontproperties=font)
ax8.text(x1, y1+0.21, 'B2', transform=ax8.transAxes, fontsize=12, va='top', fontproperties=font)
#ax9.text(x1, y1, 'C1', transform=ax9.transAxes, fontsize=12, va='top', fontproperties=font) # 'A$\mathbf{\mathsf{_1}}$'
#ax10.text(x1, y1, 'C2', transform=ax10.transAxes, fontsize=12, va='top', fontproperties=font)
ax11.text(x1, y1, "C1", transform=ax11.transAxes, fontsize=12, va='top', fontproperties=font)
ax12.text(x1, y1, "C2", transform=ax12.transAxes, fontsize=12, va='top', fontproperties=font) # +0.21
ax14.text(-0.09, 1.10, 'D', transform=ax14.transAxes, fontsize=12, va='top', fontproperties=font)
ax15.text(-0.09, 1.16, 'E', transform=ax15.transAxes, fontsize=12, va='top', fontproperties=font)
linewidth = 1.5
elif "fig8" in pars.opt:
fig_size = [4.86,6.83] # 1.5-Column 6.83
params = {'backend': 'ps',
'axes.labelsize': 8,
'axes.linewidth' : 0.5,
'title.fontsize': 8,
'text.fontsize': 10,
'font.size':10,
'axes.titlesize':8,
'legend.fontsize': 8,
'xtick.labelsize': 8,
'ytick.labelsize': 8,
'legend.borderpad': 0.2,
'legend.linewidth': 0.1,
'legend.loc': 'best',
'legend.ncol': 4,
'text.usetex': False,
'figure.figsize': fig_size}
rcParams.update(params)
fig1 = plt.figure('results_transfer_syn')
gs1 = matplotlib.gridspec.GridSpec(2, 4,
width_ratios=[1,1,1,1],
height_ratios=[1,1]
)
gs1.update(bottom=0.83, top=0.96, left=0.1, right=0.97, wspace=0.5, hspace=0.1)
ax1 = plt.subplot(gs1[0:2,0])
ax2 = plt.subplot(gs1[0:2,1])
ax3 = plt.subplot(gs1[0:2,2])
ax4 = plt.subplot(gs1[0,3])
ax4b = plt.subplot(gs1[1,3])
gs2 = matplotlib.gridspec.GridSpec(2, 4,
width_ratios=[1,1,1,1],
height_ratios=[1,1]
)
gs2.update(bottom=0.66, top=0.79, left=0.1, right=0.97, wspace=0.5, hspace=0.1)
ax5 = plt.subplot(gs2[0:2,0])
ax6 = plt.subplot(gs2[0:2,1])
ax7 = plt.subplot(gs2[0:2,2])
ax8 = plt.subplot(gs2[0,3])
ax8b = plt.subplot(gs2[1,3])
gs3 = matplotlib.gridspec.GridSpec(2, 4,
width_ratios=[1,1,1,1],
height_ratios=[1,1]
)
gs3.update(bottom=0.49, top=0.62, left=0.1, right=0.97, wspace=0.5, hspace=0.1)
ax9 = plt.subplot(gs3[0:2,0])
ax10 = plt.subplot(gs3[0:2,1])
ax11 = plt.subplot(gs3[0:2,2])
ax12 = plt.subplot(gs3[0:2,3])
#ax12 = plt.subplot(gs3[0,3])
#ax12b = plt.subplot(gs3[1,3])
gs4 = matplotlib.gridspec.GridSpec(2, 2,
width_ratios=[0.5,1],
height_ratios=[1,0.5]
)
gs4.update(bottom=0.07, top=0.41, left=0.10, right=0.96, wspace=0.3, hspace=0.2)
ax13= plt.subplot(gs4[0:2,1])
ax14= plt.subplot(gs4[0,0])
ax14b= plt.subplot(gs4[1,0])
font = font0.copy()
font.set_family('sans-serif')
font.set_weight('semibold')
if ("poster" not in pars.opt) and ("talk" not in pars.opt):
x1 = -0.2
y1 = 1.2
ax1.text(x1, y1, 'A1', transform=ax1.transAxes, fontsize=12, va='top', fontproperties=font) # 'A$\mathbf{\mathsf{_1}}$'
ax2.text(x1, y1, 'A2', transform=ax2.transAxes, fontsize=12, va='top', fontproperties=font)
ax3.text(x1, y1, 'A3', transform=ax3.transAxes, fontsize=12, va='top', fontproperties=font)
ax4.text(x1, y1+0.25, 'A4', transform=ax4.transAxes, fontsize=12, va='top', fontproperties=font)
ax5.text(x1, y1, 'B1', transform=ax5.transAxes, fontsize=12, va='top', fontproperties=font) # 'A$\mathbf{\mathsf{_1}}$'
ax6.text(x1, y1, 'B2', transform=ax6.transAxes, fontsize=12, va='top', fontproperties=font)
ax7.text(x1, y1, 'B3', transform=ax7.transAxes, fontsize=12, va='top', fontproperties=font)
ax8.text(x1, y1+0.25, 'B4', transform=ax8.transAxes, fontsize=12, va='top', fontproperties=font)
ax9.text(x1, y1, 'C1', transform=ax9.transAxes, fontsize=12, va='top', fontproperties=font) # 'A$\mathbf{\mathsf{_1}}$'
ax10.text(x1, y1, 'C2', transform=ax10.transAxes, fontsize=12, va='top', fontproperties=font)
ax11.text(x1, y1, 'C3', transform=ax11.transAxes, fontsize=12, va='top', fontproperties=font)
ax12.text(x1, y1+0.25, 'C4', transform=ax12.transAxes, fontsize=12, va='top', fontproperties=font)
ax13.text(-0.03, 1.06, 'E', transform=ax13.transAxes, fontsize=12, va='top', fontproperties=font)
ax14.text(-0.04, 1.06, 'D', transform=ax14.transAxes, fontsize=12, va='top', fontproperties=font)
else:
fig_size = [6.83, 6.83] # 2-Column
params['figure.figsize'] = fig_size
rcParams.update(params)
fig1 = plt.figure('results_transfer_syn')
gs = matplotlib.gridspec.GridSpec(4, 4,
width_ratios=[1,1,1,1],
height_ratios=[1,1,1,1]
)
gs.update(bottom=0.1, top=0.93, left=0.1, right=0.95, wspace=0.6, hspace=0.6)
if "_psd" in do_vec[0]:
ax1 = plt.subplot(gs[0,0:2])
ax3 = plt.subplot(gs[0,2:4])
ax5 = plt.subplot(gs[1,0:2])
ax7 = plt.subplot(gs[1,2:4])
ax9 = plt.subplot(gs[2,0:2])
ax11 = plt.subplot(gs[2,2:4])
ax13 = plt.subplot(gs[3,0:2])
ax15 = plt.subplot(gs[3,2:4])
else:
ax1 = plt.subplot(gs[0,0])
ax2 = plt.subplot(gs[0,1])
ax3 = plt.subplot(gs[0,2])
ax4 = plt.subplot(gs[0,3])
ax5 = plt.subplot(gs[1,0])
ax6 = plt.subplot(gs[1,1])
ax7 = plt.subplot(gs[1,2])
ax8 = plt.subplot(gs[1,3])
ax9 = plt.subplot(gs[2,0])
ax10 = plt.subplot(gs[2,1])
ax11 = plt.subplot(gs[2,2])
ax12 = plt.subplot(gs[2,3])
ax13 = plt.subplot(gs[3,0])
ax14 = plt.subplot(gs[3,1])
ax15 = plt.subplot(gs[3,2])
ax16 = plt.subplot(gs[3,3])
ax1.text(0.5, 1.5, r'best fit IF ($\mathrm{\mathsf{\tau}}$ = 27 ms)', transform=ax1.transAxes, fontsize=10, va='top')
ax3.text(0.5, 1.5, 'GrC model', transform=ax3.transAxes, fontsize=10, va='top')
if "fig7a" in pars.opt:
fig_size = [11.7*0.3937,7.4*0.3937]
params = {'backend': 'ps',
'axes.labelsize': 6,
'axes.linewidth' : 0.5,
'title.fontsize': 8,
'text.fontsize': 8,
'font.size':6,
'axes.titlesize':6,
'legend.fontsize': 6,
'xtick.labelsize': 6,
'ytick.labelsize': 6,
'legend.borderpad': 0.2,
'legend.linewidth': 0.1,
'legend.loc': 3,
'legend.ncol': 4,
'text.usetex': False,
'figure.figsize': fig_size}
rcParams.update(params)
linewidth = 1
plt.figure('results_CF-N')
gs = matplotlib.gridspec.GridSpec(1, 1,
width_ratios=[1],
height_ratios=[1]
)
ax_CF_N = plt.subplot(gs[0,0])
gs.update(bottom=0.15, top=0.93, left=0.15, right=0.95, wspace=0.6, hspace=0.6)
color_v = []
normalize = 1
prev_pos = 0
for d, do in enumerate(do_vec):
prefix = ""
if "_fig" in do:
fig_num = str(do).split("_fig")[1].split("_")[0]
prefix = prefix + "Fig" + str(fig_num) + "_"
if "_pos" in do:
pos = int(str(do).split("_pos")[1].split("_")[0][0])
#print pos
if prev_pos is not pos:
color_v = []
prev_pos = pos
if "pop_" in do:
prefix = prefix + "pop"
ih = 40
amod = [0.1]
noise_syn_tau = [0*ms]
noise_syn_tau_inh = [0*ms]
N = [1]
t_qual = 0
bypass_cell = False
method_interpol = np.array(['bin'])
amp = 0 # absolute value
fluct_g_e0 = [0]
fluct_g_i0 = [0]
fluct_std_e = [0]
fluct_std_i = [0]
fluct_std_e = [0]
fluct_std_i = [0]
fluct_tau_e = 0
fluct_tau_i = 0
ihold_sigma = [0*nA] # absolute value
dt = 0.025*ms
bin_width = dt
jitter = 0*ms
N = [1]
Target_fit2 = []
# CFo
#color_vec = (np.array([color1, color6, color2, color9, color7, color8]), np.array([color1, color6, color2, color9, color7, color8]))
#CFo_vec = array([20, 30, 40, 50, 60, 80])
if "_transfer" in do:
prefix = prefix + "_transfer"
elif "_CF-N" in do:
prefix = prefix + "_CF-N"
elif "_CF-cutf" in do:
prefix = prefix + "_CF-cutf"
if "_if_" in do:
prefix = prefix + "_if"
thresh = -41.8
R = 5227*MOhm
#tau_passive = 3e-06*5227 = 15.7ms
cellimport = []
celltype = ["IfCell"]
cell_exe = ["cell = IfCell(C = 3e-06*uF, R = " + str(R) + ", e = -71.5*mV, thresh =" + str(thresh) + ", vrefrac = -71.5*mV)"]
color = color2
#if MPI.COMM_WORLD.rank == 0:
# ax01 = ax1
# if "_psd" not in do: ax02 = ax2
istart = 0.002
istop = 0.003
di = 0.000001
color_vec = (np.array([color0, color1, color2, color3, color4, color5, color6]), np.array([color0, color1, color2, color3, color4, color5, color6]))
CFo_vec = array([-2, 20, 30, 40, 50, 60])
plot_train = False
if "_resif_" in do:
prefix = prefix + "_resif"
thresh = -21.175*mV
gr = 6.044e-05*uS
tau_r = 0.0185
R = 8860*MOhm
#tau_passive = 3e-06*8860 = 26.6ms
#thresh: -21.1752 gr: 6.04400329156e-05 tau_r: 0.0185045932005 R: 8860
cellimport = []
celltype = "IfCell"
cell_exe = "cell = IfCell(C = 3e-06*uF, R = " + str(R) + ", e = -71.5*mV, thresh =" + str(thresh) + ", vrefrac = -60*mV, dgk =" + str(gr) + ", egk = -71.5*mV, ctau =" + str(tau_r) + ")"
color = color2
istart = 0.002
istop = 0.003
di = 0.000001
color_vec = (np.array([color0, color1, color2, color3, color4, color5, color6]), np.array([color0, color1, color2, color3, color4, color5, color6]))
CFo_vec = array([-2, 20, 30, 40, 50, 60])
if "_grc" in do:
prefix = prefix + "_grc"
cellimport = ["from GRANULE_Cell import Grc"]
celltype = ["Grc"]
cell_exe = ["cell = Grc(np.array([0.,0.,0.]))"]
color = color3
istart = 0
istop = 0.1
di = 0.005
color_vec = (np.array([color0, color1, color2, color3, color4, color5, color6]), np.array([color0, color1, color2, color3, color4, color5, color6]))
CFo_vec = array([-2, 20, 30, 40, 50, 60])
plot_train = False
use_multisplit = False
if "_prk_" in do:
prefix = prefix + "_prk"
cellimport = ["from Purkinje import Purkinje"]
celltype = ["Prk"]
cell_exe = ["cell = Purkinje()"]
color = r1
istart = 0
istop = 0.2
di = 0.01
use_multisplit = True
use_mpi = False
color_vec = (np.array([color0, color1, color2, color3, color4, color5, color6]), np.array([color0, color1, color2, color3, color4, color5, color6]))
CFo_vec = array([-2, 20, 30, 40, 50, 60])
delay_baseline = 20
if "_grcnoisy_" in do:
prefix = prefix + "noisy"
cell_exe = ["cell = Grc(np.array([0.,0.,0.]), lkg2_noise=3e-5, lkg2_gbar=6e-5)"]
if "_grcvar_" in do:
prefix = prefix + "var"
cell_exe = ["cell = Grc(np.array([0.,0.,0.]), sigma_L = 0.1)"]
Nstop = True
Flip = True
if "_fig" in do:
color_vec = (np.array([color0, color1, color2, color6]), np.array([color0, color1, color2, color6]))
CFo_vec = array([40])
do_if = False
if ("pop_CF-N_grc_syngr_cn_a1_nsyn4_noinh_varih" in do):
x_vec = np.array([0.33,0.37,0.42,0.5,0.6,0.7])[::-1]
N_vec = np.array([10,100,1000])
x_vec_type = "ex"
color_vec = (np.array([color0, color1, color6, color5, color2]), np.array([color0, color1, color6, color5, color2]))
do_if = False
Nstop = False
if ("pop_CF-N_grc_syngr_excn_a1_nsyn4_noinh_varih" in do):
x_vec = np.array([0.33,0.37,0.42,0.5,0.6,0.7])[::-1]
N_vec = np.array([10,100,1000])
x_vec_type = "ex"
color_vec = (np.array([color0, color1, color6, color5, color2]), np.array([color0, color1, color6, color5, color2]))
do_if = False
Nstop = False
if ("pop_CF-N_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn" in do):
x_vec = np.array([2,4,6,10,20,40])
N_vec = np.array([10,100,1000])
x_vec_type = "inh"
color_vec = (np.array([color2]), np.array([color2]))
do_if = False
Nstop = False
if ("pop_CF-N_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_lowinh" in do):
x_vec = np.array([1, 5, 10, 20, 30, 40, 50, 60, 70, 80, 100, 200, 300, 400, 500, 1000])
N_vec = np.array([5, 6, 7, 8, 9, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 200, 400, 600, 800, 1000, 5000, 10000, 100000])
x_vec_type = "inh"
color_vec = (np.array([color2]), np.array([color2]))
do_if = False
Nstop = False
if ("pop_CF-N_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_inhin" in do):
x_vec = np.array([2,4,6,10,20,40])
N_vec = np.array([10,100,1000])
x_vec_type = "inhin"
color_vec = (np.array([color2]), np.array([color2]))
do_if = False
Nstop = False
if ("pop_CF-N_none_synno" in do):
x_vec = np.array([1,10,20,30,40,50])[::-1]
N_vec = np.array([10,100,1000])
x_vec_type = "in"
color_vec = (np.array([color0, color1, color6, color5, color2]), np.array([color0, color1, color6, color5, color2]))
do_if = False
Nstop = False
if ("pop_CF-cutf_none_synno" in do):
x_vec = np.array([1,2,5,10,15,20,25,30,35,40,45,50])[::-1]
if ("_N100_" in do):
N_vec = np.array([1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,42,44,46,48,50,52,54,56,58,60,62,64,66,68,70,72,74,76,78,80,82,84,86,88,90])[::-1]
else:
N_vec = np.array([1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,42,44,46,48,50,52,54,56,58,60,62,64,66,68,70,72,74,76,78,80,82,84,86,88,90,92,94,96,98,100,102,104,106,108,110,112,114,116,118,120])[::-1]
if ("_a10_" in do):
if "_twopop_" in do:
N_vec = np.array([1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,42,44,46,48,50,52,54,56,58,60,62,64,66,68,70,72,74,76,78,80,82,84,86,88,90,92,94,96,98,100,102,104,106,108,110,112,114,116,118,120,122,124,126,128,130,132,134,136,138,140,142,146,148,150,152,154,156,158,160])[::-1]
x_vec = np.array([0.1,0.2,0.4,0.6,0.8,1,2,3,4,5,6])[::-1]
x_vec_type = "in"
color_vec = (np.array([color0, color1, color6, color5, color2]), np.array([color0, color1, color6, color5, color2]))
do_if = False
Nstop = True
if ("pop_CF-cutf_grc_syngr_cn_a1_nsyn4_noinh_varih_" in do) or ("pop_CF-cutf_grc_syngr_cn_a1_nsyn4_noinh_lowvarih_" in do):
x_vec = np.array([0.64])[::-1] #0.33,0.37,0.42,0.45,0.5,0.55,0.6,,0.7,0.75
if ("_N100_" in do):
N_vec = np.array([1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,42,44,46,48,50,52,54,56,58,60,62,64,66,68,70,72,74,76,78,80,82,84,86,88,90])[::-1]
else:
N_vec = np.array([20])[::-1] # 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19, ,21,22,23,24,25,26,27,28,29,30
x_vec_type = "ex"
color_vec = (np.array([color0, color1, color6, color5, color2]), np.array([color0, color1, color6, color5, color2]))
do_if = False
Nstop = True
if ("pop_CF-cutf_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_" in do) or ("pop_CF-cutf_grc_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_" in do):
x_vec = np.array([4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,22,24,26,28,30,32,34,36,38,40])
if ("_N100_" in do):
N_vec = np.array([0.7,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,42,44,46,48,50,42,44,46,48,50,52,54,56,58,60,62,64,66,68,70])[::-1]
else:
N_vec = np.array([0.7,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30])[::-1]
if "_twopop_" in do:
N_vec = np.array([0.7,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,42,44,46,48,50,52,54,56,60,52,54,56,58,60,62,64,66,68,70,72,74,76,78,80,82,84,86,88,90])[::-1]
x_vec = np.array([4,5,6,7,8,9,10,11,12,13,14,14.2,14.4,14.6,14.8,15,16,17,18,19,20,22,24,26,28,30,32])
x_vec_type = "inh"
color_vec = (np.array([color0, color1, color6, color5, color2]), np.array([color0, color1, color6, color5, color2]))
do_if = False
Nstop = True
if ("pop_CF-cutf_if_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_" in do) or ("pop_CF-cutf_if_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_" in do):
x_vec = np.array([4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,22,24,26,28,30,32,34,36,38,40])
if ("_N100_" in do):
N_vec = np.array([0.7,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,42,44,46,48,50,42,44,46,48,50,52,54,56,58,60,62,64,66,68,70,72,74,76,78,80,82,84,86,88,90,92,94,96,98,100])[::-1]
else:
N_vec = np.array([0.7,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30])[::-1]
if "_twopop_" in do:
N_vec = np.array([0.7,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,42,44,46,48,50,52,54,56,60,52,54,56,58,60,62,64,66,68,70,72,74,76,78,80,82,84,86,88,90,92,94,96,98,100,102,104,106,108,110,112,114,116,118,120,122,124,126,128,130])[::-1]
x_vec = np.array([4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,22,24,26,28,30,32,34,36,38,40])
x_vec_type = "inh"
color_vec = (np.array([color0, color1, color6, color5, color2]), np.array([color0, color1, color6, color5, color2]))
do_if = False
Nstop = True
if ("pop_CF-cutf_grc_syngr_cn_adjfinh_a10_nsyn4_varih_varinhn_" in do) or ("pop_CF-cutf_if_syngr_cn_adjfinh_a10_nsyn4_varih_varinhn_" in do) or ("pop_CF-cutf_grc_syngr_cn_adjfinh_a10_nsyn4_lowvarih_lowvarinhn_" in do) or ("pop_CF-cutf_if_syngr_cn_adjfinh_a10_nsyn4_lowvarih_lowvarinhn_" in do):
N_vec = np.array([1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30])[::-1]
x_vec = np.array([4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,22,24,26,28,30,32,34,36,38,40])
x_vec_type = "inh"
color_vec = (np.array([color0, color1, color6, color5, color2]), np.array([color0, color1, color6, color5, color2]))
do_if = False
Nstop = True
if ("pop_CF-cutf_grc_syngr_cn_adjfinh_a1_nsyn4_varih_varinhn_lowinh_" in do) or ("pop_CF-cutf_grc_syngr_cn_adjfinh_a1_nsyn4_lowvarih_lowvarinhn_lowinh_" in do):
x_vec = np.array([1, 5, 10, 20, 30, 40, 50, 60, 70, 80, 100, 200, 300, 400, 500, 1000])
N_vec = np.array([1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30])[::-1]
x_vec_type = "inh"
color_vec = (np.array([color0, color1, color6, color5, color2]), np.array([color0, color1, color6, color5, color2]))
do_if = False
Nstop = True
if ("pop_CF-cutf_grc_syngr_cn_adjinh_a1_nsyn4_varih_" in do) or ("pop_CF-cutf_if_syngr_cn_adjinh_a1_nsyn4_varih_" in do):
x_vec = np.arange(0.4,0.85,0.02)
N_vec = np.array([0.7,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,40,42,44,46,48,50,52,54,56,58,60,62,64,66,68,70,72])[::-1]
# N_vec = np.array([0.7,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,42,44,46,48,50,52,54,56,60,52,54,56,58,60,62,64,66,68,70,72,74,76,78,80,82,84,86,88,90])[::-1]
if "_if_" in do:
x_vec = np.arange(0.5,0.9,0.02)
if "_twopop_" in do:
N_vec = np.array([0.7,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,42,44,46,48,50,52,54,56,58,60])[::-1]
if "_if_" in do:
N_vec = np.array([0.7,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,42,44,46,48,50,52,54,56,58,60])[::-1]
x_vec = np.arange(0.6,1,0.02)
x_vec_type = "constinh"
color_vec = (np.array([color0, color1, color6, color5, color2]), np.array([color0, color1, color6, color5, color2]))
do_if = False
Nstop = True
if "_none_" in do:
prefix = prefix + "_none"
plot_train = False
t_qual = 6
thresh = -21.175*mV
R = 8860*MOhm
#tau_passive = 3e-06*8860 = 26.6ms
cellimport = []
celltype = ["IfCell"]
cell_exe = ["cell = IfCell(C = 3e-06*uF, R = " + str(R) + ", e = -71.5*mV, thresh =" + str(thresh) + ", vrefrac = -60*mV)"]
color = color1
temperature = 37
#if MPI.COMM_WORLD.rank == 0:
# if "_syn" in do: ax01 = ax5; ax02 = ax6
# if "_syngr" in do: ax01 = ax7; ax02 = ax8
# if "_synno" in do: ax01 = ax1; ax02 = ax2
istart = 0.002
istop = 0.003
di = 0.000001
method_interpol = np.array(['gsyn_in'])
CFo_vec = array([40])
if "_dashed" in do: # make dashed always black!!!
color_vec = (np.array([color0]), np.array([color0]))
else:
color_vec = (np.array([color1]), np.array([color1]))
if "_syn" in do:
prefix = prefix + "_syn"
n_syn_ex = [1]
g_syn_ex = [0]
noise_syn = [0]
noise_syn_inh = [0]
freq_used = np.array([])
inh_hold = [0]
n_syn_inh = [0]
g_syn_inh = [1]
tau1_inh = ['gr']
tau2_inh = ['gr']
if "_syngr_" in do:
tau1_ex=['gr']
tau2_ex=['gr']
prefix = prefix + "gr"
elif "_synprk_" in do:
tau1_ex=['prk']
tau2_ex=['prk']
prefix = prefix + "prk"
elif "_syngrstoch_" in do:
tau1_ex=['grstoch']
tau2_ex=['grstoch']
prefix = prefix + "grstoch"
elif "_synnostdgr_" in do:
tau1_ex=['nostdgr']
tau2_ex=['nostdgr']
prefix = prefix + "nostdgr"
elif "_synnomggr_" in do:
tau1_ex=['nomggr']
tau2_ex=['nomggr']
prefix = prefix + "nomggr"
elif "_synampagr_" in do:
tau1_ex=['ampagr']
tau2_ex=['ampagr']
prefix = prefix + "ampagr"
elif "_synampagrnopre_" in do:
tau1_ex=['ampagrnopre']
tau2_ex=['ampagrnopre']
prefix = prefix + "ampagrnopre"
elif "_synampagrstoch_" in do:
tau1_ex=['ampagrstoch']
tau2_ex=['ampagrstoch']
prefix = prefix + "ampagrstoch"
elif "_synnostdampagr_" in do:
tau1_ex=['nostdampagr']
tau2_ex=['nostdampagr']
prefix = prefix + "nostdampagr"
elif "_synnmdagr_" in do:
tau1_ex=['nmdagr']
tau2_ex=['nmdagr']
prefix = prefix + "nmdagr"
elif "_synnmdagrnopre_" in do:
tau1_ex=['nmdagrnopre']
tau2_ex=['nmdagrnopre']
prefix = prefix + "nmdagrnopre"
elif "_synnmdagrstoch_" in do:
tau1_ex=['nmdagrstoch']
tau2_ex=['nmdagrstoch']
prefix = prefix + "nmdagrstoch"
elif "_syngabagr_" in do:
tau1_ex=['gabagr']
tau2_ex=['gabagr']
prefix = prefix + "gabagr"
elif "_syngabagrstoch_" in do:
tau1_ex=['gabagrstoch']
tau2_ex=['gabagrstoch']
prefix = prefix + "gabagrstoch"
elif "_synnodirect_" in do:
method_interpol = np.array(['bin'])
CFo_vec = array([-1])
g_syn_ex = [-1]
tau1_ex=[1*ms]
tau2_ex=[1*ms]
prefix = prefix + "nodirect"
elif "_synno_" in do:
method_interpol = np.array(['bin'])
CFo_vec = array([-1])
g_syn_ex = [-1]
tau1_ex=[0*ms]
tau2_ex=[0*ms]
prefix = prefix + "no"
elif "_synfit_" in do:
tau1_ex=['fit']
tau2_ex=['fit']
prefix = prefix + "fit"
elif "_syntriexp_" in do:
tau1_ex=['triexp']
tau2_ex=['triexp']
prefix = prefix + "triexp"
elif "_synnmfit_" in do:
tau1_ex=['nmfit']
tau2_ex=['nmfit']
prefix = prefix + "nmfit"
elif "_synamfit_" in do:
tau1_ex=['amfit']
tau2_ex=['amfit']
prefix = prefix + "amfit"
elif "_synnmfitnomg_" in do:
tau1_ex=[4.394*ms]
tau2_ex=[4.394*ms]
prefix = prefix + "nmfitnomg"
elif "_synlong_" in do:
tau1_ex=[100*ms]
tau2_ex=[100*ms]
prefix = prefix + "long"
elif "_synshort_" in do:
tau1_ex=[1*ms]
tau2_ex=[1*ms]
prefix = prefix + "short"
elif "_synnewfit_" in do:
tau1_ex = [1*ms]
tau2_ex = [1*ms]
prefix = prefix + "newfit"
tau1_inh = [10*ms]
tau2_inh = [10*ms]
elif "_syngrfastinh_" in do:
tau1_ex=['gr']
tau2_ex=['gr']
prefix = prefix + "grfastinh"
tau1_inh = [0*ms]
tau2_inh = [10*ms]
if "_nsyn" in do:
nsyn = str(do).split("_nsyn")[1].split("_")[0]
prefix = prefix + "_nsyn" + str(int(nsyn))
n_syn_ex = [int(nsyn)]
if "_ssine_" in do:
prefix = prefix + "_ssine"
CFo_vec = array([-1, 50])
bin_width = 0.025*ms
N = [1]
onf = None
if "_bn_" in do:
onf = 10
cutf = 20
xmax = 20
sexp = -1
prefix = prefix + "_bn"
if "_cn_" in do:
xmax = 20
cutf = 20
sexp = -1
prefix = prefix + "_cn"
if "_excn_" in do:
xmax = 20
cutf = 20
sexp = 4
prefix = prefix + "_excn"
if "_wn_" in do:
xmax = 100
cutf = 0
sexp = 0
prefix = prefix + "_wn"
if "_cutf" in do:
sexp = -1
cutf = float(str(do).split("_cutf")[1].split("_")[0])
xmax = cutf
prefix = prefix + "_cutf" + str(int(cutf))
if "_a00_" in do:
amod = [0]
prefix = prefix + "_a00"
give_psd = False
if "_psd_" in do:
give_psd = True
prefix = prefix + "_psd"
CFo_vec = array([-1, 50])
if "_fft_" in do:
CFo_vec = array([-1, 50])
if "_a01_" in do:
amod = [0.1]
prefix = prefix + "_a01"
if MPI.COMM_WORLD.rank == 0:
if "_fig" not in do:
if "_if" in do:
ax01 = ax1
if "_psd" not in do: ax02 = ax2
if "_grc" in do:
ax01 = ax3
if "_psd" not in do: ax02 = ax3
if "_resif" in do:
ax01 = ax1
if "_psd" not in do: ax02 = ax2
if "_a02_" in do:
amod = [0.2]
prefix = prefix + "_a02"
if MPI.COMM_WORLD.rank == 0:
if "_fig" not in do:
if "_if" in do:
ax01 = ax5
if "_psd" not in do: ax02 = ax6
if "_grc" in do:
ax01 = ax7
if "_psd" not in do: ax02 = ax8
if "_resif" in do:
ax01 = ax5
if "_psd" not in do: ax02 = ax6
if "_a05_" in do:
amod = [0.5]
prefix = prefix + "_a05"
if MPI.COMM_WORLD.rank == 0:
if "_fig" not in do:
if "_if" in do:
ax01 = ax9
if "_psd" not in do: ax02 = ax10
if "_grc" in do:
ax01 = ax11
if "_psd" not in do: ax02 = ax12
if "_resif" in do:
ax01 = ax9
if "_psd" not in do: ax02 = ax10
if "_a1_" in do:
amod = [1]
prefix = prefix + "_a1"
if MPI.COMM_WORLD.rank == 0:
if "_fig" not in do:
if "_if" in do:
ax01 = ax13
if "_psd" not in do: ax02 = ax14
if "_grc" in do:
ax01 = ax15
if "_psd" not in do: ax02 = ax16
if "_resif" in do:
ax01 = ax13
if "_psd" not in do: ax02 = ax14
if "_a10_" in do:
amod = [10]
prefix = prefix + "_a10"
if "_a3_" in do:
amod = [3]
prefix = prefix + "_a3"
if "_a2_" in do:
amod = [2]
prefix = prefix + "_a2"
if "_a15_" in do:
amod = [1.5]
prefix = prefix + "_a15"
if "_fig8" in do:
if MPI.COMM_WORLD.rank == 0:
if "_pos1b_" in do:
if "_notransf_" in do:
ax01 = None
ax01b = None
else:
ax01 = ax1
ax01b = ax2
ax02 = ax3
ax03 = ax4b
elif "_pos1_" in do:
if "_notransf_" in do:
ax01 = None
ax01b = None
else:
ax01 = ax1
ax01b = ax2
ax02 = ax3
ax03 = ax4
elif ("_pos2b_" in do):
if "_notransf_" in do:
ax01 = None
ax01b = None
else:
ax01 = ax5
ax01b = ax6
ax02 = ax7
ax03 = ax8b
elif ("_pos2_" in do):
if "_notransf_" in do:
ax01 = None
ax01b = None
else:
ax01 = ax5
ax01b = ax6
ax02 = ax7
ax03 = ax8
elif ("_pos3b_" in do):
if "_notransf_" in do:
ax01 = None
ax01b = None
else:
ax01 = ax9
ax01b = ax10
ax02 = ax11
ax03 = ax12b
elif ("_pos3_" in do):
if "_notransf_" in do:
ax01 = None
ax01b = None
else:
ax01 = ax9
ax01b = ax10
ax02 = ax11
ax03 = ax12
elif "_pos5" in do:
ax01 = None
ax01b = None
ax02 = ax15
ax03 = None
elif "_fig" in do:
if MPI.COMM_WORLD.rank == 0:
if "_pos14" in do:
ax01 = ax14
elif "_pos1b" in do:
ax01 = None
ax01b = None
ax02 = ax4
elif "_pos1" in do:
if "_notransf_" in do:
ax01 = None
ax01b = None
else:
ax01 = ax1
ax01b = ax2
ax02 = ax3
elif ("_pos2" in do):
if "_notransf_" in do:
ax01 = None
ax01b = None
else:
ax01 = ax4
ax01b = ax5
ax02 = ax6
elif "_pos3" in do:
if "_notransf_" in do:
ax01 = None
ax01b = None
else:
ax01 = ax7
ax01b = ax8
ax02 = ax9
elif "_pos4" in do:
ax01 = ax10
ax01b = ax11
ax02 = ax12
elif "_CF-" in do:
ax01 = ax1
ax01b = ax2
ax02 = ax3
ax04 = ax7
else:
ax01 = ax1
ax01b = ax2
ax02 = ax3
noise_a = [1e9]
noise_a_inh = [1e9]
noise_syn = [0.01]
noise_syn_tau = [-1]
noise_syn_inh = [0.01]
noise_syn_tau_inh = [-1]
if "_noisesynlow_" in do: # CV: 0.003, FANO: 0.0025
noise_a = [1e9]
#noise_a_inh = [1e9]
noise_syn = [0.01]
noise_syn_tau = [-1]
#noise_syn_inh = [0.01]
#noise_syn_tau_inh = [-1]
prefix = prefix + "_noisesynlow"
if "_noisesynmed_" in do: # CV: 0.1, FANO: 0.025
noise_a = [1e9]
#noise_a_inh = [1e9]
noise_syn = [0.5]
noise_syn_tau = [-1]
#noise_syn_inh = [0.5]
#noise_syn_tau_inh = [-1]
prefix = prefix + "_noisesynmed"
if "_noisesynhigh_" in do: # CV: 0.1, FANO: 0.025
noise_a = [1e9]
#noise_a_inh = [1e9]
noise_syn = [10]
noise_syn_tau = [-1]
#noise_syn_inh = [10]
#noise_syn_tau_inh = [-1]
prefix = prefix + "_noisesynhigh"
if "_noisesyngamma_" in do: # CV: 0.1, FANO: 0.025
noise_a = [100]
#noise_a_inh = [100]
noise_syn = [0]
noise_syn_tau = [0]
#noise_syn_inh = [0]
#noise_syn_tau_inh = [0]
prefix = prefix + "_noisesyngamma"
if "_noisesynpoiss_" in do: # CV: 1, FANO: 1
noise_a = [1]
#noise_a_inh = [1]
noise_syn = [0]
noise_syn_tau = [0]
#noise_syn_inh = [0]
#noise_syn_tau_inh = [0]
prefix = prefix + "_noisesynpoiss"
if "_inhpoiss_" in do: # CV: 1, FANO: 1
noise_a_inh = [1]
noise_syn_inh = [0]
noise_syn_tau_inh = [0]
prefix = prefix + "_inhpoiss"
if "_inhmed_" in do: # CV: 1, FANO: 1
noise_a_inh = [1e9]
noise_syn_inh = [0.5]
noise_syn_tau_inh = [-1]
prefix = prefix + "_inhmed"
if "_inhlow_" in do: # CV: 0.003, FANO: 0.0025
noise_a_inh = [1e9]
noise_syn_inh = [0.01]
noise_syn_tau_inh = [-1]
prefix = prefix + "_inhlow"
if "_noisesyn10ex_" in do:
noise_syn = [0.5] #int(40*0.5)
noise_syn_tau = [10*ms]
prefix = prefix + "_noisesyn10ex"
if "_noisesyn10inh_" in do:
noise_syn_inh = [0.5] #2
noise_syn_tau_inh = [10*ms]
prefix = prefix + "_noisesyn10inh"
if "_noisesyn0_" in do:
noise_syn = [10]
noise_syn_tau = [0*ms]
prefix = prefix + "_noisesyn0"
if "_addn10_" in do:
fluct_g_e0 = [0]
fluct_g_i0 = [0.0002*uS]
fluct_std_e = [0]
fluct_std_i = [0.0001*uS]
fluct_tau_e = 10*ms
fluct_tau_i = 10*ms
prefix = prefix + "_addn10"
if "_addn10b_" in do:
fluct_g_e0 = [0]
fluct_g_i0 = [0.0002*uS]
fluct_std_e = [0]
fluct_std_i = [0.0001*uS]
fluct_tau_e = 100*ms
fluct_tau_i = 100*ms
prefix = prefix + "b"
if "_addn10c_" in do:
fluct_g_e0 = [0]
fluct_g_i0 = [0.0004*uS]
fluct_std_e = [0]
fluct_std_i = [0.0002*uS]
fluct_tau_e = 1000*ms
fluct_tau_i = 1000*ms
prefix = prefix + "c"
if "_poissex_" in do:
noise_syn = 1000
prefix = prefix + "_poissex"
if "_poissinh_" in do:
noise_syn_inh = 1000
prefix = prefix + "_poissinh"
g_syn_ex_s = [0]
g_syn_inh_s = [0]
if "_varg_" in do:
g_syn_ex_s = [0.25/2]
g_syn_inh_s = [0.25/2]
prefix = prefix + "_varg"
if "_highvarg_" in do:
g_syn_ex_s = [0.5/2]
g_syn_inh_s = [0.5/2]
prefix = prefix + "_highvarg"
adjinh = False
if "_adjinh_" in do:
g_syn_ex = [1]
fluct_g_i0 = [0]
prefix = prefix + "_adjinh"
adjinh = True
adjfinh = False
if "_adjfinh_" in do:
g_syn_ex = [1]
n_syn_inh = [4]
g_syn_inh = [1]
prefix = prefix + "_adjfinh"
adjfinh = True
if "_ninhsyn" in do:
nsyninh = str(do).split("_ninhsyn")[1].split("_")[0]
prefix = prefix + "_ninhsyn" + str(int(nsyninh))
n_syn_inh = [int(nsyninh)]
if "_color" in do:
nc = str(do).split("_color")[1].split("_")[0]
#exec 'color_vec = (np.array(['+ str(nc) +']), np.array(['+ str(nc) +']))'
exec 'color = ' + str(nc)
CF_var = [[5,10,20]]
CF_var = False
give_freq = False
if "_ih" in do:
ih = str(do).split("_ih")[1].split("_")[0]
prefix = prefix + "_ih" + ih
ih = float(ih)
ihold = [ih]
if "_CFo" in do:
cf = str(do).split("_CFo")[1].split("_")[0]
CFo_vec = np.array([float(cf)])
if "_gsex" in do:
cf = str(do).split("_gsex")[1].split("_")[0]
prefix = prefix + "_gsex" + cf
g_syn_ex = [float(cf)]
if "_gsinh" in do:
cf = str(do).split("_gsinh")[1].split("_")[0]
prefix = prefix + "_gsinh" + cf
g_syn_inh = [float(cf)]
syn_max_mf = [1] # possible mossy fibres per synapse
syn_max_inh = [1] # possible Golgi cells per synapse
sigma_ihold = [0.]
sigma_inh_hold = [0.]
if "_varih_" in do:
sigma_ihold = [0.5/2]
prefix = prefix + "_varih"
if "_lowvarih_" in do:
sigma_ihold = [0.2/2]
prefix = prefix + "_lowvarih"
if "_highvarih_" in do:
sigma_ihold = [0.7/2]
prefix = prefix + "_highvarih"
if "_highervarih_" in do:
sigma_ihold = [1.5/2]
prefix = prefix + "_highvarih"
if "_unifih_" in do:
sigma_ihold = [-1.]
prefix = prefix + "_unifih"
if "_varinhn_" in do:
sigma_inh_hold = [0.5/2] # 1
prefix = prefix + "_varinhn"
if "_lowvarinhn_" in do:
sigma_inh_hold = [0.2/2] # 1
prefix = prefix + "_lowvarinhn"
if "_N" in do:
N = str(do).split("_N")[1].split("_")[0]
prefix = prefix + "_N" + str(int(N))
N = [int(N)]
if "_mf" in do:
mf = str(do).split("_mf")[1].split("_")[0]
prefix = prefix + "_mf" + str(int(mf))
syn_max_mf = [int(mf)]
else:
syn_max_mf = N # possible mossy fibres per synapse
if "_gc" in do:
gc = str(do).split("_gc")[1].split("_")[0]
prefix = prefix + "_gc" + str(int(gc))
syn_max_inh = [int(gc)]
else:
syn_max_inh = N # possible mossy fibres per synapse
if "_is" in do:
is0 = str(do).split("_is")[1].split("_")[0]
prefix = prefix + "_is" + str(is0)
fluct_g_e0 = [0]
fluct_g_i0 = [float(is0)*nS]
fluct_std_e = [0]
fluct_std_i = [0]
fluct_tau_e = 0*ms
fluct_tau_i = 0*ms
if "_ddown" in do:
d_down = int( str(do).split("_ddown")[1].split("_")[0] )
syn_ex_dist = []
syn_inh_dist = []
inh_factor = [1]
if "_lincomb2_" in do:
syn_ex_dist = [[1,2,2,2]]
prefix = prefix + "_lincomb2"
if "_lincomb2c_" in do:
syn_ex_dist = [[1,2,2,2]]
prefix = prefix + "_lincomb2c"
inh_factor = [0,1]
if "_lincomb3_" in do:
syn_inh_dist = [[0,0,0,0]]
syn_ex_dist = [[1,0,0,0]]
prefix = prefix + "_lincomb3"
if "_lincomb4_" in do:
syn_inh_dist = [[0,0,0,0]]
syn_ex_dist = [[1,2,3,4]]
prefix = prefix + "_lincomb4"
if "_lincomb_" in do:
syn_ex_dist = [[1,1,2,2]]
prefix = prefix + "_lincomb"
if "_inhin_" in do:
syn_inh_dist = [[1,1,1,1]]
syn_ex_dist = [[0,0,0,0]]
prefix = prefix + "_inhin"
#normalize = 3.56134468312
if "_bothin_" in do:
syn_inh_dist = [[1,1,1,1]]
syn_ex_dist = [[2,2,2,2]]
prefix = prefix + "_bothin"
inh_factor = [-1,1]
inh_delay = 0
if "_samein" in do:
syn_inh_dist = [[1,1,1,1]]
syn_ex_dist = [[1,1,1,1]]
prefix = prefix + "_samein"
cf = str(do).split("_samein")[1].split("_")[0]
if len(cf) > 0:
prefix = prefix + cf
inh_delay = float(cf)
print "inh_delay:", inh_delay, "ms"
if "_lowinh_" in do:
#syn_inh_dist = [[0,0,0,0]]
#syn_ex_dist = [[1,1,1,1]]
g_syn_inh = [0.45] #0.46
prefix = prefix + "_lowinh"
linestyle = "-"
if "_dashed_" in do:
linestyle = "--"
if "_dotted_" in do:
linestyle = ":"
if "_dashdot_" in do:
linestyle = "-."
markerstyle = "o"
ms2=3
if "_star_" in do:
markerstyle = "^"
ms2=4
if "_keep_" in do:
do_run_now = 0
else:
do_run_now = do_run
a_celltype = [0]
factor_celltype = [1]
#if "_if_" in do:
# g_syn_ex = [0.65]
# g_syn_inh = [0.65]
if "_twopop_" in do:
prefix = prefix + "_twopop"
if cellimport != []:
cellimport = [cellimport[0],cellimport[0]]
celltype = [celltype[0],celltype[0]]
cell_exe = [cell_exe[0],cell_exe[0]]
N = [N[0],N[0]]
amod = [amod[0],amod[0]]
a_celltype = [0,1] # celltype to analyse
factor_celltype = [1,-1]
ihold = [ihold[0],ihold[0]]
ihold_sigma = [ihold_sigma[0],ihold_sigma[0]]
sigma_ihold = [sigma_ihold[0],sigma_ihold[0]]
n_syn_ex = [n_syn_ex[0],n_syn_ex[0]]
n_syn_inh = [n_syn_inh[0],n_syn_inh[0]]
fluct_g_e0 = [fluct_g_e0[0], fluct_g_e0[0]]
fluct_g_i0 = [fluct_g_i0[0],fluct_g_i0[0]]
fluct_std_e = [fluct_std_e[0], fluct_std_e[0]]
fluct_std_i = [fluct_std_i[0], fluct_std_i[0]]
tau1_ex = [tau1_ex[0], tau1_ex[0]]
tau2_ex = [tau2_ex[0], tau2_ex[0]]
tau1_inh = [tau1_inh[0], tau1_inh[0]]
tau2_inh = [tau2_inh[0], tau2_inh[0]]
g_syn_ex = [g_syn_ex[0], g_syn_ex[0]]
g_syn_ex_s = [g_syn_ex_s[0], g_syn_ex_s[0]]
noise_syn = [noise_syn[0], noise_syn[0]]
noise_syn_tau = [noise_syn_tau[0], noise_syn_tau[0]]
noise_syn_inh = [noise_syn_inh[0], noise_syn_inh[0]]
noise_syn_tau_inh = [noise_syn_tau_inh[0], noise_syn_tau_inh[0]]
noise_a = [noise_a[0], noise_a[0]]
noise_a_inh = [noise_a_inh[0], noise_a_inh[0]]
inh_hold = [inh_hold[0], inh_hold[0]]
g_syn_inh = [g_syn_inh[0], g_syn_inh[0]]
g_syn_inh_s = [g_syn_inh_s[0], g_syn_inh_s[0]]
syn_max_mf = [syn_max_mf[0],syn_max_mf[0]]
syn_max_inh = [syn_max_inh[0], syn_max_inh[0]]
sigma_inh_hold = [sigma_inh_hold[0], sigma_inh_hold[0]]
#print syn_ex_dist
#print syn_inh_dist
if len(syn_ex_dist) > 0:
syn_ex_dist = [syn_ex_dist[0], syn_ex_dist[0]]
syn_inh_dist = [syn_inh_dist[0], syn_inh_dist[0]]
#else:
# syn_ex_dist = [] #[[1,1,1,1],[1,1,1,1]]
# syn_inh_dist = [] #[[0,0,0,0],[0,0,0,0]]
if "_plotre_" in do:
t_qual = 6
if "_transfer_" in do:
for i, CFo in enumerate(CFo_vec):
prefix = prefix + "_CFo" + str(CFo)
#print pickle_prefix
pop = Population(cellimport = cellimport, celltype = celltype, cell_exe = cell_exe, N = N, temperature = temperature, ihold = ihold, ihold_sigma = ihold_sigma, amp = amp, amod = amod, give_freq = give_freq, do_run = do_run_now, pickle_prefix = prefix, istart = istart, istop = istop, di = di, dt = dt)
pop.use_mpi = use_mpi
pop.use_multisplit = use_multisplit
pop.bin_width = float(bin_width)
pop.jitter = float(jitter)
pop.method_interpol = method_interpol[:]
pop.no_fmean = False
pop.fluct_g_e0 = fluct_g_e0[:]
pop.fluct_g_i0 = fluct_g_i0[:]
pop.fluct_std_e = fluct_std_e[:]
pop.fluct_std_i = fluct_std_i[:]
pop.fluct_tau_e = float(fluct_tau_e)
pop.fluct_tau_i = float(fluct_tau_i)
pop.CF_var = CF_var
pop.xmax = xmax
pop.tau1_ex=tau1_ex[:]
pop.tau2_ex=tau2_ex[:]
pop.tau1_inh=tau1_inh[:]
pop.tau2_inh=tau2_inh[:]
pop.n_syn_ex = n_syn_ex[:]
pop.g_syn_ex = g_syn_ex[:]
pop.g_syn_ex_s = g_syn_ex_s[:]
pop.noise_syn = noise_syn[:]
pop.noise_syn_tau = noise_syn_tau[:]
pop.noise_a = noise_a[:]
pop.noise_a_inh = noise_a_inh[:]
pop.noise_syn_inh = noise_syn_inh[:]
pop.noise_syn_tau_inh = noise_syn_tau_inh[:]
pop.inh_hold = inh_hold[:]
pop.n_syn_inh = n_syn_inh[:]
pop.g_syn_inh_s = g_syn_inh_s[:]
pop.g_syn_inh = g_syn_inh[:]
pop.bypass_cell = bypass_cell
pop.do_if = do_if
pop.adjinh = adjinh
pop.adjfinh = adjfinh
pop.syn_max_mf = syn_max_mf[:]
pop.syn_max_inh = syn_max_inh[:]
pop.inh_hold_sigma = sigma_inh_hold[:] #[float(sigma_inh_hold)]
pop.ihold_sigma = sigma_ihold[:] #[float(sigma_ihold)]
pop.syn_ex_dist = syn_ex_dist[:]
pop.syn_inh_dist = syn_inh_dist[:]
pop.simstep = simstep
pop.plot_train = plot_train
pop.inh_delay = inh_delay
pop.a_celltype = a_celltype
pop.factor_celltype = factor_celltype
pop.delay_baseline = delay_baseline
pop.data_dir = data_dir
pop.minimal_dir = minimal_dir
if adjfinh:
pop.inh_hold = [CFo]*len(N)
if CFo == 0: pop.n_syn_inh = [0]*len(N)
elif adjinh:
pop.fluct_g_i0 = [CFo]*len(N)
else:
pop.g_syn_ex = [CFo]*len(N)
pop.tmax = 10*s # return full length of signal
if "_plotv" in do:
te = str(do)
pop.tmax = float(te.split("_plotv")[1][0:2])*s
pop.give_psd = give_psd
if "_ssine" in do:
freq_used = np.array([1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20])*Hz
freq_used = np.array([4])*Hz
results = pop.fun_ssine_Stim(freq_used = freq_used)
else:
results = pop.fun_cnoise_Stim(t_stim = t_stim, cutf = cutf, sexp = sexp, t_qual = t_qual, inh_factor = inh_factor, onf = onf)
freq_used, amp_vec, mag, pha, ca, voltage, current, t1 = results.get('freq_used'), results.get('amp'), results.get('mag'), results.get('pha'), results.get('ca'), results.get('voltage'), results.get('current'), results.get('t1')
freq_times, spike_freq, fmean, method_interpol, SNR, VAF, Qual = results.get('freq_times'), results.get('spike_freq'), results.get('fmeanA'), results.get('method_interpol'), results.get('SNR'), results.get('VAF'), results.get('Qual')
stim, stim_re_mat, t_startstop, current_re = results.get('stim'), results.get('stim_re_mat'), results.get('t_startstop'), results.get('current_re')
fmax, fmstd, fcvm, inh_factor, K_mat = results.get('fmaxA'), results.get('fmstdA'), results.get('fcvmA'), results.get('inh_factor'), results.get('K_mat')
#print "fmean:", fmean
if 'fbaseA' in results:
fbase = results.get('fbaseA')
fbstd = results.get('fbstdA')
else:
fbase = []
fbstd = []
if "_fft" in do: gsyn_in = results.get('gsyn_in')
if pop.id == 0:
if ("_plotpsth" in do):
if ("_plotpsth0_" in do):
t_stim2 = 1000
t_noise = arange(0, t_stim, dt)
noise_data = create_colnoise(t_noise, sexp, cutf, 50, onf = onf)
stimulus, t, t_startstop = construct_Stimulus(noise_data, 1/dt, amp=1, ihold = 0, tail_points = 0, delay_baseline = 2)
ax14b.plot(t-6.17,stimulus,color='k', linewidth=linewidth)
ax14b.axis(xmin=0, xmax=0.1)
adjust_spines(ax14b, ['left','bottom'], d_out = d_out, d_down = 10)
ax14b.xaxis.set_ticks(array([0, 0.1]))
ax14b.set_xticklabels(('0', '0.1'))
ax14b.set_xlabel("s", labelpad=-3)
ax14b.set_ylabel("a.u.", labelpad=-1)
ax14b.axis(ymin=-1, ymax=1)
ax14b.yaxis.set_ticks(array([-1, 0, 1]))
ax14b.set_yticklabels(('-1', '0', '1'))
ax14b.text(0.006, 0.4, "*", color='k', fontsize = params['legend.fontsize'])
ax14b.text(0.04, 0.85, "**", color='k', fontsize = params['legend.fontsize'])
#plt.show()
dtn = 5e-3
t2 = np.arange(0,freq_times[-1],dtn)
psth = np.zeros(len(t2))
for i, ti in enumerate(t2[:-1]):
psth[i] = sum(spike_freq[(ti/dt):(t2[i+1])/dt])/sum(N)*dt/dtn
if ("_label24_" in do): label = "GrC, a=1"
if ("_label26_" in do): label = "GrC, a=10"
if ("_label24n_" in do): label = "iIF, a=1"
if ("_label26n_" in do): label = "iIF, a=10"
ax14.plot(t2-6.17,psth,color=color, linewidth=linewidth, label=label)
ax14.axis(xmin=0, xmax=0.1)
adjust_spines(ax14, ['left'], d_out = d_out, d_down = 10)
ax14.xaxis.set_ticks(array([0, 0.1]))
ax14.set_xticklabels(('0', '0.1'))
ax14.set_xlabel("s", labelpad=-3)
ax14.axis(ymin=0, ymax=170)
ax14.yaxis.set_ticks(array([0, 40, 80, 120, 160]))
ax14.set_yticklabels(('0', '40', '80', '120', '160'))
#ax14.set_ylabel("spikes/s", labelpad=-2)
ax14.set_title("spikes/s") #, fontsize=8)
#lg = ax14.legend(labelspacing=0.1, loc=1, bbox_to_anchor=(1.1,1.05), handlelength=1.5, handletextpad=0.1) #bbox_to_anchor=(-0.1,-0.1)
#fr = lg.get_frame()
#fr.set_lw(0.2)
if ("_plotre_" in do):
#ihold1 = ones(len(stim))*40
if ("_first_" in do):
if ("_pos3_" in do):
ax03.plot(np.arange(len(stim))*dt-0.5, stim, 'k', linewidth=linewidth)
else:
ax03.plot(np.arange(len(stim))*dt-2, stim, 'k', linewidth=linewidth)
if ("_end_" in do) and ("_pos3_" in do):
ax03.plot(np.arange(len(stim))*dt-0.5, stim_re_mat[0,:], color=color, alpha=1, linewidth=linewidth, linestyle = linestyle)
ax03.axis(xmin=0, xmax=0.5)
ax03.axis(ymin=-1.1, ymax=1.1)
adjust_spines(ax03, ['left','bottom'], d_out = d_out, d_down = 10)
ax03.xaxis.set_ticks(array([0, 0.5]))
ax03.set_xticklabels(('0', '0.5'))
ax03.set_xlabel("s", labelpad=-3)
#plt.show()
else:
ax03.plot(np.arange(len(stim))*dt-2, stim_re_mat[0,:], color=color, alpha=1, linewidth=linewidth, linestyle = linestyle)
ax03.axis(xmin=0, xmax=0.5)
ax03.axis(ymin=-1.7, ymax=1.7)
adjust_spines(ax03, ['left'], d_out = d_out, d_down = 10)
ax03.yaxis.set_ticks(array([-1, 0, 1]))
ax03.set_yticklabels(('-1', '0', '1'))
pos=np.where(stim>0.5)
neg=np.where(stim<-0.5)
err = sqrt((stim-stim_re_mat[0,:])**2)
print "pos error:", mean(err[pos]), "neg error:", mean(err[neg])
if ("_plotK_" in do):
K = K_mat[0,:]
freqK = fftfreq(len(K),dt)
iendK = mlab.find(freqK >= xmax)[0]
Kf = fft(fftshift(K))
ax03.semilogx(freqK[0:iendK],Kf[0:iendK]*1e3, color=color, alpha=1, linewidth=linewidth, linestyle = linestyle)
ax03.axis(xmin=0.3, xmax=30)
if ("_end_" in do) and ("_pos3b_" in do):
adjust_spines(ax03, ['left','bottom'], d_out = d_out, d_down = 10)
ax03.xaxis.set_ticks(array([1, 10, 20, 30]))
ax03.set_xticklabels(('1', '10', '', '30'))
else:
adjust_spines(ax03, ['left'], d_out = d_out, d_down = 10)
if ("_plotv" in do): # and (N == [1])
if ("_talk" in do): ax13.cla(); ax13.axis('on')
t2 = t1-t1[int(6.35/dt)]
ax13.plot(t2, voltage[0], color=color, linewidth = linewidth) #voltage[0]
adjust_spines(ax13, ['left','bottom'], d_out = d_out, d_down = 10)
ax13.axis(xmin=0, xmax=1)
ax13.xaxis.set_ticks(array([0, 0.2, 0.4, 0.6, 0.8, 1]))
ax13.set_xticklabels(('0', '0.2', '0.4', '0.6', '0.8', '1'))
ax13.set_xlabel("s", labelpad=0)
ax13.axis(ymin=-65, ymax=40)
ax13.yaxis.set_ticks(array([-60, -30, 0, 30]))
ax13.set_yticklabels(('-60', '-30', '0', '30'))
ax13.set_ylabel("mV", labelpad=2)
#plt.show()
elif ("_first" in do) and ("_talk" in do):
if "_fig6_" in do:
ax13.axis('off')
if ("_grc_syngr_cn_adjfinh_a01_nsyn4_varih_varinhn_N" in do): # do not plot bode
pass
else:
if "_psd" in do:
#pop.set_g(rate = CFo, cutf = cutf, sexp = sexp)
plt.figure(93)
ax91 = plt.subplot(4,1,1)
ax92 = plt.subplot(4,1,2)
ax93 = plt.subplot(4,1,3)
ax94 = plt.subplot(4,1,4)
ax91.plot(t1, voltage[0])
ax91.axis(xmin=10, xmax=11)
if "_fft" in do:
if "_ssine" in do:
t, stimulus, i_startstop, t_startstop = create_singlesine(fu = freq_used[0], amp = amod*ihold[0], ihold = ihold[0] , dt = bin_width, periods = 20, minlength = 2*s, t_prestim = 1*s)
stimulus = stimulus[i_startstop[0]:i_startstop[1]]
t = t[i_startstop[0]:i_startstop[1]] - t[i_startstop[0]]
else:
i_startstop = []
i_startstop.append(find(t1>=t_startstop[0])[0])
i_startstop.append(find(t1<=(t_startstop[0]+10*s))[-1])
t = t1[i_startstop[0]:i_startstop[1]] - t1[i_startstop[0]]
stimulus = np.zeros(len(t))
spike_times = freq_times[where(spike_freq>0)]
isi = diff(spike_times) # differentiate for ISI!
isi_times = spike_times[1:] # Set frequency to second spike for causality!
#ax92.plot(isi_times, 1/isi, t, stimulus, 'r')
spike_freq = spike_freq[i_startstop[0]:i_startstop[1]]
freq_times = freq_times[i_startstop[0]:i_startstop[1]] - t1[i_startstop[0]]
spike_f = fft(spike_freq) # transform into frequency domain
spike_f_pos = spike_f[0:round(len(spike_f) / 2)] # Take only the first half of the power to avoid redundancy
pwr = abs(spike_f_pos) # Impedance Power
pha = angle(spike_f_pos, deg=True) # Impedance Phase in degree
freq = fftfreq(len(spike_freq), bin_width)[0:round(len(spike_freq) / 2)] # positive frequency vector
fstart = find(freq >= 1. / (len(spike_freq) * bin_width))[0] # lowest frequency depends on window length
fend = max(find(freq < 100)) # only use frequencies smaller than 1kHz
magz = pwr[fstart:fend] # don't use freq = 0
phaz = pha[fstart:fend] # don't use freq = 0
freq_used = freq[fstart:fend] # don't use freq = 0
ax93.semilogx(freq_used, 20*log10(magz), linewidth=linewidth)
mag = zeros((1,len(freq_used)))
mag[0,:] = magz / magz[0]
if "_ssine" in do:
umean, ramp, rphase, u = fit_sinusoid_fft(freq_used[0], t, spike_freq)
print ramp, magz[find(freq == freq_used[0])]
ax94.plot(freq_times, spike_freq/N[0], t, stimulus, 'r')
plt.savefig("./figs/dump/Fig" + fig_num + "_latest_test.pdf", dpi = 300) # save it
#plt.clf()
#plt.show()
# PLOTTING
plt.figure('results_transfer_syn')
if ("_none_" in do): # and ("_a01" in do) and ("_noisesynlow" in do):
normalize = mag[0,0]
print "normalizethis:", normalize
if ("_normalize_" in do):
normalize = mag[0,0]
print "normalizethis:", normalize
mag[0,:] = mag[0,:] / normalize
# SET LABELS
label = ""
if ("_label1_" in do): label = "FI=0, FC=" + str(int(fmean)) + "Hz, S=Se"
if ("_label2_" in do): label = "m(FI)=4sp/s, CF=" + str(int(fmean)) + "Hz, S=Se"
if ("_label3_" in do): label = "m(FI)=40sp/s, CF=" + str(int(fmean)) + "Hz, S=Se"
if ("_label4_" in do): label = "FI=0, FC=" + str(int(fmean)) + "Hz, S=Se"
if ("_label5_" in do): label = "input to inh. and ex." #"m(FI)=4Hz, CF=" + str(int(fmean)) + "Hz, S=Se+" + str(round(inh_factor,2)) + "Si"
if ("_label6_" in do): label = "m(FI)=40sp/s, FC=" + str(int(fmean)) + "Hz, S=Se+" + str(round(inh_factor[0],2)) + "Si"
if ("_label7_" in do): label = "input to inh." #"m(FI)=4Hz, CF=" + str(int(fmean)) + "Hz, S=Si"
if ("_label8_" in do): label = "m(FI)=40sp/s, FC=" + str(int(fmean)) + "Hz, S=Si"
if ("_label9_" in do): label = "2 inputs to ex." #"m(FI)=4Hz, CF=" + str(int(fmean)) + "Hz, S=0.5Se1+0.5Se2"
if ("_label11_" in do): label = r"100% $\mathsf{g_{ex}}$"
if ("_label12_" in do): label = r"50% $\mathsf{g_{ex}}$"
if ("_label13_" in do): label = r"$\mathsf{F_{I}}$=6sp/s"
if ("_label14_" in do): label = r"m($\mathsf{F_{I}}$)=6sp/s"
if ("_label0_" in do): label = "FC=" + str(int(fmean)) + "Hz"
# none
if ("_label15_" in do): label = "$\mathsf{N_{in}}$=1"
if ("_label16_" in do): label = "$\mathsf{N_{in}}$=40"
if ("_label16b_" in do): label = "N=40, a=10"
if ("_label17_" in do): label = "N=40, Poisson"
if ("_label18_" in do): label = "FC=" + str(int(fmean)) + "Hz"
if ("_label23_" in do): label = "a=1, p-p"
if ("_label24" in do): label = "a=1"
if ("_label25_" in do): label = "a=10, p-p"
if ("_label26" in do): label = "a=10"
if ("_label27_" in do): label = "GrC, p-p"
if ("_label28_" in do): label = "GrC"
if ("_label29_" in do): label = "IF, p-p"
if ("_label30_" in do): label = "IF"
if ("_label31_" in do): label = "N=200, p-p"
if ("_label32_" in do): label = "N=200"
if ("_label33_" in do): label = "GrC, cutoff=30Hz"
if ("_label34_" in do): label = "IF, cutoff=30Hz"
if ("_label35_" in do): label = "GrC, cutoff=5Hz"
if ("_label36_" in do): label = "IF, cutoff=5Hz"
#if ("_label2" in do) or ("_label3" in do): label = "FC=" + str(int(fmean)) + "Hz"
if ("_none_" in do) and ("_label_" in do) and ("_talk" not in do):
label = "a=" + str(amod)
#if ("_talk_" in do):
# if ("poiss" in do):
# label = "a=" + str(amod) + ", N=40, Poisson"
# else:
# label = "a=" + str(amod) + ", N=1, iIF"
if ("_oldlabel" in do):
if ("_N" in do):
if ("_noinh_varih" in do) or (CFo==0):
label = "FI=" + str(0) + "Hz, m(CF)=" + str(round(fmean,1)) + 'Hz, std(CF)=' + str(round(fmstd,1))
elif "_varinhn" in do:
label = "m(FI)=" + str(CFo) + "Hz, m(CF)=" + str(round(fmean,1)) + 'Hz, std(CF)=' + str(round(fmstd,1))
else:
label = "FI=" + str(CFo) + "Hz, m(CF)=" + str(round(fmean,1)) + 'Hz, std(CF)=' + str(round(fmstd,1))
else:
if ("_noinh_varih" in do) or (CFo==0):
label = "FI=" + str(0) + "Hz, CF=" + str(round(fmean,1)) + 'Hz'
elif "_varinhn" in do:
label = "m(FI)=" + str(CFo) + "Hz, CF=" + str(round(fmean,1)) + 'Hz'
else:
label = "FI=" + str(CFo) + "Hz, CF=" + str(round(fmean,1)) + 'Hz'
# PLOT MAG
#print freq_used
#print xmax
iend = mlab.find(freq_used >= xmax)[0]
if (ax01 is not None) and ("_notransf_" not in do):
ax01.semilogx(freq_used[0:iend], 20*log10(mag[0,0:iend]), color=color, linewidth=linewidth, linestyle = linestyle, alpha=1, label=label)
ax01.set_title("Gain (dB)") #, fontsize=8)
if "_fit2" in do:
Target_fit2.append([])
freq_used2 = freq_used[0:iend]
mag2 = mag[0,0:iend] # / mag[0,0]
pha2 = pha[0,0:iend]
H2 = (mag2 * exp(pi / 180 * 1j * pha2))
Target_fit2[-1].append(CFo) # [0]
Target_fit2[-1].append(fmean) # [1]
Target_fit2[-1].append(freq_used2) # [2]
Target_fit2[-1].append(H2) # [3]
# PLOT PHASE
iend = mlab.find(freq_used >= xmax)[0]
if (ax01 is not None) and ("_notransf_" not in do):
ax01b.semilogx(freq_used[0:iend], pha[0,0:iend], color=color, linewidth=linewidth, linestyle = linestyle, alpha=1, label=label)
ax01b.set_title("Phase ($^\circ$)") #, fontsize=8)
# PLOT VAF
if ("_psd" in do) or ("_fft" in do) or ("_noqual" in do):
pass
else:
iend = mlab.find(freq_used >= xmax)[0]
if "SNR" in do:
ax02.semilogx(freq_used[0:iend], SNR[1][0,0:iend], linewidth=linewidth, color=color, alpha=1, label=label)
ax02.axhline(y=10, color='k', linestyle=':')
else:
if ("_fig8" in do) and ("_pos5" in do):
ax02.semilogx(freq_used[0:iend], VAF[1][0,0:iend]*100, linewidth=linewidth, color=color, alpha=1, linestyle = linestyle, label=label)
elif ("_fig8" in do) and ("_notransf_" in do):
ax02.semilogx(freq_used[0:iend], VAF[1][0,0:iend]*100, linewidth=linewidth, color=color, alpha=1, linestyle = linestyle, label=label)
elif ("_fig6" in do) or ("_fig8" in do):
ax02.semilogx(freq_used[0:iend], VAF[1][0,0:iend]*100, linewidth=linewidth, color=color, alpha=1, linestyle = linestyle)
else:
ax02.semilogx(freq_used[0:iend], VAF[1][0,0:iend]*100, linewidth=linewidth, color=color, alpha=1, linestyle = linestyle, label=label)
if "_fig" not in do:
ax02.set_title(do, fontsize=6)
elif "_pos1b" not in do:
ax02.set_title("VAF (%)") #, fontsize=8)
# PLOT DEFAULTS
if "_end" in do:
if ax01 is not None:
adjust_spines(ax01, ['left','bottom'], d_out = d_out, d_down = d_down)
ax01.set_xlabel("Hz", labelpad=-3)
if ax01b is not None:
adjust_spines(ax01b, ['left','bottom'], d_out = d_out, d_down = d_down)
ax01b.set_xlabel("Hz", labelpad=-3)
adjust_spines(ax02, ['left','bottom'], d_out = d_out, d_down = d_down)
ax02.set_xlabel("Hz", labelpad=-3)
elif '_left' in do:
if "_notransf_" not in do:
adjust_spines(ax01, ['left'], d_out = d_out, d_down = d_down)
adjust_spines(ax01b, ['left'], d_out = d_out, d_down = d_down)
adjust_spines(ax02, ['left','bottom'], d_out = d_out, d_down = d_down)
ax02.set_xlabel("Hz", labelpad=-5)
elif '_bottom' in do:
if ax01 is not None: adjust_spines(ax01, ['bottom'], d_out = d_out)
if ax01b is not None: adjust_spines(ax01b, ['bottom'], d_out = d_out)
adjust_spines(ax02, ['bottom'], d_out = d_out)
ax02.set_xlabel("Hz", labelpad=-5)
else:
if ax01 is not None: adjust_spines(ax01, ['left'], d_out = d_out)
if ax01b is not None: adjust_spines(ax01b, ['left'], d_out = d_out)
adjust_spines(ax02, ['left'], d_out = d_out)
if ax01 is not None: ax01.set_xscale('log')
if ax01b is not None: ax01b.set_xscale('log')
ax02.set_xscale('log')
if ("_cutf30" in do) or ("_cutf5" in do):
if ax01 is not None:
ax01.axis(xmin=0.3, xmax=xmax)
ax01.xaxis.set_ticks(array([1,10,20,30]))
ax01.set_xticklabels(('1', '10', '', '30'))
if ax01b is not None:
ax01b.axis(xmin=0.3, xmax=xmax)
ax01b.xaxis.set_ticks(array([1,10,20,30]))
ax01b.set_xticklabels(('1', '10', '', '30'))
ax02.axis(xmin=0.3, xmax=xmax)
ax02.xaxis.set_ticks(array([1,10,20, 30]))
ax02.set_xticklabels(('1', '10', '', '30'))
#if ("_cutf5" in do):
# if ax01 is not None:
# ax01.axis(xmin=0.3, xmax=xmax)
# ax01.xaxis.set_ticks(array([0.5,5]))
# ax01.set_xticklabels(('0.5', '5'))
# if ax01b is not None:
# ax01b.axis(xmin=0.3, xmax=xmax)
# ax01b.xaxis.set_ticks(array([0.5,5]))
# ax01b.set_xticklabels(('0.5', '5'))
# ax02.axis(xmin=0.3, xmax=xmax)
# ax02.xaxis.set_ticks(array([0.5,5]))
# ax02.set_xticklabels(('0.5', '5'))
#plt.show()
elif ("_cn_" in do) or ("_bn_" in do):
if "_psd" in do:
if ax01 is not None:
ax01.axis(xmin=1, xmax=50)
ax01.xaxis.set_ticks(array([1,10,20,40]))
ax01.set_xticklabels(('1', '10', '20', '40'))
if ax01b is not None:
ax01b.axis(xmin=1, xmax=50)
ax01b.xaxis.set_ticks(array([1,10,20,40]))
ax01b.set_xticklabels(('1', '10', '20', '40'))
ax02.axis(xmin=1, xmax=50)
ax02.xaxis.set_ticks(array([1,10,20,40]))
ax02.set_xticklabels(('1', '10', '20', '40'))
else:
if ax01 is not None:
ax01.axis(xmin=0.3, xmax=xmax)
if "fig5" in do:
ax01.xaxis.set_ticks(array([1,20]))
ax01.set_xticklabels(('1', '20'))
else:
ax01.xaxis.set_ticks(array([1,10,20]))
ax01.set_xticklabels(('1', '10', '20'))
if ax01b is not None:
ax01b.axis(xmin=0.3, xmax=xmax)
if "fig5" in do:
ax01b.xaxis.set_ticks(array([1,20]))
ax01b.set_xticklabels(('1', '20'))
else:
ax01b.xaxis.set_ticks(array([1,10,20]))
ax01b.set_xticklabels(('1', '10', '20'))
ax02.axis(xmin=0.3, xmax=xmax)
if "fig5" in do:
ax02.xaxis.set_ticks(array([1,20]))
ax02.set_xticklabels(('1', '20'))
elif "fig7" in do:
ax02.xaxis.set_ticks(array([1,20]))
ax02.set_xticklabels(('1', '20'))
else:
ax02.xaxis.set_ticks(array([1,10,20]))
ax02.set_xticklabels(('1', '10', '20'))
if "_wn_" in do:
if ax01 is not None:
ax01.xaxis.set_ticks(array([1,10,100]))
ax01.set_xticklabels(('1', '10', '100'))
ax01.axvline(x=fmean, color='k', linestyle=':')
if ax01b is not None:
ax01b.xaxis.set_ticks(array([1,10,100]))
ax01b.set_xticklabels(('1', '10', '100'))
ax01b.axvline(x=fmean, color='k', linestyle=':')
ax02.xaxis.set_ticks(array([1,10,100]))
ax02.set_xticklabels(('1', '10', '100'))
ax02.axvline(x=fmean, color='k', linestyle=':')
# SET YAXIS
if ("_label" in do):
if "_fig7" in do:
if ax01b is not None:
lg = ax01b.legend(loc='upper center', bbox_to_anchor=(0.5, -0.05), handlelength=3, ncol=2, handletextpad=0.5, columnspacing=1)
#lg.draw_frame(False)
fr = lg.get_frame()
fr.set_lw(0.2)
elif "_fig6" in do:
if "_talk_" in do:
pass
elif "_fig6b" in do:
if ax01b is not None:
lg = ax01b.legend(loc='upper center', bbox_to_anchor=(0.4, -0.05), handlelength=3, ncol=3, handletextpad=0.5, columnspacing=1)
#lg.draw_frame(False)
fr = lg.get_frame()
fr.set_lw(0.2)
else:
if ax01b is not None:
#lg = ax01b.legend(loc='upper center', bbox_to_anchor=(0.5, -0.05), handlelength=3, ncol=2, handletextpad=0.5, columnspacing=1)
lg = ax01b.legend(labelspacing=0.2, loc=3, bbox_to_anchor=(-0.06, 0), handlelength=0, handletextpad=0.1, numpoints=1)
#lg.draw_frame(False)
fr = lg.get_frame()
fr.set_lw(0.2)
color_v.append(color)
txt = lg.get_texts()
for i, t in enumerate(txt):
t.set_color(color_v[i])
if "_first_" in do:
ax02.axhline(y=-1, xmin=0, xmax=0, color='k', linestyle='-', label="iIF", linewidth=linewidth)
ax02.axhline(y=-1, xmin=0, xmax=0, color='k', linestyle=':', label="Poisson", linewidth=linewidth)
#if "_pos1b_" in do:ax02.axhline(y=-1, xmin=0, xmax=0, color=p1, linestyle='-', label=r"$\mathsf{N_{I}}$=10", linewidth=linewidth)
lg = ax02.legend(labelspacing=0.2, loc=3, bbox_to_anchor=(-0.05,-0.05), handlelength=1.5, handletextpad=0.1)
#lg.draw_frame(False)
fr = lg.get_frame()
fr.set_lw(0.2)
elif "_talk_" in do:
pass
#lg = ax01b.legend(labelspacing=0.2, loc=3, handlelength=1.5, handletextpad=0.1)
##lg.draw_frame(False)
#fr = lg.get_frame()
#fr.set_lw(0.2)
elif ("_fig5_" in do):
lg = ax02.legend(labelspacing=0.2, loc=3, bbox_to_anchor=(-0.08,-0.2), handlelength=1.5, handletextpad=0.1)
#lg.draw_frame(False)
fr = lg.get_frame()
fr.set_lw(0.2)
elif ("_fig8_" in do) and ("_notransf_" not in do):
#if "_label31_" in do:
# ax01b.axhline(y=-1, xmin=0, xmax=0, color=p1, linestyle='-', label="N=200, p-p", linewidth=linewidth)
#if "_label32_" in do:
# ax01b.axhline(y=-1, xmin=0, xmax=0, color=br1, linestyle='-', label="N=200", linewidth=linewidth)
lg = ax01b.legend(labelspacing=0.05, loc=3, bbox_to_anchor=(-0.1,-0.13), handlelength=0, handletextpad=0.1, numpoints=1)
#lg.draw_frame(False)
fr = lg.get_frame()
fr.set_lw(0.2)
color_v.append(color)
txt = lg.get_texts()
for i, t in enumerate(txt):
t.set_color(color_v[i])
elif ("_fig8_" in do) and ("_pos5_" in do):
#lg = ax02.legend(labelspacing=0.2, loc=4, bbox_to_anchor=(1.15,-0.1), handlelength=1.5, handletextpad=0.1)
lg = ax02.legend(labelspacing=0.2, loc=4, bbox_to_anchor=(1.0,-0.1), handlelength=1.5, handletextpad=0.1)
#lg.draw_frame(False)
fr = lg.get_frame()
fr.set_lw(0.2)
color_v.append(color)
txt = lg.get_texts()
for i, t in enumerate(txt):
t.set_color(color_v[i])
ax4.set_title("Sample reconstruction")
ax8.set_title("Sample reconstruction")
ax12.set_title("Sample reconstruction")
elif ("_fig8_" in do) and ("_notransf_" in do):
if "none" in do:
lg = ax02.legend(labelspacing=0.05, loc=3, bbox_to_anchor=(-0.02,0.24), handlelength=0, handletextpad=0.1, numpoints=1)
elif "_pos3_" in do:
lg = ax02.legend(labelspacing=0.05, loc=3, bbox_to_anchor=(0.6,-0.1), handlelength=1.5, handletextpad=0.1) # , numpoints=1
else:
lg = ax02.legend(labelspacing=0.05, loc=3, bbox_to_anchor=(0.6,-0.07), handlelength=0, handletextpad=0.1, numpoints=1)
#lg.draw_frame(False)
fr = lg.get_frame()
fr.set_lw(0.2)
color_v.append(color)
txt = lg.get_texts()
for i, t in enumerate(txt):
t.set_color(color_v[i])
elif ("_notransf_" not in do):
lg = ax01b.legend(labelspacing=0.2, loc=3, bbox_to_anchor=(-0.05,-0.15), handlelength=1.5, handletextpad=0.1)
#lg.draw_frame(False)
fr = lg.get_frame()
fr.set_lw(0.2)
if ("_fig5_" in do) and ("_talk_" in do) and (i==0) and (amod[0] == 1):
ax02.axhline(y=0, xmin=-1, xmax=-1, color='k', linestyle='-', label="N=1, iIF")
ax02.axhline(y=0, xmin=-1, xmax=-1, color='k', linestyle=':', label="N=40, Poisson")
lg = ax02.legend(labelspacing=0.2, loc=3, handlelength=1.5, handletextpad=0.1)
#lg.draw_frame(False)
fr = lg.get_frame()
fr.set_lw(0.2)
if ("_fig5" in do):
if "_synno_" in do:
ax01.axis(ymin=-1, ymax=1)
ax01.yaxis.set_ticks(array([-1, 0, 1]))
ax01.set_yticklabels(('-1', '0', '1'))
ax01b.yaxis.set_ticks(array([-10, 0, 10]))
ax01b.set_yticklabels(('-10', '0', '10'))
dup = 1.5
if ("_talk_" in do):
dup = 1.25
if "_first_" in do: ax01b.text(0.5, dup, 'Spike input', transform=ax01b.transAxes, fontsize = params['text.fontsize'], va='center', ha='center')
if "_synampagr_" in do:
ax01.axis(ymin=-3, ymax=0.1)
ax01.yaxis.set_ticks(array([-3,-2,-1,0]))
ax01.set_yticklabels(('-3', '-2', '-1', '0'))
ax01b.axis(ymin=-25, ymax=5)
ax01b.yaxis.set_ticks(array([-20, -10, 0]))
ax01b.set_yticklabels(('-20', '-10', '0'))
dup = 1.5
if ("_talk_" in do):
dup = 1.25
if "_first_" in do: ax01b.text(0.5, dup, 'AMPA synapse conductance', transform=ax01b.transAxes, fontsize = params['text.fontsize'], va='center', ha='center')
if "_synnmdagr_" in do:
ax01.axis(ymin=-5, ymax=0.2)
ax01.yaxis.set_ticks(array([-5,-4, -3, -2, -1, 0]))
ax01.set_yticklabels(('-5','-4', '-3', '-2', '-1', '0'))
ax01b.axis(ymin=-40, ymax=1)
ax01b.yaxis.set_ticks(array([-40, -30, -20, -10, 0]))
ax01b.set_yticklabels(('-40', '-30', '-20', '-10', '0'))
dup = 1.5
if ("_talk_" in do): dup = 1.25
if "_first_" in do: ax01b.text(0.5, dup, 'NMDA synapse conductance', transform=ax01b.transAxes, fontsize = params['text.fontsize'], va='center', ha='center')
if "_syngabagr_" in do:
ax01.axis(ymin=-8.5, ymax=0.5)
ax01.yaxis.set_ticks(array([-8, -6, -4, -2, 0]))
ax01.set_yticklabels(('-8', '-6', '-4', '-2', '0'))
ax01b.axis(ymin=-41, ymax=1)
ax01b.yaxis.set_ticks(array([-40, -30, -20, -10, 0]))
ax01b.set_yticklabels(('-40', '-30', '-20', '-10', '0'))
dup = 1.5
if ("_talk_" in do): dup = 1.25
if "_first_" in do: ax01b.text(0.5, dup, 'GABA synapse conductance', transform=ax01b.transAxes, fontsize = params['text.fontsize'], va='center', ha='center')
if ("_talk_" in do):
if ("_a05_" in do): ax02.text(0.5, 55, "a=" + str(amod), color=color, fontsize = params['legend.fontsize'])
if ("_a1_" in do): ax02.text(0.5, 80, "a=" + str(amod), color=color, fontsize = params['legend.fontsize'])
ax02.axis(ymin=50, ymax=100)
ax02.yaxis.set_ticks(array([50,60,70,80,90,100]))
ax02.set_yticklabels(('50','60','70','80','90','100'))
if ("_fig6_" in do) and (("_pos1_" in do) or ("_pos1b_" in do)):
if ax01 is not None:
ax01.axis(ymin=-7, ymax=0.5)
#ax01.yaxis.set_ticks(array([-5, -4, -3, -2, -1, 0, 1]))
#ax01.set_yticklabels(('-5','-4', '-3', '-2', '-1', '0', '1'))
if ax01b is not None:
ax01b.axis(ymin=-40, ymax=11)
ax01b.yaxis.set_ticks(array([-40, -30, -20, -10, 0, 10]))
ax01b.set_yticklabels(('-40', '-30', '-20', '-10', '0', '10'))
if ("_first_" in do): ax02.text(0.4, 80, "N="+str(N[0]) , color='k', fontsize = 10)
dup = 1.35
if ("_talk_" in do):
dup = 1.25
else:
if ("_first_" in do):
pass
#ax01b.text(0.5, dup, r'Population (N=10)', transform=ax01b.transAxes, fontsize=10, va='center', ha='center')
ax02.axis(ymin=40, ymax=100)
ax02.yaxis.set_ticks(array([40,50,60,70,80,90,100]))
ax02.set_yticklabels(('40','50','60','70','80','90','100'))
if (amod[0] == 0.1): ax02.text(5, 45, "a=0.1", color=color, fontsize = 8)
if ("_talk_" in do):
if ("_label11_" in do): ax01b.text(0.3, -7, "FI=0, CF=" + str(int(fmean)) + "Hz", color=color, fontsize = params['legend.fontsize'])
if ("_label12_" in do): ax01b.text(0.3, -10, "FI=0, CF=" + str(int(fmean)) + "Hz", color=color, fontsize = params['legend.fontsize'])
if ("_label13_" in do): ax01b.text(0.3, 7, "FI=4Hz, CF=" + str(int(fmean)) + "Hz", color=color, fontsize = params['legend.fontsize'])
if ("_label14_" in do): ax01b.text(0.3, 10, "m(FI)=4Hz, CF=" + str(int(fmean)) + "Hz", color=color, fontsize = params['legend.fontsize'])
if (("_fig6b_" in do) and ("_pos1_" in do)) or (("_fig6_" in do) and ("_pos2_" in do)):
if ax01 is not None:
ax01.axis(ymin=-14, ymax=3)
ax01.yaxis.set_ticks(array([-16, -14, -12,-10, -8, -6, -4, -2, 0, 2]))
ax01.set_yticklabels(('-16', '-14', '-12','-10','-8', '-6', '-4', '-2', '0', '2'))
if ax01b is not None:
ax01b.axis(ymin=-80, ymax=11)
ax01b.yaxis.set_ticks(array([-90, -80, -70, -60, -50, -40, -30, -20, -10, 0, 10]))
ax01b.set_yticklabels(('-90', '-80', '-70','-60','-50', '-40','-30','-20','-10', '0', '10'))
ax02.axis(ymin=0, ymax=100)
ax02.yaxis.set_ticks(array([0,10,20,30,40,50,60,70,80,90,100]))
ax02.set_yticklabels(('0','10','20','30','40','50','60','70','80','90','100'))
if ("_talk_" in do):
if ("_label5_" in do): ax01b.text(0.3, -9, "S=Se+" + str(round(inh_factor[0],2)) + "*Si", color=color, fontsize = params['legend.fontsize']) # "m(FI)=4Hz, CF=" + str(int(fmean)) + "Hz,
if ("_label7_" in do): ax01b.text(0.3, -30, "S = Si", color=color_vec[0][i], fontsize = params['legend.fontsize']) # "m(FI)=4Hz, CF=" + str(int(fmean)) + "Hz,
if ("_label9_" in do): ax01b.text(0.3, 9, "S = 0.5*Se1 + 0.5*Se2", color=color, fontsize = params['legend.fontsize']) # "m(FI)=4Hz, CF=" + str(int(fmean)) + "Hz,
if ("_fig7" in do) and ("_pos1_" in do):
if "_notransf_" not in do:
ax01.axis(ymin=-12, ymax=3)
ax01.yaxis.set_ticks(array([-12, -10, -8, -6, -4, -2, 0, 2]))
ax01.set_yticklabels(('-12', '', '-8', '', '-4', '', '0', ''))
ax01b.axis(ymin=-70, ymax=10)
ax01b.yaxis.set_ticks(array([-70, -60, -50, -40, -30, -20, -10, 0, 10]))
ax01b.set_yticklabels(('', '-60', '', '-40', '', '-20', '', '0', ''))
#if ("_first_" in do): ax01b.text(0.5, 1.3, r'Population (N=10, a=1), Inhibition Frequency (FI) variable', transform=ax01b.transAxes, fontsize=10, va='center', ha='center')
ax02.axis(ymin=68, ymax=100)
#ax02.yaxis.set_ticks(array([0,10,20,30,40,50,60,70,80,90,100]))
#ax02.set_yticklabels(('0','10','20','30','40','50','60','70','80','90','100'))
ax02.yaxis.set_ticks(array([70, 80,90,100]))
ax02.set_yticklabels(('70', '80','90','100'))
#ax01b.text(0.5, 1.3, r'Population (N=10, a=0.5), signal through GABA', transform=ax01b.transAxes, fontsize=10, va='center', ha='center')
#ax01b.text(0.5, 1.3, r'Single granule cell (N=1, a=0.5)', transform=ax01b.transAxes, fontsize=10, va='center', ha='center')
#ax01b.text(0.5, 1.3, r'Single granule cell (N=1, a=0.5)', transform=ax01b.transAxes, fontsize=10, va='center', ha='center')
#ax01b.text(0.5, 1.3, r'Population (N=10, a=0.5)', transform=ax01b.transAxes, fontsize=10, va='center', ha='center')
#ax01b.text(0.5, 1.3, r'Population (N=10, a=0.5), two input signals', transform=ax01b.transAxes, fontsize=10, va='center', ha='center')
if ("_fig7" in do) and ("_pos2_" in do):
if "_notransf_" not in do:
ax01.axis(ymin=-12, ymax=3)
ax01.yaxis.set_ticks(array([-12, -10, -8, -6, -4, -2, 0, 2]))
ax01.set_yticklabels(('-12', '', '-8', '', '-4', '', '0', ''))
ax01b.axis(ymin=-70, ymax=10)
ax01b.yaxis.set_ticks(array([-70, -60, -50, -40, -30, -20, -10, 0, 10]))
ax01b.set_yticklabels(('', '-60', '', '-40', '', '-20', '', '0', ''))
#if ("_first_" in do): ax01b.text(0.5, 1.3, r'Population (N=10, a=1), Signal through inhibition', transform=ax01b.transAxes, fontsize=10, va='center', ha='center')
#ax02.axis(ymin=0, ymax=100)
#ax02.yaxis.set_ticks(array([0,10,20,30,40,50,60,70,80,90,100]))
#ax02.set_yticklabels(('0','10','20','30','40','50','60','70','80','90','100'))
ax02.axis(ymin=68, ymax=100)
#ax02.yaxis.set_ticks(array([70, 80,90,100]))
#ax02.set_yticklabels(('70', '80','90','100'))
if "_first_" in do:
ax02.axhline(y=-1, xmin=0, xmax=0, color=o1, linestyle='-', label="100%,\n"+r"m($\mathsf{F_{I}}$)=6sp/s", linewidth=linewidth)
ax02.axhline(y=-1, xmin=0, xmax=0, color=o1, linestyle=':', label="45%,\n"+r"m($\mathsf{F_{I}}$)=40sp/s", linewidth=linewidth)
lg = ax02.legend(labelspacing=0.3, loc=3, bbox_to_anchor=(-0.16, -0.06), handlelength=1.5, handletextpad=0)
#lg.draw_frame(False)
fr = lg.get_frame()
fr.set_lw(0.2)
if ("_fig7" in do) and ("_pos3_" in do):
if "_notransf_" not in do:
ax01.axis(ymin=-12, ymax=3)
ax01.yaxis.set_ticks(array([-12, -10, -8, -6, -4, -2, 0, 2]))
ax01.set_yticklabels(('-12', '', '-8', '', '-4', '', '0', ''))
ax01b.axis(ymin=-70, ymax=10)
ax01b.yaxis.set_ticks(array([-70, -60, -50, -40, -30, -20, -10, 0, 10]))
ax01b.set_yticklabels(('', '-60', '', '-40', '', '-20', '', '0', ''))
#if ("_first_" in do): ax01b.text(0.5, 1.3, r'Population (N=10, a=1), Signal through inhibition', transform=ax01b.transAxes, fontsize=10, va='center', ha='center')
#ax02.axis(ymin=0, ymax=100)
#ax02.yaxis.set_ticks(array([0,10,20,30,40,50,60,70,80,90,100]))
#ax02.set_yticklabels(('0','10','20','30','40','50','60','70','80','90','100'))
ax02.axis(ymin=68, ymax=100)
#ax02.yaxis.set_ticks(array([70, 80,90,100]))
#ax02.set_yticklabels(('70', '80','90','100'))
if "_first_" in do:
ax02.axhline(y=-1, xmin=0, xmax=0, color=b1, linestyle='-', label="100%,\n"+r"m($\mathsf{F_{I}}$)=6sp/s", linewidth=linewidth)
ax02.axhline(y=-1, xmin=0, xmax=0, color=b1, linestyle=':', label="45%,\n"+r"m($\mathsf{F_{I}}$)=40sp/s", linewidth=linewidth)
lg = ax02.legend(labelspacing=0.3, loc=3, bbox_to_anchor=(-0.14, -0.06), handlelength=1.5, handletextpad=0)
#lg.draw_frame(False)
fr = lg.get_frame()
fr.set_lw(0.2)
if ("_fig8" in do) and (("_pos1_" in do) or ("_pos1b_" in do)):
if "_notransf_" not in do:
ax01.axis(ymin=-1, ymax=1)
ax01.yaxis.set_ticks(array([-5, 0, 5]))
ax01.set_yticklabels(('-5', '0', '5'))
ax01b.axis(ymin=-50, ymax=50)
ax01b.yaxis.set_ticks(array([-40, 0, 40]))
ax01b.set_yticklabels(('-40', '0', '40'))
ax02.axis(ymin=79, ymax=101)
ax02.yaxis.set_ticks(array([80,90,100]))
ax02.set_yticklabels(('80','90','100'))
if ("_fig8" in do) and (("_pos2_" in do) or ("_pos2b_" in do)):
if "_notransf_" not in do:
ax01.axis(ymin=-10, ymax=12)
ax01.yaxis.set_ticks(array([-10,-5, 0, 5, 10]))
ax01.set_yticklabels(('-10', '-5','0', '5', '10'))
ax01b.axis(ymin=-120, ymax=130)
ax01b.yaxis.set_ticks(array([-80,-40, 0, 40, 80, 120]))
ax01b.set_yticklabels(('-80', '-40', '0', '40', '80', '120'))
ax02.axis(ymin=0, ymax=100)
ax02.yaxis.set_ticks(array([0,20,40,60,80,100]))
ax02.set_yticklabels(('0','20','40','60','80','100'))
#if ("_colorr2_pos2b_dotted" in do):
# ax02.axhline(y=-1, xmin=0, xmax=0, color='k', linestyle='-', label="GrC", linewidth=linewidth)
# ax02.axhline(y=-1, xmin=0, xmax=0, color='k', linestyle=':', label="IF", linewidth=linewidth)
# lg = ax02.legend(labelspacing=0.2, loc=4, bbox_to_anchor=(1.1,0), handlelength=1.5, handletextpad=0.1)
# #lg.draw_frame(False)
# fr = lg.get_frame()
# fr.set_lw(0.2)
if ("_fig8" in do) and (("_pos3_" in do) or ("_pos3b_" in do)):
if "_notransf_" not in do:
ax01.axis(ymin=-3, ymax=16)
ax01.yaxis.set_ticks(array([0,4,8,12,16]))
ax01.set_yticklabels(('0', '4','8', '12', '16'))
ax01b.axis(ymin=-80, ymax=55)
ax01b.yaxis.set_ticks(array([-80, -40, 0, 40]))
ax01b.set_yticklabels(('-80', '-40', '0', '40'))
ax02.axis(ymin=0, ymax=100)
ax02.yaxis.set_ticks(array([0,20,40,60,80,100]))
ax02.set_yticklabels(('0','20','40','60','80','100'))
#if ("_pos3_label29_" in do):
# ax02.axhline(y=-1, xmin=0, xmax=0, color='k', linestyle='-', label="GrC", linewidth=linewidth)
# ax02.axhline(y=-1, xmin=0, xmax=0, color='k', linestyle=':', label="IF", linewidth=linewidth)
# lg = ax02.legend(labelspacing=0.2, loc=4, bbox_to_anchor=(1.1,0), handlelength=1.5, handletextpad=0.1)
# #lg.draw_frame(False)
# fr = lg.get_frame()
# fr.set_lw(0.2)
if ("_fig8" in do) and ("_pos5_" in do):
ax02.axis(ymin=0, ymax=100)
ax02.yaxis.set_ticks(array([0,20,40,60,80,100]))
ax02.set_yticklabels(('0','20','40','60','80','100'))
if MPI.COMM_WORLD.rank == 0:
plotname = "./figs/Pub/" + str(prefix)
savefig(plotname + ".pdf", dpi = 300) # save it
savefig(plotname + ".png", dpi = 300) # save it
#os.system('rsvg-convert -f pdf -o ' + plotname +'.pdf ' + plotname + '.svg')
if "_png_" in do:
plt.savefig(plotname + ".png", dpi = 300, transparent=True) # save it
# save additional information:
thisinfo = "Variable=" + str(CFo) + ", m(CF)=" + str(fmean) + 'Hz, std(CF)=' + str(fmstd) + 'Hz, max(CF)=' + str(fmax) + 'Hz, mean(CV)=' + str(fcvm) + ', inh_factor=' + str(inh_factor) + ' ,m(VAF)=' + str(np.mean(VAF[1][0,0:iend])) + ", m(base)=" + str(fbase) + "Hz, std(base)=" + str(fbstd)
fo = open("./figs/txt/" + str(prefix) + ".txt" , "wb")
fo.write(thisinfo)
fo.close()
if ("_talk_" in do) or ("_addplot_" in do):
from pyPdf import PdfFileReader, PdfFileWriter
output = PdfFileWriter()
pdfOne = PdfFileReader(file(plotname + ".pdf", "rb"))
input1 = pdfOne.getPage(0)
if "_fig6b_" in do:
pdfTwo = PdfFileReader(file("./figs/Inserts/intro_syndiff.pdf", "rb"))
input1.mergeTransformedPage(pdfTwo.getPage(0),[1, 0, 0, 1, 10, 150])
if "_fig7_" in do:
if "poster" in pars.opt:
pdfTwo = PdfFileReader(file("./figs/Inserts/Fig7_clipart_poster.pdf", "rb"))
else:
pdfTwo = PdfFileReader(file("./figs/Inserts/Fig7_clipart.pdf", "rb"))
input1.mergeTransformedPage(pdfTwo.getPage(0),[1, 0, 0, 1, 0, 162])
output.addPage(input1)
outputStream = file(plotname + "_merge.pdf", "wb")
output.write(outputStream)
outputStream.close()
if do_run_now:
pop.delall()
del pop
pop = None
results = None
elif ("_CF-" in do):
if MPI.COMM_WORLD.rank == 0:
if ("_pos13_" in do):
axcf = ax13
else:
axcf = ax14
if ("_cont_" in do):
use_old = True
else:
use_old = False
t_stim = 100*s # only for cnoise
CF_vec = nans(len(x_vec)) # create NaN vector
N_need_vec = nans(len(x_vec)) # create NaN vector
fmax_v = nans(len(x_vec)) # create NaN vector
fmstd_v = nans(len(x_vec)) # create NaN vector
fcvm_v = nans(len(x_vec)) # create NaN vector
VAF_min_vec = nans((len(N_vec),len(x_vec)))
CF_min_vec = nans((len(N_vec),len(x_vec)))
if (Nstop is False):
CF_min_vec = np.fliplr(CF_min_vec)
VAF_min_vec = np.fliplr(VAF_min_vec)
x_vec = x_vec[::-1]
filepath = data_dir + '/' + str(prefix) + "_results.p"
if MPI.COMM_WORLD.rank == 0: print filepath
if do_run_now or (os.path.isfile(filepath) is False):
ni = 0
xi = 0
if use_old and (os.path.isfile(filepath) is True): # start from results saved before!
if MPI.COMM_WORLD.rank == 0: print "- using old DATA"
results = pickle.load( gzip.GzipFile( filepath, "rb" ) )
CF_min_vec, VAF_min_vec, CF_vec, N_need_vec, freq_used, mag, pha, VAF = results.get('CF_min_vec'),results.get('VAF_min_vec'), results.get('CF_vec'), results.get('N_need_vec'), results.get('freq_used'), results.get('mag'), results.get('pha'), results.get('VAF')
#xi, ni = results.get('xi'), results.get('ni')
#x_vec = results.get('x_vec')
fmax_v, fmstd_v, fcvm_v = results.get('fmax_v'),results.get('fmstd_v'), results.get('fcvm_v')
if MPI.COMM_WORLD.rank == 0: print np.shape(x_vec), np.shape(N_need_vec), np.shape(CF_vec), np.shape(CF_min_vec), np.shape(VAF_min_vec)
if MPI.COMM_WORLD.rank == 0: print np.shape(fmax_v), np.shape(fmstd_v), np.shape(fcvm_v)
CF_min_vec = np.delete(CF_min_vec, [11,12,13,14], 1)
VAF_min_vec = np.delete(VAF_min_vec, [11,12,13,14], 1)
fmax_v = np.delete(fmax_v, [11,12,13,14])
fmstd_v = np.delete(fmstd_v, [11,12,13,14])
fcvm_v = np.delete(fcvm_v, [11,12,13,14])
N_need_vec = np.delete(N_need_vec, [11,12,13,14])
CF_vec = np.delete(CF_vec, [11,12,13,14])
if MPI.COMM_WORLD.rank == 0: print np.shape(x_vec), np.shape(N_need_vec), np.shape(CF_vec), np.shape(CF_min_vec), np.shape(VAF_min_vec)
if MPI.COMM_WORLD.rank == 0: print np.shape(fmax_v), np.shape(fmstd_v), np.shape(fcvm_v)
results = {'xi':xi, 'ni':ni, 'x_vec':x_vec, 'CF_vec':CF_vec, 'CF_min_vec':CF_min_vec, 'VAF_min_vec':VAF_min_vec, 'N_need_vec':N_need_vec, 'freq_used':freq_used,'mag':mag,'pha':pha,'VAF':VAF, 'fmax_v':fmax_v, 'fmstd_v':fmstd_v, 'fcvm_v':fcvm_v}
pickle.dump( results, gzip.GzipFile( filepath, "wb" ) )
if (len(N_vec) > np.shape(VAF_min_vec)[0]) or (len(x_vec) > np.shape(VAF_min_vec)[1]):
if MPI.COMM_WORLD.rank == 0: print len(N_vec), np.shape(VAF_min_vec)[0]
if MPI.COMM_WORLD.rank == 0: print "- Reshaping CF_min_vec and VAF_min_vec"
CF_vec_old = CF_vec
N_need_vec_old = N_need_vec
CF_min_vec_old = CF_min_vec
VAF_min_vec_old = VAF_min_vec
fmax_v_old = fmax_v
fmstd_v_old = fmstd_v
fcvm_v_old = fcvm_v
CF_min_vec = nans((len(N_vec), len(x_vec))) # create NaN vector
VAF_min_vec = nans((len(N_vec), len(x_vec))) # create NaN vector
CF_vec = nans(len(x_vec))
N_need_vec = nans(len(x_vec))
fmax_v = nans(len(x_vec)) # create NaN vector
fmstd_v = nans(len(x_vec)) # create NaN vector
fcvm_v = nans(len(x_vec))
CF_min_vec[0:np.shape(CF_min_vec_old)[0],0:np.shape(CF_min_vec_old)[1]] = CF_min_vec_old
VAF_min_vec[0:np.shape(VAF_min_vec_old)[0],0:np.shape(VAF_min_vec_old)[1]] = VAF_min_vec_old
fmax_v[0:np.shape(fmax_v_old)[0]] = fmax_v_old
fmstd_v[0:np.shape(fmstd_v_old)[0]] = fmstd_v_old
fcvm_v[0:np.shape(fcvm_v_old)[0]] = fcvm_v_old
CF_vec[0:np.shape(CF_vec_old)[0]] = CF_vec_old
N_need_vec[0:np.shape(N_need_vec_old)[0]] = N_need_vec_old
if MPI.COMM_WORLD.rank == 0: print np.shape(x_vec), np.shape(N_need_vec), np.shape(CF_vec), np.shape(CF_min_vec), np.shape(VAF_min_vec)
if MPI.COMM_WORLD.rank == 0: print np.shape(fmax_v), np.shape(fmstd_v), np.shape(fcvm_v)
#if MPI.COMM_WORLD.rank == 0: print CF_min_vec, VAF_min_vec, x_vec, fmax_v, fmstd_v, fcvm_v
#if MPI.COMM_WORLD.rank == 0: print np.shape(CF_min_vec), np.shape(VAF_min_vec), np.shape(x_vec), np.shape(fmax_v), np.shape(fmstd_v), np.shape(fcvm_v)
if Nstop:
xi0 = where(isnan(N_need_vec))[-1][0]-1 # where(N_need_vec>0)[-1][-1] # find last results
ni = where(N_vec == N_need_vec[xi0])[-1][0] # find last min N
#if MPI.COMM_WORLD.rank == 0: print "xi0:", xi0, "ni:", ni, N_vec, N_need_vec[xi0]
#ni = (ni-1) # start at higher value next time, HACK
if ni < 0:
ni = 0
xi = xi0+1
if (Nstop is False) and Flip:
CF_min_vec = np.fliplr(CF_min_vec)
VAF_min_vec = np.fliplr(VAF_min_vec)
x_vec = x_vec[::-1]
#else:
# ni += 1
#if MPI.COMM_WORLD.rank == 0: print "xi,", xi, "ni,", ni, len(N_vec), VAF_min_vec
#if MPI.COMM_WORLD.rank == 0: print fmax_v, fmstd_v, fcvm_v:
#if MPI.COMM_WORLD.rank == 0: print np.shape(x_vec), np.shape(N_need_vec), np.shape(CF_vec), np.shape(CF_min_vec), np.shape(VAF_min_vec)
#if MPI.COMM_WORLD.rank == 0: print np.shape(fmax_v), np.shape(fmstd_v), np.shape(fcvm_v)
#if MPI.COMM_WORLD.rank == 0: print CF_vec, N_need_vec, x_vec, fmax_v, fmstd_v, fcvm_v
while xi < len(x_vec): #for xi, x in enumerate(x_vec): # cycle through input vector x_vec
x = x_vec[xi]
if MPI.COMM_WORLD.rank == 0: print "x=", x
if x_vec_type == "ex":
g_syn_ex = [x]*len(N)
g_syn_inh = [0]*len(N)
n_syn_inh = [0]*len(N)
elif x_vec_type == "constinh":
g_syn_ex = [1]*len(N)
g_syn_inh = [0]*len(N)
n_syn_inh = [0]*len(N)
fluct_g_e0 = [0]
fluct_g_i0 = [x*nS]*len(N)
fluct_std_e = [0]
fluct_std_i = [0]
fluct_tau_e = 0*ms
fluct_tau_i = 0*ms
if MPI.COMM_WORLD.rank == 0: print "fluct_g_i0:", fluct_g_i0
adjinh = True
inh_hold = [0]*len(N)
if "_twopop_" in do:
fluct_g_e0 = [fluct_g_e0[0], fluct_g_e0[0]]
fluct_g_i0 = [fluct_g_i0[0],fluct_g_i0[0]]
fluct_std_e = [fluct_std_e[0], fluct_std_e[0]]
fluct_std_i = [fluct_std_i[0], fluct_std_i[0]]
g_syn_ex = [g_syn_ex[0], g_syn_ex[0]]
inh_hold = [inh_hold[0], inh_hold[0]]
g_syn_inh = [g_syn_inh[0], g_syn_inh[0]]
elif x_vec_type == "inhin":
g_syn_ex = [1]*len(N)
g_syn_inh = [1]*len(N)
n_syn_inh = [4]*len(N)
inh_hold = [x]*len(N)
if MPI.COMM_WORLD.rank == 0: print "inh_hold:", inh_hold
adjfinh = True
elif x_vec_type == "inh":
g_syn_ex = [1]*len(N)
g_syn_inh = [1]*len(N)
n_syn_inh = [4]*len(N)
inh_hold = [x]*len(N)
if MPI.COMM_WORLD.rank == 0: print "inh_hold:", inh_hold
adjfinh = True
if ("_lowinh" in do):
g_syn_inh = [0.4]*len(N) #[0.354]
elif x_vec_type == "in":
ihold = [x]*len(N)
g_syn_inh = [0]*len(N)
n_syn_inh = [0]*len(N)
g_syn_ex = [-1]*len(N)
else:
g_syn_ex = [1]*len(N)
g_syn_inh = [1]*len(N)
n_syn_inh = [1] *len(N)
do_break = 0
#for ni, N in enumerate(N_vec): # cycle through input vector N_vec
# N = [N]
while ni < len(N_vec): #in range(ni_start, len(N_vec)):
if "_CF-N" in do:
N = [N_vec[ni]]*len(N)
syn_max_mf = N # possible mossy fibres per synapse
syn_max_inh = N # possible Golgi cells per synapse
elif "_CF-cutf" in do:
cutf = N_vec[ni]
xmax = cutf
#if MPI.COMM_WORLD.rank == 0:
# print ni
# print xi
# print CF_min_vec
# print CF_min_vec[ni][xi]
if isnan(CF_min_vec[ni][xi]) == False:
if "_CF-N" in do:
print "Jump, value for x=", x, "N=", N, "exists"
elif "_CF-cutf" in do:
print "Jump, value for x=", x, "cutf=", cutf, "exists"
ni += 1
else:
if do_break == 1:
print "BREAK, but why here?"
break
if MPI.COMM_WORLD.rank == 0:
if "_CF-N" in do:
print "N=", N
elif "_CF-cutf" in do:
print "cutf=", cutf
pickle_prefix = prefix + "_x" + str(x)
pop = Population(cellimport = cellimport, celltype = celltype, cell_exe = cell_exe, N = N, temperature = temperature, ihold = ihold, ihold_sigma = ihold_sigma, amp = amp, amod = amod, give_freq = give_freq, do_run = do_run, pickle_prefix = pickle_prefix, istart = istart, istop = istop, di = di, dt = dt)
pop.bin_width = float(bin_width)
pop.jitter = float(jitter)
pop.method_interpol = method_interpol[:]
pop.no_fmean = False
pop.fluct_g_e0 = fluct_g_e0[:]
pop.fluct_g_i0 = fluct_g_i0[:]
pop.fluct_std_e = fluct_std_e[:]
pop.fluct_std_i = fluct_std_i[:]
pop.fluct_tau_e = float(fluct_tau_e)
pop.fluct_tau_i = float(fluct_tau_i)
pop.CF_var = CF_var
pop.xmax = xmax
pop.tau1_ex=tau1_ex[:]
pop.tau2_ex=tau2_ex[:]
pop.tau1_inh=tau1_inh[:]
pop.tau2_inh=tau2_inh[:]
pop.n_syn_ex = n_syn_ex[:]
pop.g_syn_ex = g_syn_ex[:]
pop.g_syn_ex_s = g_syn_ex_s[:]
pop.noise_syn = noise_syn[:]
pop.noise_syn_tau = noise_syn_tau[:]
pop.noise_syn_inh = noise_syn_inh[:]
pop.noise_syn_tau_inh = noise_syn_tau_inh[:]
pop.noise_a = noise_a[:]
pop.noise_a_inh = noise_a_inh[:]
pop.inh_hold = inh_hold[:]
pop.n_syn_inh = n_syn_inh[:]
pop.g_syn_inh = g_syn_inh[:]
pop.g_syn_inh_s = g_syn_inh_s[:]
pop.bypass_cell = bypass_cell
pop.do_if = do_if
pop.adjinh = adjinh
pop.adjfinh = adjfinh
pop.syn_max_mf = syn_max_mf[:]
pop.syn_max_inh = syn_max_inh[:]
pop.inh_hold_sigma = sigma_inh_hold[:] #[float(sigma_inh_hold)]
pop.ihold_sigma = sigma_ihold[:] #[float(sigma_ihold)]
pop.syn_ex_dist = syn_ex_dist[:]
pop.syn_inh_dist = syn_inh_dist[:]
pop.a_celltype = a_celltype
pop.factor_celltype = factor_celltype
pop.tmax = 10*s # return full length of signal
pop.give_psd = give_psd
pop.simstep = simstep
pop.data_dir = data_dir
MPI.COMM_WORLD.Barrier()
results = pop.fun_cnoise_Stim(t_stim = t_stim, cutf = cutf, sexp = sexp, t_qual = t_qual)
MPI.COMM_WORLD.Barrier()
freq_used, amp_vec, mag, pha, ca, voltage, current, t1 = results.get('freq_used'), results.get('amp'), results.get('mag'), results.get('pha'), results.get('ca'), results.get('voltage'), results.get('current'), results.get('t1')
freq_times, spike_freq, fmean, method_interpol, SNR, VAF, Qual = results.get('freq_times'), results.get('spike_freq'), results.get('fmeanA'), results.get('method_interpol'), results.get('SNR'), results.get('VAF'), results.get('Qual')
stim, stim_re_mat, t_startstop, current_re = results.get('stim'), results.get('stim_re_mat'), results.get('t_startstop'), results.get('current_re')
fmax, fmstd, fcvm = results.get('fmaxA'), results.get('fmstdA'), results.get('fcvmA')
#pop.del_cells()
#pop.pc.gid_clear()
#for n in range(pop.n_celltypes):
# for m in pop.cells[n]:
# del m
#del pop.cells
if do_run_now:
pop.delall()
del pop
pop = None
results = None
MPI.COMM_WORLD.Barrier()
if MPI.COMM_WORLD.rank == 0:
if fmean == 0:
do_break = 1
else:
do_break = 0
do_break = MPI.COMM_WORLD.bcast(do_break, root=0)
if do_break == 1:
print "BREAK: CF too low!"
break
if MPI.COMM_WORLD.rank == 0:
mag[0,:] = mag[0,:]/mag[0,0]
plt.figure('results_transfer_syn') # plot quick status
if "_unifih" in do:
fmean = fmax
label = "CF=" + str(round(fmean,1))
iend = mlab.find(freq_used >= xmax)[0]
#VAF_min = min(VAF[1][0,1:iend-1])
VAF_min = min(VAF[1][0,0:iend])
VAF_min = np.mean(VAF[1][0,0:iend])
print "VAF_min: ", VAF_min, " freq_used[0:iend]: ", freq_used[0:iend]
VAF_min_vec[ni][xi] = VAF_min
print fmean
CF_min_vec[ni][xi] = fmean
a1 = plt.subplot(3,1,1)
a1.semilogx(freq_used[0:iend], 20*log10(mag[0,0:iend]), color=color, linewidth=linewidth, linestyle = linestyle, alpha=1, label=label)
if "_CF-N" in do:
plt.text(0.5, 1.1, r'Pop x=' + str(x) + ',N=' + str(N) + ',CF=' + str(round(fmean,1)) + ',fmax=' + str(round(fmax,1)) + ',fmstd=' + str(round(fmstd,1)) + ',VAF_min=' + str(VAF_min), transform=a1.transAxes, fontsize=10, va='center', ha='center')
elif "_CF-cutf" in do:
plt.text(0.5, 1.1, r'Pop x=' + str(x) + ',cutf=' + str(cutf) + ',CF=' + str(round(fmean,1)) + ',fmax=' + str(round(fmax,1)) + ',fmstd=' + str(round(fmstd,1)) + ',VAF_min=' + str(VAF_min), transform=a1.transAxes, fontsize=10, va='center', ha='center')
ax2 = plt.subplot(3,1,2)
ax2.semilogx(freq_used[0:iend], pha[0,0:iend], color=color, linewidth=linewidth, linestyle = linestyle, alpha=1, label=label)
lg = ax2.legend(loc='upper center', bbox_to_anchor=(0.5, -0.05), handlelength=3, ncol=2, handletextpad=0.5, columnspacing=1)
#fr = lg.get_frame()
#fr.set_lw(0.2)
a3 = plt.subplot(3,1,3)
a3.plot(freq_used[0:iend], VAF[1][0,0:iend]*100, linewidth=linewidth, color=color, alpha=1, linestyle = linestyle, marker='*')
plt.savefig("./figs/Pub/" + str(prefix) + "_x" + str(x) + "_N" + str(N[0]) + ".pdf", dpi = 300, transparent=True) # save it
plt.clf()
do_break = 0
CF_vec[xi] = fmean
fmax_v[xi] = fmax
fmstd_v[xi] = fmstd
fcvm_v[xi] = fcvm
if VAF_min >= 0.9:
if "_CF-N" in do:
N_need_vec[xi] = N[0]
elif "_CF-cutf" in do:
N_need_vec[xi] = cutf
if Nstop: do_break = 1
if Nstop is False:
# Always plot!
plt.figure('results_CF-N_plot')
for ip, N0 in enumerate(N_vec):
plot(CF_min_vec[ip], VAF_min_vec[ip]*100, color=color, linewidth=linewidth, marker='o')
plt.savefig("./figs/Pub/" + str(prefix) + ".pdf", dpi = 300, transparent=True) # save it
plt.clf()
results = {'xi':xi, 'ni':ni, 'x_vec':x_vec, 'CF_vec':CF_vec, 'CF_min_vec':CF_min_vec, 'VAF_min_vec':VAF_min_vec, 'N_need_vec':N_need_vec, 'freq_used':freq_used,'mag':mag,'pha':pha,'VAF':VAF, 'fmax_v':fmax_v, 'fmstd_v':fmstd_v, 'fcvm_v':fcvm_v}
pickle.dump( results, gzip.GzipFile( filepath, "wb" ) )
do_break = MPI.COMM_WORLD.bcast(do_break, root=0)
ni += 1
if do_break == 1:
print "BREAK: necessary value found!"
break
if Nstop:
if do_break == 0:
print "BREAK: no necessary value found, loop exited without result, break xvec loop!"
break
if Nstop: # Plot only after succesful N_need finding
ni = (ni-1) # start at higher value next time, HACK
if ni < 0:
ni = 0
if MPI.COMM_WORLD.rank == 0:
plt.figure('results_CF-N_test')
plot(CF_vec, N_need_vec, color=color, linewidth=linewidth, marker='o')
plt.savefig("./figs/Pub/" + str(prefix) + ".pdf", dpi = 300, transparent=True) # save it
plt.clf()
if MPI.COMM_WORLD.rank == 0:
results = {'xi':xi, 'ni':ni, 'x_vec':x_vec, 'CF_vec':CF_vec, 'CF_min_vec':CF_min_vec, 'VAF_min_vec':VAF_min_vec, 'N_need_vec':N_need_vec, 'freq_used':freq_used,'mag':mag,'pha':pha,'VAF':VAF, 'fmax_v':fmax_v, 'fmstd_v':fmstd_v, 'fcvm_v':fcvm_v}
pickle.dump( results, gzip.GzipFile( filepath, "wb" ) )
MPI.COMM_WORLD.Barrier()
xi += 1
if Nstop:
pass
else:
ni = 0
else:
if MPI.COMM_WORLD.rank == 0:
results = pickle.load( gzip.GzipFile( filepath, "rb" ) )
x_vec, CF_vec, N_need_vec, freq_used, mag, pha, VAF = results.get('x_vec'), results.get('CF_vec'), results.get('N_need_vec'), results.get('freq_used'), results.get('mag'), results.get('pha'), results.get('VAF')
VAF_min_vec, CF_min_vec = results.get('VAF_min_vec'), results.get('CF_min_vec')
fmax, fmstd, fcvm = results.get('fmax'), results.get('fmstd'), results.get('fcvm')
fmax_v, fmstd_v, fcvm_v = results.get('fmax_v'), results.get('fmstd_v'), results.get('fcvm_v')
if MPI.COMM_WORLD.rank == 0:
if "talk1" in do:
axline, = ax_CF_N.semilogy(CF_vec, N_need_vec, color=color, linewidth=linewidth, marker='o')
axline.set_clip_on(False)
adjust_spines(ax_CF_N, ['left','bottom'], d_out = d_out, d_down = d_down)
ax_CF_N.set_yscale('log')
ax_CF_N.yaxis.set_ticks(array([1,10,100,1000,10000]))
ax_CF_N.set_yticklabels(('1', '10', '100', '1000', '10000'))
if "_CF-N" in do:
ax_CF_N.set_ylabel("Population size N")
elif "_CF-cutf" in do:
ax_CF_N.set_ylabel("Maximum input frequency (Hz)")
ax_CF_N.set_xlabel("Mean carrier frequency CF (spikes/s)")
ax_CF_N.axis(xmin=0, xmax=80)
#ax_CF_N.axis(ymin=0.9, ymax=10000)
plt.savefig("./figs/Pub/" + str(prefix) + ".pdf", dpi = 300, transparent=True) # save it
from pyPdf import PdfFileReader, PdfFileWriter
output = PdfFileWriter()
pdfOne = PdfFileReader(file("./figs/Pub/" + str(prefix) + ".pdf", "rb"))
pdfTwo = PdfFileReader(file("./figs/Inserts/intro_syn2.pdf", "rb"))
input1 = pdfOne.getPage(0)
input1.mergeTransformedPage(pdfTwo.getPage(0),[0.9, 0, 0, 0.9, 190, 130])
output.addPage(input1)
outputStream = file(r"./figs/Pub/" + str(prefix) + "_merge.pdf", "wb")
output.write(outputStream)
outputStream.close()
if "_fig8" in do:
label=""
if ("_label18_" in do): label = "a=1, iIF"
if ("_label19_" in do): label = "a=1, iIF, push-pull"
if ("_label20_" in do): label = "a=10, iIF, push-pull"
if ("_label21_" in do): label = "a=1, GrC,"
if ("_label22_" in do): label = "a=1, GrC, push-pull"
if ("_label23_" in do): label = "a=1, IF"
if ("_label24_" in do): label = "a=1, IF, push-pull"
if ("_label25_" in do): label = "a=1, GrC, const. Inh."
if ("_label26_" in do): label = "a=1, IF, const. Inh."
if "_first_" in do:
CF = np.arange(0,100)
N = CF/2
axcf.plot(CF, N, color="gray", linestyle="--")
axcf.text(22, -0.5, "Nyquist\nfrequency", color='gray', fontsize = params['legend.fontsize'])
axcf.plot(CF, CF, color="gray", linestyle="--")
axcf.text(48, 43, "1:1", color='gray', fontsize = params['legend.fontsize'])
axcf.plot(CF/2, CF, color="gray", linestyle="--")
axcf.text(35, 75, "1:2", color='gray', fontsize = params['legend.fontsize'])
axcf.plot(CF/6, CF, color="gray", linestyle="--")
axcf.text(16, 90, "1:6", color='gray', fontsize = params['legend.fontsize'])
#if ("_label1_" in do): ax01.text(26, 20, "ideal IF", color=color, fontsize = params['legend.fontsize'])
#if ("_label3_" in do): ax01.text(21, 4, "GrC + Inhibition", color=color, fontsize = params['legend.fontsize'])
print shape(CF_vec), shape(N_need_vec), shape(fmstd_v)
#axline, = ax_CF_N.plot(N_need_vec, fmax_v, color=color, linewidth=linewidth, marker='o') # CF_vec
#axline, = axcf.plot(N_need_vec, CF_vec, marker=markerstyle, color=color, ms=ms2, label=label, linestyle=linestyle)
#eb = axcf.errorbar(N_need_vec, CF_vec, yerr=fmstd_v, fmt=linestyle, color=color, elinewidth=linewidth)
(_, caps, _) = axcf.errorbar(CF_vec, N_need_vec, color=color, linewidth=linewidth, marker=markerstyle, linestyle=linestyle, ms=ms2, label=label, elinewidth=linewidth) #
# xerr=fmstd_v, fmt=linestyle,
#for cap in caps:
# cap.set_linestyle(linestyle)
#noclip(ax01)
#axline.set_clip_on(False)
print N_need_vec
print CF_vec
lg = axcf.legend(labelspacing=0.2, loc=4, handlelength=3, handletextpad=0.1) # , bbox_to_anchor=(0.5,-0.05)
#lg.draw_frame(False)
fr = lg.get_frame()
fr.set_lw(0.2)
if ("_pos13_" in do):
adjust_spines(axcf, ['left'], d_out = d_out, d_down = d_down)
else:
adjust_spines(axcf, ['left','bottom'], d_out = d_out, d_down = d_down)
#ax_CF_N.set_yscale('log')
#ax_CF_N.yaxis.set_ticks(array([1,10,100,1000,10000]))
#ax_CF_N.set_yticklabels(('1', '10', '100', '1000', '10000'))
#axcf.set_xlabel("Max. input frequency (Hz) (cutoff)", labelpad=2)
#axcf.set_ylabel("Carrier frequency (spikes/s)", labelpad=1)
#axcf.axis(xmin=0, xmax=71)
#axcf.axis(ymin=-2, ymax=50)
axcf.set_ylabel("Max. input frequency (Hz) (cutoff)", labelpad=3)
axcf.set_xlabel("Mean effective firing-rate (spikes/s)", labelpad=4)
axcf.axis(ymin=0, ymax=101.5)
axcf.axis(xmin=-2, xmax=50)
filename="./figs/Pub/" + str(prefix)
savefig(filename + ".pdf", dpi = 300) # save it
savefig(filename + ".png", dpi = 300) # save it
elif "_fig" in do:
if Nstop:
#axline, = ax_CF_N.plot(N_need_vec, fmax_v, color=color, linewidth=linewidth, marker='o') # CF_vec
ax_CF_N.errorbar(CF_vec, N_need_vec, xerr=fmstd_v, color=color, linewidth=linewidth, marker='o', linestyle='-') #
#axline.set_clip_on(False)
if "_first_" in do:
CF_vec = np.arange(0,60)
N_need_vec = CF_vec/2
ax_CF_N.plot(CF_vec, N_need_vec, "g:")
ax_CF_N.text(49, 23, "Nyquist\nfrequency", color='g', fontsize = params['legend.fontsize'])
if ("_talk_" in do):
if ("_label1_" in do): ax_CF_N.text(26, 20, "ideal IF", color=color, fontsize = params['legend.fontsize'])
if ("_label2_" in do): ax_CF_N.text(40, 14, "GrC", color=color, fontsize = params['legend.fontsize'])
if ("_label3_" in do): ax_CF_N.text(21, 4, "GrC + Inhibition", color=color, fontsize = params['legend.fontsize'])
adjust_spines(ax_CF_N, ['left','bottom'], d_out = d_out, d_down = d_down)
#ax_CF_N.set_yscale('log')
#ax_CF_N.yaxis.set_ticks(array([1,10,100,1000,10000]))
#ax_CF_N.set_yticklabels(('1', '10', '100', '1000', '10000'))
if "_CF-N" in do:
ax_CF_N.set_ylabel("Population size N")
elif "_CF-cutf" in do:
ax_CF_N.set_ylabel("Maximum input frequency (Hz)")
ax_CF_N.set_xlabel("Mean carrier frequency CF (spikes/s)")
#ax_CF_N.axis(xmin=0, xmax=60)
#ax_CF_N.axis(ymin=0, ymax=30)
filename="./figs/Pub/" + str(prefix)
savefig(filename + ".pdf", dpi = 300) # save it
savefig(filename + ".png", dpi = 300) # save it
#os.system('rsvg-convert -f pdf -o ' + filename +'.pdf ' + filename + '.svg')
else:
for ip, N0 in enumerate(N_vec):
ax_CF_N.plot(CF_min_vec[ip], VAF_min_vec[ip]*100, color=color_vec[0][ip], linewidth=linewidth, marker='o')
adjust_spines(ax_CF_N, ['left','bottom'], d_out = d_out, d_down = d_down)
#plt.savefig("./figs/Pub/" + str(prefix) + ".pdf", dpi = 300, transparent=True) # save it
plt.savefig("./figs/Pub/" + str(prefix) + ".png", dpi = 300) #, transparent=True
plt.show()