import numpy as np import os from multiarea_model import MultiAreaModel from config import base_path """ Down-scaled model. Neurons and indegrees are both scaled down to 10 %. Can usually be simulated on a local machine. Warning: This will not yield reasonable dynamical results from the network and is only meant to demonstrate the simulation workflow. """ d = {} conn_params = {'replace_non_simulated_areas': 'het_poisson_stat', 'g': -11., 'K_stable': 'K_stable.npy', 'fac_nu_ext_TH': 1.2, 'fac_nu_ext_5E': 1.125, 'fac_nu_ext_6E': 1.41666667, 'av_indegree_V1': 3950.} input_params = {'rate_ext': 10.} neuron_params = {'V0_mean': -150., 'V0_sd': 50.} network_params = {'N_scaling': 0.01, 'K_scaling': 0.01, 'fullscale_rates': os.path.join(base_path, 'tests/fullscale_rates.json'), 'input_params': input_params, 'connection_params': conn_params, 'neuron_params': neuron_params} sim_params = {'t_sim': 2000., 'num_processes': 1, 'local_num_threads': 1, 'recording_dict': {'record_vm': False}} theory_params = {'dt': 0.1} M = MultiAreaModel(network_params, simulation=True, sim_spec=sim_params, theory=True, theory_spec=theory_params) p, r = M.theory.integrate_siegert() print("Mean-field theory predicts an average " "rate of {0:.3f} spikes/s across all populations.".format(np.mean(r[:, -1]))) M.simulation.simulate()