Skip to content

Commit 6a00836

Browse files
committed
fixing the 3D cases for the tutorial and adding sphinx documentation
1 parent 65e46dc commit 6a00836

11 files changed

Lines changed: 598 additions & 90 deletions

File tree

docs/AUTHORS.rst

Lines changed: 0 additions & 38 deletions
This file was deleted.

docs/source/AUTHORS.rst

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
Authors
2+
-------
3+
4+
- Chaitanya Chintaluri[1, 2]
5+
- Marta Kowalska[1]
6+
- Michał Czerwinski[1]
7+
- Joanna Jędrzejewska–Szmek[1]
8+
- Jakub Dzik[1]
9+
- Władysław Średniawa[1]
10+
- Jan Mąka [1, 4]
11+
- Grzegorz Parka[3]
12+
13+
- Daniel K. Wójcik[1]
14+
15+
1. Nencki Institute of Experimental Biology, Warsaw, Poland
16+
2. University of Oxford, United Kingdom
17+
3. Google Summer of Code 2014, INCF/pykCSD
18+
4. University of Warsaw, Poland
19+
20+
Contributions
21+
-------------
22+
23+
- C.C : Design, implentation kcsd core classes, validation, tests, binder, tutorials
24+
- M.K : Reliability maps, Spectral decomposition, validation class, tutorials
25+
- M.C : KCSD1D class
26+
- J.J-S : skCSD class, tests
27+
- J.D : Error propagation maps
28+
- J.M : initial work on sKCSD class
29+
- W.S : L-curve implementation
30+
- G.P : first pass python library for kCSD as part of GSoC.
31+
32+
- D.W : supervision, code quality
33+
34+
35+
Contact
36+
-------
37+
Prof. Daniel K. Wójcik : d.wojcik[at]nencki[dot]gov[dot]pl
38+
39+
40+
Contribute
41+
----------
42+
If you wish to contribute to this code, please get it touch with Prof. Wójcik

docs/source/CITE.rst

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
Citation policy
2+
---------------
3+
If you use this software in published research please cite the following work
4+
5+
- KCSD1D - [1, 2]
6+
- KCSD2D - [1, 3]
7+
- KCSD3D - [1, 4]
8+
- MoIkCSD - [1, 3, 5]
9+
- sKCSD - [6]
10+
11+
1) Potworowski, J., Jakuczun, W., Łęski, S. & Wójcik, D. (2012) 'Kernel current source density method.' Neural Comput 24(2), 541-575.
12+
13+
2) Pettersen, K. H., Devor, A., Ulbert, I., Dale, A. M. & Einevoll, G. T. (2006) 'Current-source density estimation based on inversion of electrostatic forward solution: effects of finite extent of neuronal activity and conductivity discontinuities.' J Neurosci Methods 154(1-2), 116-133.
14+
15+
3) Łęski, S., Pettersen, K. H., Tunstall, B., Einevoll, G. T., Gigg, J. & Wójcik, D. K. (2011) 'Inverse Current Source Density method in two dimensions: Inferring neural activation from multielectrode recordings.' Neuroinformatics 9(4), 401-425.
16+
17+
4) Łęski, S., Wójcik, D. K., Tereszczuk, J., Świejkowski, D. A., Kublik, E. & Wróbel, A. (2007) 'Inverse current-source density method in 3D: reconstruction fidelity, boundary effects, and influence of distant sources.' Neuroinformatics 5(4), 207-222.
18+
19+
5) Ness, T. V., Chintaluri, C., Potworowski, J., Łeski, S., Głabska, H., Wójcik, D. K. & Einevoll, G. T. (2015) 'Modelling and Analysis of Electrical Potentials Recorded in Microelectrode Arrays (MEAs).' Neuroinformatics 13(4), 403-426.
20+
21+
6) Cserpan, D., Meszena, D., Wittner, L., Toth, K., Ulbert, I., Somogyvari, Z., Wójcik, D. K. (2017) 'Revealing The Distribution Of Transmembrane Currents Along The Dendritic Tree Of A Neuron From Extracellular Recordings.' eLife (2017) 6:e29384

docs/source/DOCUMENTATION.rst

Lines changed: 106 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,106 @@
1+
Documentation
2+
------------
3+
.. toctree::
4+
:maxdepth: 1
5+
:caption: Contents:
6+
7+
KCSD Methods
8+
~~~~~~~~~~~~
9+
10+
.. automodule:: kcsd.KCSD
11+
:members:
12+
13+
.. autoclass:: kcsd.sKCSD
14+
:members:
15+
16+
17+
Spectral Structure
18+
~~~~~~~~~~~~~~~~~~
19+
20+
.. autoclass:: kcsd.validation.ValidateKCSD.SpectralStructure
21+
:members:
22+
23+
Validation
24+
~~~~~~~~~~
25+
26+
.. autoclass:: kcsd.validation.ValidateKCSD.ValidateKCSD
27+
:members:
28+
29+
.. autoclass:: kcsd.validation.ValidateKCSD.ValidateKCSD1D
30+
:members:
31+
32+
.. autoclass:: kcsd.validation.ValidateKCSD.ValidateKCSD2D
33+
:members:
34+
35+
.. autoclass:: kcsd.validation.ValidateKCSD.ValidateKCSD3D
36+
:members:
37+
38+
Reliability Maps
39+
~~~~~~~~~~~~~~~~
40+
41+
.. automodule:: kcsd.validation.VisibilityMap
42+
:members:
43+
44+
Basis functions
45+
~~~~~~~~~~~~~~~
46+
47+
1-Dimensional
48+
+++++++++++++
49+
50+
.. autofunction:: kcsd.basis_functions.gauss_1D
51+
52+
.. autofunction:: kcsd.basis_functions.gauss_lim_1D
53+
54+
.. autofunction:: kcsd.basis_functions.step_1D
55+
56+
2-Dimensional
57+
+++++++++++++
58+
59+
.. autofunction:: kcsd.basis_functions.gauss_2D
60+
61+
.. autofunction:: kcsd.basis_functions.gauss_lim_2D
62+
63+
.. autofunction:: kcsd.basis_functions.step_2D
64+
65+
3-Dimensional
66+
+++++++++++++
67+
68+
.. autofunction:: kcsd.basis_functions.gauss_3D
69+
70+
.. autofunction:: kcsd.basis_functions.gauss_lim_3D
71+
72+
.. autofunction:: kcsd.basis_functions.step_3D
73+
74+
75+
CSD Test Sources
76+
~~~~~~~~~~~~~~~~
77+
78+
Variable (Seedable)
79+
+++++++++++++++++++
80+
81+
.. autofunction:: kcsd.validation.csd_profile.gauss_1d_dipole
82+
83+
.. autofunction:: kcsd.validation.csd_profile.gauss_1d_mono
84+
85+
.. autofunction:: kcsd.validation.csd_profile.gauss_2d_small
86+
87+
.. autofunction:: kcsd.validation.csd_profile.gauss_2d_large
88+
89+
.. autofunction:: kcsd.validation.csd_profile.gauss_3d_small
90+
91+
.. autofunction:: kcsd.validation.csd_profile.gauss_3d_large
92+
93+
Fixed (Non seedable)
94+
++++++++++++++++++++
95+
96+
.. autofunction:: kcsd.validation.csd_profile.gauss_1d_dipole_f
97+
98+
.. autofunction:: kcsd.validation.csd_profile.gauss_2d_large_f
99+
100+
.. autofunction:: kcsd.validation.csd_profile.gauss_2d_small_f
101+
102+
.. autofunction:: kcsd.validation.csd_profile.gauss_3d_mono1_f
103+
104+
.. autofunction:: kcsd.validation.csd_profile.gauss_3d_mono2_f
105+
106+
.. autofunction:: kcsd.validation.csd_profile.gauss_3d_mono3_f

docs/source/INSTALL.rst

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
Installation
2+
------------
3+
4+
Clone repository
5+
~~~~~~~~~~~~~~~~
6+
7+
.. code-block:: bash
8+
9+
user:~$ git clone https://github.com/Neuroinflab/kCSD-python.git
10+
user:~$ cd kCSD-python
11+
user:~/kCSD-python$
12+
13+
14+
Bash or Anaconda env
15+
~~~~~~~~~~~~~~~~~~~~
16+
17+
.. code-block:: bash
18+
19+
user:~/kCSD-python$ pip install .
20+
21+
22+
or
23+
24+
.. code-block:: bash
25+
26+
user:~/kCSD-python$ python setup.py install
27+
28+
29+
30+
Development and testing
31+
~~~~~~~~~~~~~~~~~~~~~~~
32+
33+
.. code-block:: bash
34+
35+
user:~/kCSD-python$ pip install -e .
36+
37+
or
38+
39+
.. code-block:: bash
40+
41+
user:~/kCSD-python$ python setup.py develop

docs/LICENSE renamed to docs/source/LICENSE.rst

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
1+
License
2+
-------
3+
14
BSD 3-Clause License
5+
~~~~~~~~~~~~~~~~~~~~
26

3-
Copyright (c) 2018, Laboratory of Neuroinformatics, Nencki Institute
7+
Copyright (c) 2019, Laboratory of Neuroinformatics, Nencki Institute
48
All rights reserved.
59

610
Redistribution and use in source and binary forms, with or without
File renamed without changes.

docs/source/TUTORIALS.rst

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
Tutorials
2+
---------
3+
4+
kcsd-python library comes with two extensive tutorials (at this
5+
moment, more soon). These can be tested using Jupyter notebook on your
6+
desktop after installing the kCSD-python package. Alternatively, they
7+
can be played around with without any installation on Binder in a
8+
web-browser. Note that in this case, the results from a browser are
9+
not saved, and cannot be retreived.
10+
11+
Basic Features
12+
~~~~~~~~~~~~~~
13+
14+
This tutorial showcases, the use of the kCSD-python package in the
15+
case of the simplest 2D square grid of electrodes. It defines a region
16+
where can place true current sources, probe it with a grid or
17+
electrodes, based on these measurements and using the proposed method,
18+
estimate the CSD. Since we also know the true sources, we can now
19+
estimate the error in the estimation method as well. To this
20+
preliminary setup, we add noise to the measurements at the electrodes,
21+
and repeat the procedure. We also explore the situation when certain
22+
number of the electrode are broken, and how that would effect the
23+
reconstructions.
24+
25+
The tutorial is provided with Binder access, click the button below to
26+
interact with it in a browser, no installation necessary.
27+
28+
.. image:: https://mybinder.org/badge.svg
29+
:target: https://mybinder.org/v2/gh/Neuroinflab/kCSD-python/master?filepath=tutorials%2Ftutorial_basic.ipynb
30+
31+
32+
For a non-interactive version of this tutorial, see
33+
`Tutorail1<https://github.com/Neuroinflab/kCSD-python/blob/master/tutorials/tutorial_basic.ipynb>`_.
34+
35+
36+
37+
Advanced Features
38+
~~~~~~~~~~~~~~~~~
39+
40+
This tutorial showcases many more features of the kcsd-python package,
41+
especially the cases when the electrodes are distributed in 1D
42+
(laminar probe like), 2D (Neuropixel like), 3D (Utah array like) or on
43+
a microelectrode arrays (MEA, slice with saline). It is provided with
44+
buttons and easy clickable interface to enable the user to navigate
45+
the otherwise dense details. In some ways, it extends on the Basic
46+
Features tutorial and expands it to the other dimensions. NOTE, the
47+
user might have to 'Reset this tutorial' before using to enable the
48+
buttons (Kernel>Restart & Run All).
49+
50+
The tutorial is provided with Binder access, click the button below to
51+
interact with it in a browser, no installation necessary.
52+
53+
.. image:: https://mybinder.org/badge.svg
54+
:target: https://mybinder.org/v2/gh/Neuroinflab/kCSD-python/master?filepath=tutorials%2Ftutorial_advanced.ipynb
55+
56+
57+
For a non-inteactive version of this tutorial, see
58+
`Tutorail2<https://github.com/Neuroinflab/kCSD-python/blob/master/tutorials/tutorial_advanced.ipynb>`_.
59+
60+
61+
More Tutorials
62+
~~~~~~~~~~~~~~
63+
64+
There are many more ways to test this method some of these can be made
65+
into tutorials for easier understanding. While we are working on this,
66+
they will appear here once they reach production level. Please
67+
watch-out this space in the near future. We also take requests for
68+
tutorials.
69+
70+
Do you wish there was a tutorial for your setup? Can you provide us
71+
with the electrode positions and some sample recordings under open
72+
license? If so, we might be able to tailor-make a tutorial for you!
73+
Please get in touch. See Contacts.

0 commit comments

Comments
 (0)