Computational protocol: A Comparison of Methods to Determine Neuronal Phase-Response Curves

Similar protocols

Protocol publication

[…] We implemented the different methods in Python in combination with the Numpy/Scipy and Matplotlib. In three methods (Galan's method, modified-Izhikevich and STEP) a curve is optimized to fit the data. Any smooth curve such as a polynomial or a Fourier series can be used for this purpose. To be consistent with the implementation in previously published studies (Galán et al., ; Izhikevich, ) we use the third expansion of the Fourier series (n = 3) in the remainder of this manuscript. Larger expansion would provide better fits in some cases (when there is a steep slope in the PRC) but it would also be more prone to overfitting and hence the third expansion seems suitable. Moreover, Galan's method and (the original) Izhikevich method do not prescribe a particular optimization algorithm although Galan uses least-squares optimization. We follow his work and also use least-squares optimization in Galan's method, the modified-Izhikevich method and STEP method.For the WSTA method, the authors suggest to fit a polynomial to the raw outcome of their algorithm because this raw output is noisy with a smaller number of spikes. For the sake of clarity we show the raw outcome to illustrate the true capabilities of this method.All methods require configuration of the estimated inter-spike interval ISI˜. In our implementation of the different methods, the ISI˜ can be given as an argument to the algorithm or automatically computed. The automatic computation straightforwardly takes the mean and, therefore, works only for highly regular firing neurons. In addition we exclude ISIs that do not satisfy 0.1×ISI˜≤ISI˜≤2×ISI˜ because larger spread of ISIs generally causes the methods to fail (remember that the PRC is a characteristic of regularly firing neurons). […]

Pipeline specifications

Software tools Numpy, matplotlib
Application Miscellaneous