Skip to content

Simulation and optimization of neural circuits for MEG/EEG source estimates

License

Notifications You must be signed in to change notification settings

jasmainak/hnn-core

 
 

hnn-core

tests CircleCI Codecov PyPI Gitter

HNN-GUI

This is a leaner and cleaner version of the code based off the HNN repository.

It is early Work in Progress. Contributors are very welcome.

Dependencies

  • numpy
  • scipy
  • matplotlib
  • Neuron (>=7.7)

Optional dependencies

GUI

  • ipywidgets
  • voila

Parallel processing

  • joblib (for simulating trials simultaneously)
  • mpi4py (for simulating the cells in parallel for a single trial). Also depends on:
    • openmpi or other mpi platform installed on system
    • psutil

Installation

We recommend the Anaconda Python distribution. To install hnn-core, simply do:

$ pip install hnn_core

and it will install hnn-core along with the dependencies which are not already installed.

Note that if you installed Neuron using the traditional installer package, it is recommended to remove it first and unset PYTHONPATH and PYTHONHOME if they were set. This is because the pip installer works better with virtual environments such as the ones provided by conda.

If you want to track the latest developments of hnn-core, you can install the current version of the code (nightly) with:

$ pip install --upgrade https://api.github.com/repos/jonescompneurolab/hnn-core/zipball/master

To check if everything worked fine, you can do:

$ python -c 'import hnn_core'

and it should not give any error messages.

GUI installation

To install the GUI dependencies along with hnn-core, a simple tweak to the above command is needed:

$ pip install hnn_core[gui]

To start the GUI, please do:

$ hnn-gui

Parallel backends

For further instructions on installation and usage of parallel backends for using more than one CPU core, refer to our parallel backend guide.

Note for Windows users

We do not currently support hnn_core installation natively on Windows. Instead we reccomend installing WSL on your local machine, and install hnn-core and Anaconda using the same steps as above.

Documentation and examples

Once you have tested that hnn_core and its dependencies were installed, we recommend downloading and executing the example scripts provided on the documentation pages (as well as in the GitHub repository).

Note that python plots are by default non-interactive (blocking): each plot must thus be closed before the code execution continues. We recommend using and 'interactive' python interpreter such as ipython:

$ ipython --matplotlib

and executing the scripts using the %run-magic:

%run plot_simulate_evoked.py

When executed in this manner, the scripts will execute entirely, after which all plots will be shown. For an even more interactive experience, in which you execute code and interrogate plots in sequential blocks, we recommend editors such as VS Code and Spyder.

Bug reports

Use the github issue tracker to report bugs. For user questions and scientific discussions, please join the HNN Google group.

Interested in Contributing?

Read our contributing guide.

Roadmap

Read our roadmap.

About

Simulation and optimization of neural circuits for MEG/EEG source estimates

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 96.8%
  • AMPL 2.9%
  • Other 0.3%