|
13 | 13 | # limitations under the License. |
14 | 14 | # ============================================================================== |
15 | 15 |
|
16 | | -from brainpy_state import * |
17 | | -from brainpy_state import __all__ |
| 16 | +r""" |
| 17 | +State-based brain dynamics models built on ``brainstate``. |
18 | 18 |
|
19 | | -if __name__ == '__main__': |
20 | | - print(LIF) # type: ignore[name-defined] # provided by `from brainpy_state import *` |
21 | | - print(__all__) |
| 19 | +This module provides composable neuron, synapse, projection, readout, and |
| 20 | +input models with explicit ``State`` objects, so they compose with |
| 21 | +``brainstate`` transformations (``jit``, ``grad``, ``vmap``, ``for_loop``). |
| 22 | +""" |
| 23 | + |
| 24 | +from brainpy.state._base import Dynamics, Neuron, Synapse |
| 25 | +from brainpy.state.exponential import Expon, DualExpon |
| 26 | +from brainpy.state.hh import HH, MorrisLecar, WangBuzsakiHH |
| 27 | +from brainpy.state.inputs import SpikeTime, PoissonSpike, PoissonEncoder, PoissonInput, poisson_input |
| 28 | +from brainpy.state.inputs import (SectionInput, ConstantInput, StepInput, RampInput, |
| 29 | + SinusoidalInput, OUProcessInput, WienerProcessInput) |
| 30 | +from brainpy.state.izhikevich import Izhikevich, IzhikevichRef |
| 31 | +from brainpy.state.lif import ( |
| 32 | + IF, LIF, LIFRef, ALIF, |
| 33 | + ExpIF, ExpIFRef, |
| 34 | + AdExIF, AdExIFRef, |
| 35 | + QuaIF, AdQuaIF, AdQuaIFRef, |
| 36 | + Gif, GifRef, |
| 37 | + CubaLIF, CobaLIF, |
| 38 | +) |
| 39 | +from brainpy.state.projection import ( |
| 40 | + Projection, AlignPostProj, DeltaProj, CurrentProj, |
| 41 | + align_pre_projection, align_post_projection, |
| 42 | +) |
| 43 | +from brainpy.state.readout import LeakyRateReadout |
| 44 | +from brainpy.state.reduced import FitzHughNagumo, HindmarshRose |
| 45 | +from brainpy.state.stp import STP, STD |
| 46 | +from brainpy.state.synapse import Alpha, AMPA, GABAa, BioNMDA |
| 47 | +from brainpy.state.synaptic_projection import SymmetryGapJunction, AsymmetryGapJunction |
| 48 | +from brainpy.state.synouts import SynOut, COBA, CUBA, MgBlock |
| 49 | + |
| 50 | +__all__ = [ |
| 51 | + # Base models |
| 52 | + 'Dynamics', 'Neuron', 'Synapse', |
| 53 | + |
| 54 | + # Neuron models - LIF family |
| 55 | + 'IF', 'LIF', 'LIFRef', 'ALIF', |
| 56 | + 'ExpIF', 'ExpIFRef', |
| 57 | + 'AdExIF', 'AdExIFRef', |
| 58 | + 'QuaIF', 'AdQuaIF', 'AdQuaIFRef', |
| 59 | + 'Gif', 'GifRef', |
| 60 | + 'CubaLIF', 'CobaLIF', |
| 61 | + |
| 62 | + # Neuron models - Hodgkin-Huxley family |
| 63 | + 'HH', 'MorrisLecar', 'WangBuzsakiHH', |
| 64 | + |
| 65 | + # Neuron models - Izhikevich family |
| 66 | + 'Izhikevich', 'IzhikevichRef', |
| 67 | + |
| 68 | + # Neuron models - reduced (FitzHugh-Nagumo, Hindmarsh-Rose) |
| 69 | + 'FitzHughNagumo', 'HindmarshRose', |
| 70 | + |
| 71 | + # Synapse models |
| 72 | + 'Expon', 'DualExpon', |
| 73 | + 'Alpha', 'AMPA', 'GABAa', 'BioNMDA', |
| 74 | + |
| 75 | + # Synaptic outputs |
| 76 | + 'SynOut', 'COBA', 'CUBA', 'MgBlock', |
| 77 | + |
| 78 | + # Short-term plasticity |
| 79 | + 'STP', 'STD', |
| 80 | + |
| 81 | + # Projections |
| 82 | + 'Projection', 'AlignPostProj', 'DeltaProj', 'CurrentProj', |
| 83 | + 'align_pre_projection', 'align_post_projection', |
| 84 | + 'SymmetryGapJunction', 'AsymmetryGapJunction', |
| 85 | + |
| 86 | + # Readouts |
| 87 | + 'LeakyRateReadout', |
| 88 | + |
| 89 | + # Input generators |
| 90 | + 'SpikeTime', 'PoissonSpike', 'PoissonEncoder', 'PoissonInput', 'poisson_input', |
| 91 | + 'SectionInput', 'ConstantInput', 'StepInput', 'RampInput', |
| 92 | + 'SinusoidalInput', 'OUProcessInput', 'WienerProcessInput', |
| 93 | +] |
0 commit comments