Skip to main content

A Python library for working with NeuroML descriptions of neuronal models

Project description

Introduction

GH Build Documentation Status PyPI PyPI - Python Version GitHub GitHub pull requests GitHub issues GitHub Org's stars Twitter Follow Gitter

This package provides Python libNeuroML, for working with neuronal models specified in NeuroML 2.

For more about libNeuroML see:

Michael Vella, Robert C. Cannon, Sharon Crook, Andrew P. Davison, Gautham Ganapathy, Hugh P. C. Robinson, R. Angus Silver and Padraig Gleeson, libNeuroML and PyLEMS: using Python to combine procedural and declarative modeling approaches in computational neuroscience Frontiers in Neuroinformatics 2014, doi: 10.3389/fninf.2014.00038

PLEASE CITE THE PAPER ABOVE IF YOU USE libNeuroML!

Documentation is available at http://readthedocs.org/docs/libneuroml/en/latest/

For installation instructions, see http://readthedocs.org/docs/libneuroml/en/latest/install.html

For an overview of all NeuroML related libraries/documentation/publications see https://docs.neuroml.org

pyNeuroML

A related package, pyNeuroML builds on this and provides functionality, scripts and modules for reading, writing, simulating and analysing NeuroML2/LEMS models.

pyNeuroML builds on: libNeuroML & PyLEMS and wraps functionality from jNeuroML.

Development process for libNeuroML

Most of the work happens in the development branch. That branch is kept up to date with the development branches for NeuroML 2 and related libraries. See https://docs.neuroml.org/ for an overview of the various NeuroML libraries.

Changelog

See also https://github.com/NeuralEnsemble/libNeuroML/releases.

version 0.5.8

  • drop py3.7, add py3,12
  • fix loader to check for given path and fall back to relative path
  • extend get_segment_groups_from_substring to also include an unbranched filter
  • more type hint/doc fixes

version 0.5.7

  • more documentation for writes/loaders

version 0.5.6

  • documentation fixes to writer modules

version 0.5.5

  • update schema, changes for NML 2.3 release

version 0.5.4

  • use natsort to improve sorting of segments/groups when optimising

version 0.5.3

  • add links to schema documentation
  • move from legacy setup.py to pyproject.toml build system

version 0.5.2

  • explicitly depend on numpy

version 0.5.1

  • updates to GHA

version 0.5.0

  • enable CI on py3.11
  • fix to loaders
  • format code with black
  • add graph representation for morphology, and methods to calculate distances b/w segments

version 0.4.1

  • add multiple cell builder utility functions
  • performance improvements in generic helper functions
  • documentation fixes/improvements
  • add type annotations to all nml classes to aid users
  • add level 1 validation method
  • add generic component inspection methods

version 0.4.0

  • update to use schema version 2.3
  • drop python 2 support

version 0.3.1

  • include schema documentation in generated nml.py API
  • introduce generic methods to add child/children elements to components

version 0.2.58

  • multiple documentation fixes

version 0.2.57

  • Enable Python 3.10 support
  • Regenerate nml.py with generateDS using Python 3
  • Add generic add method to all NeuroML ComponentType classes that allows users to easily construct their NeuroML documents.
  • Improve unit tests
  • DEPRECATION notice: append_to_element will be deprecated in future releases, please use the add method instead

version 0.2.56

  • Documentation updates for RTD and other minor fixes.

version 0.2.55

  • Patch release with minor changes under the hood.
  • Use PyTest for testing.
  • Enable CI on GitHub Actions

version 0.2.54

  • Using Schema for NeuroML v2.1. Better compatibility with Python 3

version 0.2.50

  • Updated to use the final stable Schema for NeuroML v2.0

version 0.2.47

  • Updated to use the final stable Schema for NeuroML v2beta5

version 0.2.18

  • Updated to use the final stable Schema for NeuroML v2beta4
  • Tested with Python 3

version 0.2.4

  • Updated to use the Schema for NeuroML v2beta4

version 0.2.2

  • Updated to use the Schema for NeuroML v2beta3
  • Ensures numpy & pytables are only required when using non-XML loaders/writers

version 0.2.0

  • Updated to use the Schema for NeuroML v2beta2

version 0.1.9

  • Minor release: Update to latest schema

version 0.1.8

  • Several Bug fixes and small enhamcements
  • Support for latest NeuroML schema (see change outline)
  • JSON serialization
  • MongoDB backend
  • HDF5 serialization
  • Improved installation process
  • All usage examples are now run on the Travis-CI continuous integration server to confirm that that they do not error.
  • Schema validation utility
  • Improved documentation and documentation new look

:copyright: Copyright 2023 by the libNeuroML team, see AUTHORS. Modified BSD License, see LICENSE for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

libneuroml-0.6.4.tar.gz (388.6 kB view details)

Uploaded Source

Built Distribution

libNeuroML-0.6.4-py3-none-any.whl (386.8 kB view details)

Uploaded Python 3

File details

Details for the file libneuroml-0.6.4.tar.gz.

File metadata

  • Download URL: libneuroml-0.6.4.tar.gz
  • Upload date:
  • Size: 388.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for libneuroml-0.6.4.tar.gz
Algorithm Hash digest
SHA256 549b99aebd219ebdc9f5e1ab57b6258930750df5d6b7747b118b385360e3c30a
MD5 f7ac2ffbf2a1885fc146388a8dc0f975
BLAKE2b-256 03c9c3b90000619d2c3686bca33022a19f5b200a837a0721b6971653fa8ecee3

See more details on using hashes here.

File details

Details for the file libNeuroML-0.6.4-py3-none-any.whl.

File metadata

  • Download URL: libNeuroML-0.6.4-py3-none-any.whl
  • Upload date:
  • Size: 386.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for libNeuroML-0.6.4-py3-none-any.whl
Algorithm Hash digest
SHA256 71b492dc835b1655b5f9c1d967db8549e905fd45aa0a4a6b7a1b2b8e075c4e6d
MD5 292de4124cdb345d457d222f18ef80e7
BLAKE2b-256 b62b3fac85f8d1e2ae944bae855212c361037ac414516d9fde149dc2651d6f3e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page