stdp_synapse_hom#
- class brainpy.state.stdp_synapse_hom(*args, **kwargs)#
Homogeneous (shared-parameter) pair-based STDP synapse spec (NEST
stdp_synapse_hom).Functionally identical to
stdp_synapse: potentiation on the post spike (usingK+), depression on the pre spike (usingK-), the Guetig (2003) soft-boundedfacilitate_/depress_forms with the weight clamped to \([0, W_{\max}]\) inside each update, and the same NEST defaults (lambda=0.01,alpha=1.0,mu_plus=mu_minus=1,tau_plus=tau_minus=20ms,Wmax=100). In NEST those parameters are common (homogeneous across the model); here every projection edge already shares one rule instance, so the distinction collapses and the kernel is inherited verbatim.- Parameters:
weight – See
stdp_synapse.delay – See
stdp_synapse.receptor_type – See
stdp_synapse.tau_plus – See
stdp_synapse.tau_minus – See
stdp_synapse.lambda – See
stdp_synapse.alpha – See
stdp_synapse.mu_plus – See
stdp_synapse.mu_minus – See
stdp_synapse.Wmax – See
stdp_synapse.Kplus – See
stdp_synapse.
Notes
NEST divergence — ``tau_minus`` location. As for
stdp_synapse,tau_minusis a parameter of the postsynaptic neuron (ArchivingNode) in NEST, not the synapse; here it is a synapse-spec attribute driving the substrate’s per-postK-trace so STDP runs standalone.Parity note. The consolidated NEST vs. brainpy.state divergence reference — trace-storage move, the family parameter-location map, and the parity-test links — is in STDP parity: where state lives and how spikes pair (Trace storage: tau_minus is a synapse parameter here, a neuron parameter in NEST).
References
Examples
>>> import brainunit as u >>> from brainpy.state import stdp_synapse, stdp_synapse_hom >>> s = stdp_synapse_hom(weight=5.0, lambda_=0.01) >>> isinstance(s, stdp_synapse) # thin reuse of the pair kernel True >>> s.is_homogeneous_weight, s.edge_state_init() (False, {}) >>> float(u.Quantity(s.post_trace_tau).to_decimal(u.ms)) 20.0