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

Uploaded Source

Built Distribution

libNeuroML-0.6.1-py3-none-any.whl (385.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: libneuroml-0.6.1.tar.gz
  • Upload date:
  • Size: 386.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.4

File hashes

Hashes for libneuroml-0.6.1.tar.gz
Algorithm Hash digest
SHA256 feacb510fff913b78795cb0a9115d7eacf523679e55ac0edef5b454af4b8ea84
MD5 b981f8963880f1edde869e9b4a4c3ec6
BLAKE2b-256 e9cd61af5f1d4e146db753b7468477f7548c632136a7f8eb4875fcbb7d89bd9d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: libNeuroML-0.6.1-py3-none-any.whl
  • Upload date:
  • Size: 385.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.4

File hashes

Hashes for libNeuroML-0.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d4b206ecd7dbc809bca6b33a7c66f1646d227cafe356574646717cf18e0e4eb8
MD5 da133fa4deabde3c0845a92dc35f79eb
BLAKE2b-256 e956bc2fbbbd0dae28bf7c14247887ffb912af652caa91036f0c95bc8a2f8120

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