// Hyperparameters
N_RUNS = 3 // Number of runs per group
PP_freq_ = 1 // Ensures that PP.hoc loads oscillatory PP mechanism. TODO: Re-write this s.t. there's no dependancy on external variable
// Load cell templates and network
err_ = load_file("objects/GC.hoc")
err_ = load_file("objects/BC.hoc")
err_ = load_file("objects/MC.hoc")
err_ = load_file("objects/HIPP.hoc")
err_ = load_file("objects/PP.hoc")
err_ = load_file("objects/DentateGyrus.hoc")
// Instantiate cell objects and labels
objref th, fth, al, bt, gm
strdef tlab, ftlab, alab, blab, glab
// Do N_RUNS Runs for each network setting
for random_state = 1, N_RUNS {
PP_freq_ = 3
sprint(tlab, "%s-%d", "theta", random_state)
th = new DentateGyrus(tlab, random_state, "theta")
print "RUNNING DENTATE GYRUS ", tlab
th.run()
PP_freq_ = 8
sprint(ftlab, "%s-%d", "ftheta", random_state)
fth = new DentateGyrus(ftlab, random_state, "ftheta")
print "RUNNING DENTATE GYRUS ", ftlab
fth.run()
PP_freq_ = 12
sprint(alab, "%s-%d", "alpha", random_state)
al = new DentateGyrus(alab, random_state, "alpha")
print "RUNNING DENTATE GYRUS ", alab
al.run()
PP_freq_ = 20
sprint(blab, "%s-%d", "beta", random_state)
bt = new DentateGyrus(blab, random_state, "beta")
print "RUNNING DENTATE GYRUS ", blab
bt.run()
PP_freq_ = 30
sprint(glab, "%s-%d", "gamma", random_state)
gm = new DentateGyrus(glab, random_state, "gamma")
print "RUNNING DENTATE GYRUS ", glab
gm.run()
}