import socket

from utils.queue import BatchManager
from utils.parameters import ParameterSpace
from utils.parameters import PSlice as psl

#++++general controls+++++
force_rerun_simulations = False
clean_up_simulation_files = True

simulate = True
compress = True
analyse = False

#+++++parameter ranges+++++++++++++
n_grc_dend = psl(1,21,1)
connectivity_rule = psl(0) # 0: tissue model, 1: random bipartite graph
input_spatial_correlation_scale = psl(0) # 0: uncorrelated
active_mf_fraction = psl(.1,1.,.1)
gaba_scale = psl(1) # global inhibition scale. Default: 1
dta = psl(0.)
inh_cond_scaling = psl(0.) # (boolean) scale inhibitory conductance to compensate for change in n_dend
exc_cond_scaling = psl(1.) # (boolean) scale excitatory conductance to compensate for change in n_dend
modulation_frequency = psl(0)
stim_rate_mu = psl(80) # (Hz) default: 80
stim_rate_sigma = psl(0)
noise_rate_mu = psl(10) # (Hz) default: 10
noise_rate_sigma = psl(0)
n_stim_patterns = psl(1024)
n_trials = psl(1) # typically, 1 when simulating and 60 when analysing
sim_duration = psl(3750.) # (s) typically, 3750 when simulating and 180 when analysing
plot_mi_detail = False
plot_dendrograms = False
plot_mutual_information = False
plot_kl_divergence = False
plot_barcodes = False
plot_activity_levels = False
plot_out_entropy = False
plot_noise_entropy = False
plot_separation = False
plot_synchrony = False
plot_distance_matrix = False
plot_mi_vs_activity = False
plot_mi_vs_dn_and_sparsity = False

#+++++parameter ranges+++++++++++++
n_grc_dend = psl(1,21,1)
connectivity_rule = psl(0) # 0: tissue model, 1: random bipartite graph
input_spatial_correlation_scale = psl(0) # 0: uncorrelated
active_mf_fraction = psl(.05,1.,.05)
gaba_scale = psl(1)
dta = psl(0.)
inh_cond_scaling = psl(0.)
exc_cond_scaling = psl(1.)
modulation_frequency = psl(0)
stim_rate_mu = psl(80)
stim_rate_sigma = psl(0)
noise_rate_mu = psl(10)
noise_rate_sigma = psl(0)
n_stim_patterns = psl(1024)
n_trials = psl(60)
sim_duration = psl(180)