Skip to main content

Python scripting interface of MOOSE Simulator (https://moose.ncbs.res.in)

Project description

Python package

Installation

This repository is sufficient for using MOOSE as a python module. We provide python package via pip.

$ pip install pymoose --user 

To install nightly build:

$ pip install pymoose --user --pre --upgrde

Have a look at examples, tutorials and demo here https://github.com/BhallaLab/moose-examples.

Build

To build pymoose, follow instructions given here at https://github.com/BhallaLab/moose-core/blob/master/INSTALL.md


MOOSE

MOOSE is the Multiscale Object-Oriented Simulation Environment. It is designed to simulate neural systems ranging from subcellular components and biochemical reactions to complex models of single neurons, circuits, and large networks. MOOSE can operate at many levels of detail, from stochastic chemical computations, to multicompartment single-neuron models, to spiking neuron network models. MOOSE is multiscale: It can do all these calculations together. For example it handles interactions seamlessly between electrical and chemical signaling. MOOSE is object-oriented. Biological concepts are mapped into classes, and a model is built by creating instances of these classes and connecting them by messages. MOOSE also has classes whose job is to take over difficult computations in a certain domain, and do them fast. There are such solver classes for stochastic and deterministic chemistry, for diffusion, and for multicompartment neuronal models. MOOSE is a simulation environment, not just a numerical engine: It provides data representations and solvers (of course!), but also a scripting interface with Python, graphical displays with Matplotlib, PyQt, and VPython, and support for many model formats. These include SBML, NeuroML, GENESIS kkit and cell.p formats, HDF5 and NSDF for data writing.

This is the core computational engine of MOOSE simulator. This repository contains C++ codebase and python interface called pymoose. For more details about MOOSE simulator, visit https://moose.ncbs.res.in .

ABOUT VERSION 4.0.0, Jalebi

Jalebi is an Indian sweet involving a golden twisting tube like a hyper-pretzel, of crunchy batter soaked in sugar syrup lightly flavoured with spices and sometimes lemon.

This release has the following major changes:

  1. A major under-the-hood change to numerics for chemical calculations, eliminating the use of 'zombie' objects for the solvers. This simplifies and cleans up the code and object access, but doesn't alter runtimes.

  2. Another major under-the-hood change to use pybind11 as a much cleaner way to interface the parser with the C++ numerical code.

  3. Addition of a thread-safe and faster parser based on ExprTK

  4. Resurrected objects for handling simulation output saving using HDF5 format. There is an HDFWriter class, an NSDFWriter, and a new NSDFWriter2. The latter two implement storage in NSDF, Neuronal Simulation Data Format, Ray et al Neuroinformatics 2016. NSDF is built on HDF5 and builds up a specification designed to ensure ready replicability as well as self- description of model output.

  5. Multiple enhancements to rdesigneur, including vastly improved 3-D graphics output using VPython.

  6. Various bugfixes

LICENSE

MOOSE is released under GPLv3.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

pymoose-4.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

pymoose-4.0.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

pymoose-4.0.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

pymoose-4.0.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

pymoose-4.0.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.6m manylinux: glibc 2.17+ x86-64

File details

Details for the file pymoose-4.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pymoose-4.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e4b39cd66b5f6542cfd3845b5805e9ad2f6f31b6e860cce58cadabe7faebce81
MD5 6753baedecfc373b5dfd3d219f164c01
BLAKE2b-256 582dab8b428aa598d93942933f85c53e86f83557672c79f2a3efb013cd32318b

See more details on using hashes here.

File details

Details for the file pymoose-4.0.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pymoose-4.0.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 051be1e9c5579f9abcf7856e2f403d68d4e967bc1dd03a2d05c5e8b87ddd1d9b
MD5 09dd4a4ae79f46099834670bce47aa3c
BLAKE2b-256 726dd994ad67d823821b1aaddf16c6eaea71d9ddb0eca8d2e31f9c4477818a21

See more details on using hashes here.

File details

Details for the file pymoose-4.0.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pymoose-4.0.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 50ebd61e1234c67abd983e122875091a321258fe6ff9aff8bb0533235e451bf4
MD5 4e8afebf8d68167d68957392bebd3d0e
BLAKE2b-256 ded02b1ec2bc9685c6295d78a6c59aecdc907e724ea8054cfa53000aca86ccc9

See more details on using hashes here.

File details

Details for the file pymoose-4.0.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pymoose-4.0.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7804d048da52ab609aab55a85495cd2689478aba4c7844a71a5b99446f269c96
MD5 ad20920a2a8f528a0c86f545162b46ee
BLAKE2b-256 90d91a24c3733684fa38331031cf214e5518299d5b63881318c4a6ebd0ec66b7

See more details on using hashes here.

File details

Details for the file pymoose-4.0.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pymoose-4.0.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 570c2dc2361d2265e6e27cef38a484c52a151fa4d5bd9929fd9e82a1089e538a
MD5 76a2533314a36c302b77782464b6e144
BLAKE2b-256 d56c6dc8f71b3a9fd58457ccddbc959cca3b2d5eb6b5db5ef3ee6f3880123da3

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