Skip to content

Commit b38017a

Browse files
author
Daniel Incicau
committed
Create conda environment documentation
1 parent 8f28a15 commit b38017a

File tree

3 files changed

+122
-10
lines changed

3 files changed

+122
-10
lines changed

README.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
Spiking Neural Network for the Visual Cortex (V1) Layer 5
22
============================
3+
This is a spike neural network model of the V1, layer 5 includes Cortico-Cortical (CC), Cortico-Subcortical (CS), PV and SST neurons.
4+
5+
Individual simulation metrics for neuron groups are computed such as firing rates, inter-spike intervals, burst detection.
6+
7+
Additionally, orientation and direction selectivity are aggregated for population of cells.
38

49
### Project content
510

@@ -18,3 +23,15 @@ Spiking Neural Network for the Visual Cortex (V1) Layer 5
1823
├── plotting.py # Helper methods for plotting
1924
├── run_amplitude_hypertuing.py # Script for running multiple simulations for amplitude hypertuning for different neurons
2025
└── run_complete_simulation.py # Complete simulation run entrypoint
26+
27+
### Requirements
28+
Use `conda env create -n network -f requirements.txt` to unpack the conda environment. Or download with `conda install <module>` the requirements manually.
29+
30+
After that, activate the environment with `conda activate network`
31+
32+
### Hints
33+
- There is only one best parameter set which I aggregated in `parameters.py`. If you want to try different combinations of parameters, you can change them here.
34+
- To run main simulation `python3 run_complete_simulation.py`
35+
- The project includes a script for hypertuning different input amplitudes for neuron groups. Can be run by `python3 run_amplitude_hypertuning.py`
36+
- All simulation outputs are persisted in the `output` folder. I recommend deleting the content between successive runs to avoid confusion.
37+
- Parallelization of simulations is missing. This would be a much needed improvement for the future.

helpers.py

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -6,16 +6,6 @@
66
from scipy.signal import argrelextrema
77

88

9-
# TODO see how to reference this from equations
10-
@check_units(x=volt, result=1)
11-
def sigmoid(x):
12-
### Sigmoid function params
13-
E_d = -38 * mV # position control of threshold
14-
D_d = 6 * mV # sharpness control of threshold
15-
16-
return 1/(1+exp(-(-x-E_d)/D_d))
17-
18-
199
def bin(spiketime, dt):
2010
if len(spiketime) == 0:
2111
return []

requirements.txt

Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
# This file may be used to create an environment using:
2+
# $ conda create --name <env> --file <this file>
3+
# platform: osx-arm64
4+
appdirs=1.4.4=pyh9f0ad1d_0
5+
bottleneck=1.3.5=py310hf1a086a_1
6+
brian2=2.5.1=py310h629746b_2
7+
brotli=1.0.9=h1a8c8d9_8
8+
brotli-bin=1.0.9=h1a8c8d9_8
9+
brotlipy=0.7.0=py310h8e9501a_1005
10+
bzip2=1.0.8=h3422bc3_4
11+
ca-certificates=2022.12.7=h4653dfc_0
12+
cctools_osx-arm64=973.0.1=hef52d2f_11
13+
certifi=2022.12.7=pyhd8ed1ab_0
14+
cffi=1.15.1=py310h2399d43_3
15+
charset-normalizer=2.1.1=pyhd8ed1ab_0
16+
clang=14.0.6=hce30654_0
17+
clang-14=14.0.6=default_h81a5282_0
18+
clang_osx-arm64=14.0.6=h15773ab_4
19+
clangxx=14.0.6=default_hb7ecf47_0
20+
clangxx_osx-arm64=14.0.6=he29aa18_4
21+
compiler-rt=14.0.6=h30b49de_0
22+
compiler-rt_osx-arm64=14.0.6=h4fb70ea_0
23+
contourpy=1.0.6=py310h2887b22_0
24+
cryptography=39.0.0=py310hfc83b78_0
25+
cycler=0.11.0=pyhd8ed1ab_0
26+
cython=0.29.33=py310h0f1eb42_0
27+
fonttools=4.38.0=py310h8e9501a_1
28+
freetype=2.12.1=hd633e50_1
29+
gmp=6.2.1=h9f76cd9_0
30+
gmpy2=2.1.2=py310h2e6cad2_1
31+
gsl=2.7=h6e638da_0
32+
idna=3.4=pyhd8ed1ab_0
33+
jinja2=3.1.2=pyhd8ed1ab_1
34+
jpeg=9e=he4db4b2_2
35+
kiwisolver=1.4.4=py310h2887b22_1
36+
lcms2=2.14=h481adae_1
37+
ld64_osx-arm64=609=h7167370_11
38+
lerc=4.0.0=h9a09cb3_0
39+
libblas=3.9.0=16_osxarm64_openblas
40+
libbrotlicommon=1.0.9=h1a8c8d9_8
41+
libbrotlidec=1.0.9=h1a8c8d9_8
42+
libbrotlienc=1.0.9=h1a8c8d9_8
43+
libcblas=3.9.0=16_osxarm64_openblas
44+
libclang-cpp14=14.0.6=default_h81a5282_0
45+
libcxx=14.0.6=h2692d47_0
46+
libdeflate=1.14=h1a8c8d9_0
47+
libffi=3.4.2=h3422bc3_5
48+
libgfortran=5.0.0=11_3_0_hd922786_27
49+
libgfortran5=11.3.0=hdaf2cc0_27
50+
libjpeg-turbo=2.1.4=h1a8c8d9_0
51+
liblapack=3.9.0=16_osxarm64_openblas
52+
libllvm14=14.0.6=hf6e71e7_1
53+
libopenblas=0.3.21=openmp_hc731615_3
54+
libpng=1.6.39=h76d750c_0
55+
libsqlite=3.40.0=h76d750c_0
56+
libtiff=4.5.0=heb92581_0
57+
libwebp-base=1.2.4=h57fd34a_0
58+
libxcb=1.13=h9b22ae9_1004
59+
libzlib=1.2.13=h03a7124_4
60+
llvm-openmp=15.0.6=h7cfbb63_0
61+
llvm-tools=14.0.6=hf6e71e7_1
62+
markupsafe=2.1.1=py310h8e9501a_2
63+
matplotlib=3.6.2=py310hb6292c7_0
64+
matplotlib-base=3.6.2=py310h78c5c2f_0
65+
mpc=1.2.1=h309154c_0
66+
mpfr=4.1.0=h6d7a090_1
67+
mpmath=1.2.1=pyhd8ed1ab_0
68+
munkres=1.1.4=pyh9f0ad1d_0
69+
ncurses=6.3=h07bb92c_1
70+
numexpr=2.8.3=py310h2b830bf_1
71+
numpy=1.23.5=py310h5d7c261_0
72+
openjpeg=2.5.0=hbc2ba62_2
73+
openssl=3.0.7=h03a7124_1
74+
packaging=23.0=pyhd8ed1ab_0
75+
pandas=1.4.4=py310hc377ac9_0
76+
pillow=9.4.0=py310h5f2e7f5_0
77+
pip=22.3.1=pyhd8ed1ab_0
78+
pooch=1.6.0=pyhd8ed1ab_0
79+
pthread-stubs=0.4=h27ca646_1001
80+
pycparser=2.21=pyhd8ed1ab_0
81+
pyopenssl=23.0.0=pyhd8ed1ab_0
82+
pyparsing=3.0.9=pyhd8ed1ab_0
83+
pysocks=1.7.1=pyha2e5f31_6
84+
python=3.10.8=h3ba56d0_0_cpython
85+
python-dateutil=2.8.2=pyhd8ed1ab_0
86+
python_abi=3.10=3_cp310
87+
pytz=2022.7=pyhd8ed1ab_0
88+
readline=8.1.2=h46ed386_0
89+
requests=2.28.1=pyhd8ed1ab_1
90+
scipy=1.10.0=py310ha0d8a01_0
91+
setuptools=65.6.3=pyhd8ed1ab_0
92+
sigtool=0.1.3=h44b9a77_0
93+
six=1.16.0=pyh6c4a22f_0
94+
sympy=1.11.1=py310hbe9552e_2
95+
tapi=1100.0.11=he4954df_0
96+
tk=8.6.12=he1e0b03_0
97+
tornado=6.2=py310h8e9501a_1
98+
tzdata=2022g=h191b570_0
99+
unicodedata2=15.0.0=py310h8e9501a_0
100+
urllib3=1.26.14=pyhd8ed1ab_0
101+
wheel=0.38.4=pyhd8ed1ab_0
102+
xorg-libxau=1.0.9=h27ca646_0
103+
xorg-libxdmcp=1.1.3=h27ca646_0
104+
xz=5.2.6=h57fd34a_0
105+
zstd=1.5.2=h8128057_4

0 commit comments

Comments
 (0)