Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unit of current and membrane resistance in Generalized Integrate-and-Fire model. #548

Open
CloudyDory opened this issue Nov 22, 2023 · 2 comments

Comments

@CloudyDory
Copy link
Contributor

CloudyDory commented Nov 22, 2023

Hi, in BrainPy's documentation on Generalized Integrate-and-Fire model, the model parameters and variables are:

  **Model Parameters**
  ============= ============== ======== ====================================================================
  **Parameter** **Init Value** **Unit** **Explanation**
  ------------- -------------- -------- --------------------------------------------------------------------
  V_rest        -70            mV       Resting potential.
  V_reset       -70            mV       Reset potential after spike.
  V_th_inf      -50            mV       Target value of threshold potential :math:`V_{th}` updating.
  V_th_reset    -60            mV       Free parameter, should be larger than :math:`V_{reset}`.
  R             20             \        Membrane resistance.
  tau           20             ms       Membrane time constant. Compute by :math:`R * C`.
  a             0              \        Coefficient describes the dependence of
                                        :math:`V_{th}` on membrane potential.
  b             0.01           \        Coefficient describes :math:`V_{th}` update.
  k1            0.2            \        Constant pf :math:`I1`.
  k2            0.02           \        Constant of :math:`I2`.
  R1            0              \        Free parameter.
                                        Describes dependence of :math:`I_1` reset value on
                                        :math:`I_1` value before spiking.
  R2            1              \        Free parameter.
                                        Describes dependence of :math:`I_2` reset value on
                                        :math:`I_2` value before spiking.
  A1            0              \        Free parameter.
  A2            0              \        Free parameter.
  ============= ============== ======== ====================================================================

  **Model Variables**
  ================== ================= =========================================================
  **Variables name** **Initial Value** **Explanation**
  ------------------ ----------------- ---------------------------------------------------------
  V                  -70               Membrane potential.
  input              0                 External and synaptic input current.
  spike              False             Flag to mark whether the neuron is spiking.
  V_th               -50               Spiking threshold potential.
  I1                 0                 Internal current 1.
  I2                 0                 Internal current 2.
  t_last_spike       -1e7              Last spike time stamp.
  ================== ================= =========================================================

It is unclear on the unit of membrane resistance and internal current (and possibly several other parameters and variables?). This may become a problem when using parameters of the GLIF neurons from other simulator which have explicit units.

@chaoming0625
Copy link
Collaborator

Thanks for raising this issue.

@CloudyDory
Copy link
Contributor Author

For reference: If we use parameters values from NEST (https://nest-simulator.readthedocs.io/en/stable/models/glif_psc.html), then I1 and I2 are in unit of pA, R is in unit of GOhm, a, b, k1 and k2 are in unit of 1/ms. If we want to compute tau from R * C, then the membrane capacitance should be in unit of pF.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants