spark.nn.components.somas.exponential#

Classes#

ExponentialSomaConfig

ExponentialSoma model configuration class.

ExponentialSoma

Exponential soma model.

RefractoryExponentialSomaConfig

RefractoryExponentialSoma model configuration class.

RefractoryExponentialSoma

Exponential soma with refractory time model.

AdaptiveExponentialSomaConfig

AdaptiveExponentialSoma model configuration class.

AdaptiveExponentialSoma

Adaptive Exponential soma model.

SimplifiedAdaptiveExponentialSomaConfig

SimplifiedAdaptiveExponentialSoma model configuration class.

SimplifiedAdaptiveExponentialSoma

Simplified Adaptive Exponential soma model. This model drops the subthreshold adaptation.

Module Contents#

class spark.nn.components.somas.exponential.ExponentialSomaConfig(__skip_validation__=False, **kwargs)[source]#

Bases: spark.nn.components.somas.base.SomaConfig

ExponentialSoma model configuration class.

Parameters:

__skip_validation__ (bool)

potential_rest: float | jax.Array | spark.nn.initializers.base.Initializer[source]#
potential_reset: float | jax.Array | spark.nn.initializers.base.Initializer[source]#
potential_tau: float | jax.Array | spark.nn.initializers.base.Initializer[source]#
resistance: float | jax.Array | spark.nn.initializers.base.Initializer[source]#
threshold: float | jax.Array | spark.nn.initializers.base.Initializer[source]#
rheobase_threshold: float | jax.Array | spark.nn.initializers.base.Initializer[source]#
spike_slope: float | jax.Array | spark.nn.initializers.base.Initializer[source]#
class spark.nn.components.somas.exponential.ExponentialSoma(config=None, **kwargs)[source]#

Bases: spark.nn.components.somas.base.Soma

Exponential soma model.

Init:

units: tuple[int, …] potential_rest: float | jax.Array potential_reset: float | jax.Array potential_tau: float | jax.Array resistance: float | jax.Array threshold: float | jax.Array

Input:

in_spikes: SpikeArray

Output:

out_spikes: SpikeArray

Reference:

How Spike Generation Mechanisms Determine the Neuronal Response to Fluctuating Inputs Nicolas Fourcaud-Trocmé, David Hansel, Carl van Vreeswijk, and Nicolas Brunel The Journal of Neuroscience, December 17, 2003 https://www.jneurosci.org/content/23/37/11628 Neuronal Dynamics: From Single Neurons to Networks and Models of Cognition. Gerstner W, Kistler WM, Naud R, Paninski L. Chapter 5.2 Exponential Integrate-and-Fire Model https://neuronaldynamics.epfl.ch/online/Ch5.S2.html

Parameters:

config (ExponentialSomaConfig | None)

config: ExponentialSomaConfig[source]#
build(input_specs)[source]#

Build method.

Parameters:

input_specs (dict[str, spark.core.specs.PortSpecs])

Return type:

None

class spark.nn.components.somas.exponential.RefractoryExponentialSomaConfig(__skip_validation__=False, **kwargs)[source]#

Bases: ExponentialSomaConfig

RefractoryExponentialSoma model configuration class.

Parameters:

__skip_validation__ (bool)

cooldown: float | jax.Array | spark.nn.initializers.base.Initializer[source]#
class spark.nn.components.somas.exponential.RefractoryExponentialSoma(config=None, **kwargs)[source]#

Bases: ExponentialSoma

Exponential soma with refractory time model.

Init:

units: tuple[int, …] potential_rest: float | jax.Array potential_reset: float | jax.Array potential_tau: float | jax.Array resistance: float | jax.Array threshold: float | jax.Array cooldown: float | jax.Array

Input:

in_spikes: SpikeArray

Output:

out_spikes: SpikeArray

Reference:

How Spike Generation Mechanisms Determine the Neuronal Response to Fluctuating Inputs Nicolas Fourcaud-Trocmé, David Hansel, Carl van Vreeswijk, and Nicolas Brunel The Journal of Neuroscience, December 17, 2003 https://www.jneurosci.org/content/23/37/11628 Neuronal Dynamics: From Single Neurons to Networks and Models of Cognition. Gerstner W, Kistler WM, Naud R, Paninski L. Chapter 5.2 Exponential Integrate-and-Fire Model https://neuronaldynamics.epfl.ch/online/Ch5.S2.html

Parameters:

config (RefractoryExponentialSomaConfig | None)

config: RefractoryExponentialSomaConfig[source]#
build(input_specs)[source]#

Build method.

Parameters:

input_specs (dict[str, spark.core.specs.PortSpecs])

Return type:

None

reset()[source]#

Resets component state.

Return type:

None

class spark.nn.components.somas.exponential.AdaptiveExponentialSomaConfig(__skip_validation__=False, **kwargs)[source]#

Bases: ExponentialSomaConfig

AdaptiveExponentialSoma model configuration class.

Parameters:

__skip_validation__ (bool)

adaptation_tau: float | jax.Array | spark.nn.initializers.base.Initializer[source]#
adaptation_delta: float | jax.Array | spark.nn.initializers.base.Initializer[source]#
adaptation_subthreshold: float | jax.Array | spark.nn.initializers.base.Initializer[source]#
class spark.nn.components.somas.exponential.AdaptiveExponentialSoma(config=None, **kwargs)[source]#

Bases: ExponentialSoma

Adaptive Exponential soma model.

Init:

units: tuple[int, …] potential_rest: float | jax.Array potential_reset: float | jax.Array potential_tau: float | jax.Array resistance: float | jax.Array threshold: float | jax.Array cooldown: float | jax.Array threshold_tau: float | jax.Array threshold_delta: float | jax.Array

Input:

in_spikes: SpikeArray

Output:

out_spikes: SpikeArray

Reference:

Adaptive Exponential Integrate-and-Fire Model as an Effective Description of Neuronal Activity. Romain Brette and Gerstner Wulfram Gerstner W, Kistler WM, Naud R, Paninski L. Journal of Neurophysiology vol. 94, no. 5, pp. 3637-3642, 2005 https://doi.org/10.1152/jn.00686.2005 Neuronal Dynamics: From Single Neurons to Networks and Models of Cognition. Gerstner W, Kistler WM, Naud R, Paninski L. Chapter 5.2 Exponential Integrate-and-Fire Model https://neuronaldynamics.epfl.ch/online/Ch5.S2.html

Parameters:

config (AdaptiveExponentialSomaConfig | None)

config: AdaptiveExponentialSomaConfig[source]#
build(input_specs)[source]#

Build method.

Parameters:

input_specs (dict[str, spark.core.specs.PortSpecs])

Return type:

None

reset()[source]#

Resets neuron states to their initial values.

class spark.nn.components.somas.exponential.SimplifiedAdaptiveExponentialSomaConfig(__skip_validation__=False, **kwargs)[source]#

Bases: RefractoryExponentialSomaConfig

SimplifiedAdaptiveExponentialSoma model configuration class.

Parameters:

__skip_validation__ (bool)

threshold_tau: float | jax.Array | spark.nn.initializers.base.Initializer[source]#
threshold_delta: float | jax.Array | spark.nn.initializers.base.Initializer[source]#
class spark.nn.components.somas.exponential.SimplifiedAdaptiveExponentialSoma(config=None, **kwargs)[source]#

Bases: RefractoryExponentialSoma

Simplified Adaptive Exponential soma model. This model drops the subthreshold adaptation.

Init:

units: tuple[int, …] potential_rest: float | jax.Array potential_reset: float | jax.Array potential_tau: float | jax.Array resistance: float | jax.Array threshold: float | jax.Array cooldown: float | jax.Array threshold_tau: float | jax.Array threshold_delta: float | jax.Array

Input:

in_spikes: SpikeArray

Output:

out_spikes: SpikeArray

Reference:

Adaptive Exponential Integrate-and-Fire Model as an Effective Description of Neuronal Activity. Romain Brette and Gerstner Wulfram Gerstner W, Kistler WM, Naud R, Paninski L. Journal of Neurophysiology vol. 94, no. 5, pp. 3637-3642, 2005 https://doi.org/10.1152/jn.00686.2005 Neuronal Dynamics: From Single Neurons to Networks and Models of Cognition. Gerstner W, Kistler WM, Naud R, Paninski L. Chapter 5.2 Exponential Integrate-and-Fire Model https://neuronaldynamics.epfl.ch/online/Ch5.S2.html

Parameters:

config (SimplifiedAdaptiveExponentialSomaConfig | None)

config: SimplifiedAdaptiveExponentialSomaConfig[source]#
build(input_specs)[source]#

Build method.

Parameters:

input_specs (dict[str, spark.core.specs.PortSpecs])

Return type:

None

reset()[source]#

Resets component state.

Return type:

None