jaxfne
Tensor-Field Neural Equations (TFNE) expressed as a JAX simulation engine for layer-resolved neural circuits, source operators, field proxies, probes, objectives, and evidence receipts.
Scientific grammar: Emitter → Source → Field → Probe → Objective → Optimizer → Manifest
Execution grammar: CircuitSpec → construct → Model → simulate → Signals
CircuitSpec is a conceptual category (Configuration | NeuronalTensor),
not a concrete public production class — construct accepts either a
Configuration (original path) or a NeuronalTensor with a
RuntimeConfiguration (tensor-first path). It is unrelated to the
experimental jaxfne.experimental_hpc.CircuitSpec type, which is
not accepted by production construct.
Adaptation (optional HDP family): finite-dimensional hidden biophysical state $H$ and adaptive parameter coordinates $\Theta$ (synaptic and intrinsic), mediated by
$$ \dot X = F_X(X,H,\Theta,U),\quad \dot H = F_H(H,X,\Theta,U),\quad \dot\Theta = F_\Theta(H,X,\Theta). $$
$H$-state is the latent representation; HDP is the adaptive dynamical formulation that uses it. See H-state / HDP guide.
Install
pip install jaxfne
pip install "jaxfne[viz]" # optional plotting
Development: pip install -e ".[dev,viz]" after cloning.
Minimal example
import jaxfne as jtfne
jtfne.enable_x64()
tensor = jtfne.load_canonical_neuronal_tensor("canonical-v1-column-1000n")
model = jtfne.construct(tensor, jtfne.RuntimeConfiguration(seed=0, duration_ms=1000.0, dt_ms=0.5))
signals = jtfne.simulate(model)
Optional: generative development (JDNA)
Instead of loading a fixed tensor, generate one from a PseudoGenome:
genome = jtfne.load_canonical_pseudogenome("canonical-v1-column-1000n")
tensor = jtfne.develop(genome, seed=0) # K_D: development seed
model = jtfne.construct(tensor, jtfne.RuntimeConfiguration(seed=1, duration_ms=1000.0, dt_ms=0.5))
signals = jtfne.simulate(model)
JDNA is an optional path; the direct Configuration/NeuronalTensor paths
remain first-class. See JDNA guide.
JaxFNE composes established neural dynamical models, source/readout operators, and JAX-native execution under the TFNE typed state/map grammar. See TFNE theory and References.
Import convention: import jaxfne as jtfne. Builder paths, paradigms, and
optimization: Quickstart.
Relative and calibrated outputs
Simulated quantities are relative by default. Calibrated claims require an explicit transformation with evidence. See Scope & status.
Documentation
| Resource | Link |
|---|---|
| Quickstart | docs/quickstart.md |
| Site | jaxfne.readthedocs.io |
| Tutorials | docs/tutorials/ |
| Études | docs/etudes/ |
| Frozen compatibility contract (0.4.13) | docs/public_surface_contract.md |
| Changelog | docs/changelog.md |
Citation
Visual examples
Real package outputs (simulated proxy scaffolds; calibration requires an
explicit transformation with evidence):
circuit geometry from Model.neuron_table(), a 10 s spike raster, a
laminar spectrolaminar readout, and long-timescale firing-rate dynamics
with homeostasis on/off. More: showcases.
Release files for jaxfne 0.4.20
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| jaxfne-0.4.20.tar.gz | 36.7 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| jaxfne-0.4.20-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 37.4 MB
Release files / jaxfne-0.4.20.tar.gz
| Download URL | jaxfne-0.4.20.tar.gz |
|---|---|
| Size | 36.7 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fa3c656163abf6381d4a0415d8b4fe3a1c5e4af396467af25e05990e090e611a
|
|
BLAKE2b-256 checksum How to use checksums |
1ea6e4cdbd9a7a844115f48477a29030aadcf1671a3948dca274b6ee48a462fd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 4, 2026.
Transparency logRelease files / jaxfne-0.4.20-py3-none-any.whl
| Download URL | jaxfne-0.4.20-py3-none-any.whl |
|---|---|
| Size | 698.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3a048f605caf2251799fe347cd2811a689209041ad51a7e4f9dd3c181946470c
|
|
BLAKE2b-256 checksum How to use checksums |
f89077f1899dbb930b6a7be21fb8d583bc8b9f4428f0c121e3071da0a7c0beda
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 4, 2026.
Transparency log