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. The simulation is setup and run via
python scripts/spatial_network/perlin_map/run_simulation_perlin_map.py
Relevant parameters are the range of scale and seed values for the input map generation as explained in the script. A preliminary analysis of the simulated data is done by running
python scripts/spatial_network/perlin_map/preliminary_analysis_perlin_map.py
The final analysis and figure generation is done by
python scripts/spatial_network/perlin_map/final_analysis_and_plotting_perlin_map.py
Note, that running the simulation script will overwrite the saved data. The bulk of the runtime lies within the simulation and preliminary analysis which can be executed together via
python scripts/spatial_network/perlin_map/run_and_analyze_perlin.py
after which the figure script can be tweaked and executed without loss of data.
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.