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.3.tar.gz (387.9 kB view details)

Uploaded Source

Built Distribution

libNeuroML-0.6.3-py3-none-any.whl (386.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: libneuroml-0.6.3.tar.gz
  • Upload date:
  • Size: 387.9 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.3.tar.gz
Algorithm Hash digest
SHA256 011136e3cd3f8b46c5093857e788f9bff8a8ae52696dcb9080eeb4d74921070e
MD5 0710caba633387252dfda5bd39a4278a
BLAKE2b-256 ab0de6fc5e3f0ff49f29bd771d1d74ab3e2795c5be2394fd98236bd73ef51a38

See more details on using hashes here.

File details

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

File metadata

  • Download URL: libNeuroML-0.6.3-py3-none-any.whl
  • Upload date:
  • Size: 386.6 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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 3c1d17279b7d3d74bda3536da1770b64142a6ad097ab0ae1d76fd8efc7311041
MD5 7472171860b2ff608d9a5ab101ce947c
BLAKE2b-256 59914985cbfcb5aa0a0b29e6e26e848f4f6f5d2aad756eb0caaf6ea0b55a55c9

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