Ca_ZH2019_IO_Frozen#
- class braincell.channel.Ca_ZH2019_IO_Frozen(*args, **kwargs)#
Ca_ZH2019_IOwithfreeze_m_infpinned toTrue.A registry-only subclass of
Ca_ZH2019_IOthat always stops autodiff through the instantaneous activation factor, regardless of what a caller passes forfreeze_m_inf.- Parameters:
*args – Positional arguments forwarded to
Ca_ZH2019_IO.**kwargs – Keyword arguments forwarded to
Ca_ZH2019_IO; anyfreeze_m_infentry is overwritten withTruebefore the parent constructor runs (see Notes).
See also
Ca_ZH2019_IOBase class; already defaults to
freeze_m_inf=True(see Notes for what this subclass adds on top of that default).
Notes
“Frozen” describes the gradient path through the instantaneous activation term, not the forward numerics:
Ca_ZH2019_IOalready defaults tofreeze_m_inf=True, so this subclass does not change the default forward current or default gradient behaviour by itself. What it changes is configurability –__init__here unconditionally setskwargs["freeze_m_inf"] = Truebefore delegating toCa_ZH2019_IO, so a caller cannot recover the unfrozen (full-gradient) behaviour by passingfreeze_m_inf=Falseto this class, whereas it can to the base class. No channel state stops evolving:mwas never a statefulGatein the base class either (onlyhis), andjax.lax.stop_gradient()affects only backward-mode differentiation, never the forward value computed byf_m_inf().Provenance, the single-compartment caveat, and the
rates-relocation import deviation are identical toCa_ZH2019_IO’s and are not repeated here; see that class’s Notes. Per the bibliography’s attribution scan, this subclass contributes no rate-function code of its own – it inherits every kinetic equation unchanged fromCa_ZH2019_IO, that is from Manor, Rinzel, Segev & Yarom (1997) [1] as imported by Zhang & Santaniello (2019) [2].References