The BrainX Ecosystem#
brainpy.state is the point-neuron modeling layer of the BrainX ecosystem — a family of composable, JAX-based packages
for brain modeling and brain-inspired computing. Each package owns one concern,
and brainpy.state builds on them: state management, physical units,
event-driven operators, training/analysis tooling, and online learning.
State management for JAX-based brain modeling. Provides the State
abstraction, init_all_states, environ.context (dt/t), the
brainstate.nn modules and connectivity, and the brainstate.transform
primitives (jit / for_loop / scan / checkpointed_*) that
drive every brainpy.state model.
Physical units for neuroscience. Every brainpy.state parameter carries a
unit (mV, ms, nS, …) so dimensional errors are caught at
construction time rather than producing silently wrong results.
Event-driven sparse operators. Supplies the sparse, spike-event linear algebra behind large recurrent and balanced networks, keeping memory and compute proportional to the events that actually occur.
Surrogate gradients, initializers, optimizers, metrics, and visualization.
Home of braintools.surrogate (passed as spk_fun=),
braintools.init, braintools.optim, braintools.metric, and
braintools.visualize used throughout the training examples.
Linear-memory online learning for spiking networks. The published engine (BrainScale preprint → BrainTrace) that reformulates real-time recurrent learning so memory scales linearly with the number of neurons, exploiting the same neuron-aligned synaptic state as AlignPre/AlignPost.
Installing the ecosystem#
The whole stack installs together:
pip install BrainX
See Installation for per-backend (CPU / CUDA / TPU) options.
See Also#
Online learning — how AlignPre/AlignPost enables the linear-memory online learning that
braintraceimplements.The state paradigm — the
brainstateState paradigm andtransformprimitives in depth.Citing brainpy.state — how to cite the framework.