It is recommended to use Anaconda to create a virtual environment with the necessary dependencies. With anaconda, it is a one button install. After cloning the repository and changing into the root folder, type
conda env create -f environment.yml
This creates an environment called interneuron_polarity, which can be activated via
conda activate interneuron_polarity
To run the scripts, you also need to make the repository folder available in the python path (requires conda--build)
conda develop .
The entire process is split in three main scripts: run, analysis and plotting. We use pypet to organize our simulations and save intermediate results.
The simulation is setup and run via
cd scripts/spatial_network/perlin_map
python run_simulation_perlin_map.py
This script also contains the relevant parameter settings such as network size or the form of the interneuron
axons. To allow exceution of the script in a reasonable time, we reduced the number of input maps that are tested
. In the script, you find instructions to make the full run. After the script has successfully finished, you find
the output in the data
folder.
A preliminary analysis of the simulated data is done by running
python preliminary_analysis_perlin_map.py
To run both simulation and preliminary analysis
python run_and_analyze_perlin.py
The final analysis and figure generation is done by
python final_analysis_and_plotting_perlin_map.py
For the supplement figure, a pinwheel map is used as an alternative input map. The run, analyse and plot scripts are
organized in the same manner but found in the folder scripts/spatial_network/supplement_pinwheel_map
.
The simulation saves the generated data in a hdf5-file. Since the full parameter exploration used for the model section of the paper requires significant time to run, the generated data set can also be downloaded from the following location. When the pre-simulated dataset is used, only the figure script needs to be executed to get the results of the data analysis. Note that the save file will be overwritten when the simulation is started again.