Skip to main content

A module for modeling Local Field Potentials built on NEURON

Project description


LFPy is a Python-module for calculation of extracellular potentials from multicompartment neuron models. It relies on the NEURON simulator ( and uses the Python interface ( it provides.

LFPy provides a set of easy-to-use Python classes for setting up your model, running your simulations and calculating the extracellular potentials arising from activity in your model neuron. If you have a model working in NEURON already, it is likely that it can be adapted to work with LFPy.

The extracellular potentials are calculated from transmembrane currents in multi-compartment neuron models using the line-source method (Holt & Koch, J Comp Neurosci 1999), but a simpler point-source method is also available. The calculations assume that the neuron are surrounded by an infinite extracellular medium with homogeneous and frequency independent conductivity, and compartments are assumed to be at least at a minimal distance from the electrode (which can be specified by the user). For more information on the biophysics underlying the numerical framework used see this coming book chapter:

  • K.H. Pettersen, H. Linden, A.M. Dale and G.T. Einevoll: Extracellular spikes and current-source density, in Handbook of Neural Activity Measurement, edited by R. Brette and A. Destexhe, Cambridge, to appear [preprint PDF, 5.7MB]

In the present version LFPy is mainly designed for simulation of single neurons.

LFPy was developed in the Computational Neuroscience Group (, Department of Mathemathical Sciences and Technology <>`_, at the Norwegian University of Life Sciences ( , in collaboration with the Laboratory of Neuroinformatics (, Nencki Institute of Experimental Biology (, Warsaw, Poland. The effort was supported by International Neuroinformatics Coordinating Facility ( and the the Research Council of Norway ( (eScience, NevroNor).

For updated information on LFPy and online documentation, see the LFPy homepage (

This scientific software is released under the GNU Public License GPLv3.


To install LFPy you will need the following:

  • Python modules numpy, scipy and matplotlib

  • NEURON (from compiled as a Python module, so the following should execute without error in Python console:

    import neuron
  • Cython (C-extensions for python, to speed up simulations of extracellular fields


There are few options to install LFPy:

  1. From the Python Package Index with only local access using pip

    pip install --user LFPy

    as sudoer:

    sudo pip install LFPy
  2. From the Python Package Index with only local access using easy_install

    easy_install --user LFPy

    as sudoer:

    sudo easy_install LFPy
  3. From source:

    tar -xzf LFPy-x.x.tar.gz
    cd LFPy-x.x
    (sudo) python install (--user)
  4. Development version from subversion repository:

    svn checkout
    cd LFPy-release/trunk
    (sudo) python install (--user)

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

LFPy-0.9.2.tar.gz (4.4 MB view hashes)

Uploaded Source

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