Spikes¶
Spikes
is responsible for locating spikes in a voltage trace, and is
a container for all spikes found.
Each spike is stored in a Spike
object.
Spikes
is used in SpikingFeatures
API Reference¶
Spikes¶

class
uncertainpy.features.
Spikes
(time=None, V=None, threshold=30, end_threshold=10, extended_spikes=False, trim=True, normalize=False, min_amplitude=0, min_duration=0, xlabel=u'', ylabel=u'')[source]¶ Finds spikes in the given voltage trace and is a container for the resulting Spike objects.
Parameters:  time (array_like) – The time of the voltage trace.
 V (array_like) – The voltage trace.
 threshold ({int, float, “auto”}) – The threshold for what is considered a spike. If the voltage trace rise above and then fall below this threshold + end_threshold it is considered a spike. If “auto” the threshold is set to the standard deviation of the voltage trace. Default is 30.
 end_threshold ({int, float}, optional) – The end threshold for a spike relative to the threshold. Generally negative values give the best results. Default is 10.
 extended_spikes (bool) – If the spikes should be extended past the threshold, until the derivative of the voltage trace is below 0.5. Default is False.
 trim (bool, optional) – If the spikes should be trimmed back from the termination threshold, so each spike is equal the threshold at both ends. Default is True.
 normalize (bool, optional) – If the voltage trace should be normalized before the spikes are found. If normalize is used threshold must be between [0, 1], and the end_threshold a similar relative value. Default is False.
 min_amplitude ({int, float}, optional) – Minimum height for what should be considered a spike. Default is 0.
 min_duration ({int, float}, optional) – Minimum duration for what should be considered a spike. Default is 0.
 xlabel (str, optional) – Label for the xaxis.
 ylabel (str, optional) – Label for the yaxis.
Variables:  spikes (list) – A list of Spike objects.
 nr_spikes (int) – The number of spikes.
 xlabel (str, optional) – Label for the xaxis.
 ylabel (str, optional) – Label for the yaxis.
 time (array_like) – The time of the voltage trace.
 V (array_like) – The voltage trace.
Notes
The spikes are found by finding where the voltage trace goes above the threshold, and then later falls below this threshold + end_threshold. The spike is considered to be everything within this interval.
The spike can be extended. If extended_spikes is True, the spike is extended around the above area until the derivative of the voltage trace falls below 0.5. This works badly with noisy voltage traces.
See also
Spike
 The class for a single spike.
find_spikes
 Finding spikes in the voltage trace.

consecutive
(data)[source]¶ Returns the first consecutive array, from a discontinuous index array such as [2, 3, 4, 5, 12, 13, 14], which returns [2, 3, 4, 5]
Parameters: data (array_like) Returns: The first consecutive array Return type: array_like

find_spikes
(time, V, threshold=30, end_threshold=10, extended_spikes=False, trim=True, normalize=False, min_amplitude=0, min_duration=0)[source]¶ Finds spikes in the given voltage trace.
Parameters:  time (array_like) – The time of the voltage trace.
 V (array_like) – The voltage trace.
 threshold ({int, float, “auto”}) – The threshold for what is considered a spike. If the voltage trace rise above and then fall below this threshold + end_threshold it is considered a spike. If “auto” the threshold is set to the standard deviation of the voltage trace. Default is 30.
 end_threshold ({int, float}, optional) – The end threshold for a spike relative to the threshold. Generally negative values give the best results. Default is 10.
 extended_spikes (bool, optional) – If the spikes should be extended past the threshold, until the derivative of the voltage trace is below 0.5. Default is False.
 trim (bool, optional) – If the spikes should be trimmed back from the termination threshold, so each spike is equal the threshold at both ends. Default is True.
 normalize (bool, optional) – If the voltage traceshould be normalized before the spikes are found. If normalize is used threshold must be between [0, 1], and the end_threshold must have a absolute value between [0, 1]. Default is False.
 min_amplitude ({int, float}, optional) – Minimum height for what should be considered a spike. Default is 0.
 min_duration ({int, float}, optional) – Minimum duration for what should be considered a spike. Default is 0.
Raises: ValueError
– If the threshold is outside the interval [0, 1] when normalize=True.ValueError
– If the absolute value of end_threshold is outside the interval [0, 1] when normalize=True.
Notes
The spikes are added to
self.spikes
andself.nr_spikes
is updated.The spikes are found by finding where the voltage trace goes above the threshold, and then later falls below this threshold + end_threshold. The spike is considered to be everything within this interval.
The spike can be extended. If extended_spikes is True, the spike is extended around the above area until the derivative of the voltage trace falls below 0.5. This works badly with noisy voltage traces.
Spike¶

class
uncertainpy.features.
Spike
(time, V, time_spike, V_spike, global_index, xlabel=u'', ylabel=u'')[source]¶ A single spike found in a voltage trace.
Parameters:  time (array_like) – The time array of the spike.
 V (array_like) – The voltage array of the spike.
 time_spike ({float, int}) – The timing of the peak of the spike.
 V_spike ({float, int}) – The voltage at the peak of the spike.
 global_index (int) – Index of the spike peak in the simulation.
 xlabel (str, optional) – Label for the xaxis.
 ylabel (str, optional) – Label for the yaxis.
Variables:  time (array_like) – The time array of the spike.
 V (array_like) – The voltage array of the spike.
 time_spike ({float, int}) – The timing of the peak of the spike.
 V_spike ({float, int}) – The voltage at the peak of the spike.
 global_index (int) – Index of the spike peak in the simulation.
 xlabel (str, optional) – Label for the xaxis.
 ylabel (str, optional) – Label for the yaxis.

plot
(save_name=None)[source]¶ Plot the spike.
Parameters: save_name ({str, None}) – Name of the plot file. If None, the plot is shown instead of saved to disk. Default is None.

trim
(threshold, min_extent_from_peak=1)[source]¶ Remove the first and last values of the spike that is below threshold.
Parameters:  threshold ({float, int}) – Remove all values from each side of the spike that is bellow this value.
 min_extent_from_peak (int, optional) – Minimum extent of the spike in each direction from the peak.