Skip to content

Tags: brainpy/BrainPy

Tags

V2.7.1

Toggle V2.7.1's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
update state neuron and synapse (#794)

* Update version to 2.7.1 and refactor Dynamics class: enhance input handling and add new properties

* Update version to 2.7.1 and refactor Dynamics class: enhance input handling and add new properties

* Add state version implementations for neuron and synapse models

This commit implements state versions of several neuron and synapse models
using the brainstate framework, following BrainPy v2.7+ architecture.

Neuron Models Added:
- LIF (Leaky Integrate-and-Fire) neurons with multiple variants:
  * LIF: Basic LIF neuron with exponential synaptic input
  * LifRef: LIF with refractory period
  * ExpIF: Exponential Integrate-and-Fire
  * ExpIFRef: ExpIF with refractory period
  * AdExIF: Adaptive Exponential Integrate-and-Fire
  * AdExIFRef: AdExIF with refractory period
  * QuaIF: Quadratic Integrate-and-Fire
  * QuaIFRef: QuaIF with refractory period
  * AdQuaIF: Adaptive Quadratic Integrate-and-Fire
  * AdQuaIFRef: AdQuaIF with refractory period
  * GifRef: Generalized Integrate-and-Fire with refractory

- Izhikevich neuron model with variants:
  * Izhikevich: Basic Izhikevich neuron
  * IzhikevichRef: With refractory period

- Hodgkin-Huxley (HH) neuron model:
  * HH: Classic Hodgkin-Huxley model with Na+ and K+ channels

Synapse Models Added:
- BioNMDA: Biological NMDA receptor with second-order kinetics
  * Implements two-state cascade dynamics (x and g variables)
  * Slower rise time compared to AMPA (biologically realistic)
  * Comprehensive documentation with mathematical formulation

Testing:
- Comprehensive test suites added for all models
- AMPA and GABAa synapse tests added
- All tests passing with proper unit handling

Key Features:
- Uses brainstate ecosystem (HiddenState, ShortTermState, LongTermState)
- Proper unit support with brainunit
- Exponential Euler integration for numerical stability
- Batch processing support
- Consistent API design across all models

Files Modified:
- brainpy/state/_lif.py: Added LIF variants
- brainpy/state/_izhikevich.py: Added Izhikevich variants (new file)
- brainpy/state/_hh.py: Added HH model (new file)
- brainpy/state/_synapse.py: Added BioNMDA model
- brainpy/state/_synapse_test.py: Added comprehensive tests
- brainpy/state/_lif_test.py: Added LIF tests
- brainpy/state/__init__.py: Updated exports
- brainpy/dyn/neurons/lif.py: Minor documentation updates

* Add Examples sections to neuron classes in _lif.py

Added comprehensive Examples sections to 5 neuron classes that were
missing them:
- QuaIF: Quadratic Integrate-and-Fire neuron
- AdQuaIF: Adaptive Quadratic Integrate-and-Fire neuron
- AdQuaIFRef: AdQuaIF with refractory period
- Gif: Generalized Integrate-and-Fire neuron
- GifRef: Gif with refractory period

Each Examples section includes:
- Import statements for required modules
- Basic usage with parameter specifications
- State initialization examples
- Update and spike generation examples
- Network integration with brainstate.nn.Sequential
- Additional Notes highlighting key features

All 13 neuron classes in _lif.py now have complete documentation
with Examples sections following consistent format and style.

* Refactor module assignments to 'brainpy.state' for consistency across files

* Update import paths in _base.py: change references from brainstate to brainpy for consistency

* fix tests

* Update import paths in _inputs.py: change references from brainpy to brainpy.state for consistency

---------

Co-authored-by: Chaoming Wang <adaduo@outlook.com>
Co-authored-by: Chaoming Wang <chao.brain@qq.com>

V2.7.0

Toggle V2.7.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Downgrade version to 2.7.0 in __init__.py (#792)

Reverts the package version from 3.0.1 to 2.7.0 in brainpy/__init__.py, possibly to match a previous release or resolve compatibility issues.

V2.6.0

Toggle V2.6.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Upgrade CI (#658)

* version 2.6.0

* upgrade CI

V2.5.0

Toggle V2.5.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Version control in Publish.yml CI (#610)

version control in Publish.yml CI

V2.4.6

Toggle V2.4.6's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
Merge pull request #543 from chaoming0625/master

[dyn] update STDP APIs on CPUs and fix bugs

V2.4.5

Toggle V2.4.5's commit message
fix

V2.4.4

Toggle V2.4.4's commit message
Merge branch 'master' of https://github.com/brainpy/BrainPy

V2.4.3

Toggle V2.4.3's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
Merge pull request #426 from brainpy/doc

fix autograd bugs

V2.4.2

Toggle V2.4.2's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
[dyn] Update dyn.neurons docs and fix several bugs (#411)

[dyn] Update dyn.neurons docs and fix several bugs

V2.4.1

Toggle V2.4.1's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
Merge pull request #378 from chaoming0625/master

update brainpylib requirements