{"id":28479551,"url":"https://github.com/neuralensemble/pype9","last_synced_at":"2025-07-08T23:03:55.814Z","repository":{"id":21604501,"uuid":"24924718","full_name":"NeuralEnsemble/pype9","owner":"NeuralEnsemble","description":"Python pipelines to simulate and manipulate neuronal models, and networks thereof,  described in NineML (http://nineml.net)","archived":false,"fork":false,"pushed_at":"2020-04-12T12:01:37.000Z","size":23275,"stargazers_count":3,"open_issues_count":31,"forks_count":7,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-06-07T18:09:31.605Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NeuralEnsemble.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-10-08T04:35:14.000Z","updated_at":"2020-05-28T17:43:02.000Z","dependencies_parsed_at":"2022-08-05T13:18:18.991Z","dependency_job_id":null,"html_url":"https://github.com/NeuralEnsemble/pype9","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/NeuralEnsemble/pype9","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NeuralEnsemble%2Fpype9","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NeuralEnsemble%2Fpype9/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NeuralEnsemble%2Fpype9/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NeuralEnsemble%2Fpype9/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NeuralEnsemble","download_url":"https://codeload.github.com/NeuralEnsemble/pype9/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NeuralEnsemble%2Fpype9/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263350201,"owners_count":23453244,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-06-07T18:09:37.124Z","updated_at":"2025-07-03T15:30:43.686Z","avatar_url":"https://github.com/NeuralEnsemble.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"Pype9\n=====\n\n.. image:: https://travis-ci.org/NeuralEnsemble/pype9.svg?branch=master\n    :target: https://travis-ci.org/NeuralEnsemble/pype9\n.. image:: https://coveralls.io/repos/github/NeuralEnsemble/pype9/badge.svg?branch=master\n    :target: https://coveralls.io/github/NeuralEnsemble/pype9?branch=master\n.. image:: https://img.shields.io/pypi/pyversions/pype9.svg\n    :target: https://pypi.python.org/pypi/pype9/\n    :alt: Supported Python versions\n.. image:: https://img.shields.io/pypi/v/pype9.svg\n    :target: https://pypi.python.org/pypi/pype9/\n    :alt: Latest Version    \n.. image:: https://readthedocs.org/projects/pype9/badge/?version=latest\n    :target: http://pype9.readthedocs.io/en/latest/?badge=latest\n    :alt: Documentation Status \n\nPYthon PipelinEs for 9ML (Pype9) is a collection of Python pipelines\nfor simulating networks of neuron models described in NineML_ with various\nsimulator backends.\n\n\nLinks\n-----\n\n* Documentation: http://pype9.readthedocs.org\n* Mailing list: `NeuralEnsemble Google Group`_\n* Issue tracker: https://github.com/NeuralEnsemble/pype9/issues\n\n\nSupported Simulators\n--------------------\n\nPype9 works with either or both of the following simulator backends\n\n* Neuron_ \u003e= 7.5\n* NEST_ \u003e= 2.14.0\n\nDetailed instructions on how to install these simulators on different platforms\ncan be found in the `Installation documentation`_.\n\n\nUnsupported NineML\n------------------\n\nNineML_ aims to be a comprehensive description language for neural simulation. This\nmeans that it allows the expression of some uncommon configurations that are\ndifficult to implement in Neuron_ and NEST_. Work is planned to make the NEURON\nand NEST pipelines in Pype9 support NineML_ fully, however until then the\nfollowing restrictions apply to models that can be used with Pype9.\n\n* synapses must be linear\n* synapses can only have one variable that varies over a projection (e.g.\n  weight)\n* no recurrent analog connections between populations (e.g. gap junctions)\n* only one event send port per cell\n* names given to NineML_ elements are not escaped and therefore can clash with\n  built-in keywords and some PyPe9 method names (e.g. 'lambda' is a reserved\n  keyword in Python). Please avoid using names that clash with C++ or Python\n  keywords (NB: This will be fixed in future versions).\n\n\nExamples\n--------\n\nGiven a cell model described in NineML_ saved in\n``my_hodgkin_huxley.xml``, the simulator pipeline can run from the command line:\n\n.. code-block:: bash\n   \n   $ pype9 simulate my_hodgkin_huxley.xml#hh_props neuron 100.0 0.01 \\\n     --play isyn isyn.neo.pkl --record v v.neo.pkl --init_value v -65.0 mV\n   \nor in a Python script\n\n.. code-block:: python\n\n   from pype9.simulator.neuron import cell, Simulation\n   from nineml import units as un\n   \n   HodgkinHuxley = cell.MetaClass('my_hodgkin_huxley.xml#hh_class')\n   with Simulation(dt=0.01 * un.ms, seed=1234) as sim: \n      hh = HodgkinHuxley('my_hodgkin_huxley.xml#hh_props', v=-65.0 * un.mV)\n      hh.record('v')\n      sim.run(100.0 * un.ms)\n   v = hh.recording('v')\n   \nPype9 also supports network models described in NineML_ via integration with PyNN_\n\n.. code-block:: bash\n   \n   $ pype9 simulate brunel.xml nest 1000.0 0.01 \\\n     --record Exc.spike_output Exc-nest.neo.pkl \\\n     --record Inh.spike_output Inh-nest.neo.pkl \\\n     --seed 12345\n   \nor\n\n.. code-block:: python\n\n   from pype9.simulator.neuron import Network, Simulation\n   from nineml import units as un\n   \n   with Simulation(dt=0.01 * un.ms, seed=1234) as sim: \n      brunel_ai = Network('brunel.xml#AI')\n      brunel_ai.component_array('Exc').record('spike_output')\n      brunel_ai.component_array('Inh').record('spike_output')\n      sim.run(1000.0 * un.ms)\n   exc_spikes = brunel_ai.component_array('Exc').recording('spike_output')\n   inh_spikes = brunel_ai.component_array('Inh').recording('spike_output')\n   \nSee `Creating Simulations in Python`_ in the Pype9 docs for more examples and pipelines.\n\nIn addition to the ``simulate`` command there is also a ``plot`` command for\nconveniently plotting the results of the simulation with Matplotlib_,\nand a ``convert`` command to convert NineML_ files between different serialization\nformats (XML, YAML, JSON and HDF5) and NineML_ versions (1.0 and 2.0dev). See the\ndocumentation for details.\n\n\n:copyright: Copyright 20012-2016 by the Pype9 team, see AUTHORS.\n:license: MIT, see LICENSE for details.\n\n.. _PyNN: http://neuralensemble.org/docs/PyNN/\n.. _`NeuralEnsemble Google Group`: https://groups.google.com/forum/#!forum/neuralensemble\n.. _Matplotlib: http://matplotlib.org\n.. _`Creating Simulations in Python`: http://pype9.readthedocs.io/latest/scripting.html\n.. _`Installation documentation`: http://pype9.readthedocs.io/en/latest/installation.html\n.. _NineML: http://nineml.net\n.. _NEST: https://nest-simulator.org\n.. _Neuron: https://neuron.yale.edu.au\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneuralensemble%2Fpype9","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fneuralensemble%2Fpype9","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneuralensemble%2Fpype9/lists"}