tsodyks_synapse_hom

tsodyks_synapse_hom#

class brainpy.state.tsodyks_synapse_hom(*args, **kwargs)#

Homogeneous Tsodyks (2000) short-term-plasticity synapse spec.

Shares weight, U, tau_psc, tau_fac and tau_rec across all edges; x (recovered), y (active) and u (utilization) are per-edge state propagated over the inter-spike interval h = t_now - t_lastspike and updated on each presynaptic spike. The effective amplitude delivered for a spike is w_eff = u*x * weight.

Parameters:
  • weight (ArrayLike or Quantity, optional) – Shared synaptic weight (pA; bare numbers are interpreted as pA). Default 1.0 pA.

  • delay (Quantity, optional) – Homogeneous axonal delay (> 0). Default 1.0 ms.

  • receptor_type (int, optional) – Postsynaptic receptor port (>= 0). Default 0.

  • tau_psc (Quantity, optional) – Synaptic-current decay time constant (> 0). Default 3.0 ms.

  • tau_fac (Quantity, optional) – Facilitation time constant (>= 0; 0 disables facilitation). Default 0.0 ms.

  • tau_rec (Quantity, optional) – Recovery time constant (> 0). Default 800.0 ms.

  • U (float, optional) – Baseline utilization increment, in [0, 1]. Default 0.5.

  • x (float, optional) – Initial recovered / active / utilization fractions. x + y <= 1 is enforced; u is not range-checked (preserving the NEST _hom asymmetry). Defaults 1.0, 0.0, 0.0.

  • y (float, optional) – Initial recovered / active / utilization fractions. x + y <= 1 is enforced; u is not range-checked (preserving the NEST _hom asymmetry). Defaults 1.0, 0.0, 0.0.

  • u (float, optional) – Initial recovered / active / utilization fractions. x + y <= 1 is enforced; u is not range-checked (preserving the NEST _hom asymmetry). Defaults 1.0, 0.0, 0.0.

Notes

NEST _hom validation messages drop the quotes around parameter names ("tau_psc must be > 0.", "U must be in [0,1]."). The propagator Pxy has a tau_psc - tau_rec denominator; NEST adds no singular guard, so neither does this spec — avoid tau_psc tau_rec.

References

Examples

>>> import brainunit as u
>>> from brainpy.state import tsodyks_synapse_hom
>>> s = tsodyks_synapse_hom(U=0.5)
>>> s.is_homogeneous_weight
True
>>> sorted(s.edge_state_init())
['t_lastspike', 'u', 'x', 'y']