public
Description: A Gtk2 UI with 3D Visualization feature for NEURON model
Homepage: http://mattions.github.com/neuronvisio
Clone URL: git://github.com/mattions/neuronvisio.git
commit  b0def4f9a3662a887e261b9a7ac29f58161a59d1
tree    c850b4b58984f8d6e5021d88f75a35738ef354a0
parent  307d8fed879c759a3e2e0a2e9dc9b65f766e1293
name age message
file .gitignore Loading commit data...
file COPYING Wed Nov 18 09:07:20 -0800 2009 Adding other paver stuff [Michele Mattioni]
file NEWS.markdown
file README.markdown
directory examples/
directory nrnvisio/
file setup.py
README.markdown

NeuronVisio

What is it

NeuronVisio is a GTK2 user interface for NEURON simulator http://www.neuron.yale.edu/neuron/. NeuronVisio connect with NEURON using the new python NEURON interface.

Features

  • 3D visualization of the model with the possibility to change it runtime
  • Creation of vectors to record any variables present in the section
  • Pylab integration to plot directly the result of the simulation
  • Exploration of the timecourse of any variable among time using a color coded scale
  • the GUI runs in its own thread so it's possible to use the console (strongly suggested ipython)

Install

To install NeuronVisio you need to satisfy the following dependencies

Dependences:

then extract the archive and from the directory write

python setup.py install

Documentation

The documentation is available online and a series of examples are available from the examples folder.

Quickstart

This code is just to give an idea in how to use nrnvisio module:

  1. fire up an ipython console with pylab switch.

    ipython -pylab # If you don't use the switch you will not see any graph.

  2. Import the module

    from nrnvisio.controls import Controls controls = Controls()

When nrnvisio is started the thread is launched. In this thread all the process of nrnvisio will happen without blocking the console.

As a quick example the following code:

  1. Creates a single section called soma
  2. Insert an Hodgkey-Huxley channel and a passive conductance
  3. Insert an alphaSynapse to provide a stimul.

A quick example can be the following:

from nrnvisio.controls import Controls
controls = Controls() # Starting the GUI

from neuron import h    # Getting the HocInterpreter

soma = h.Section()      # Creating a section
soma.insert('hh')       # Inserting a HH channel
soma.insert('pas')      # inserting a passive conductance
syn = h.AlphaSynapse(0.5, sec=soma)     # synaptic input
syn.onset = 0.5         # when to fire
syn.gmax = 0.05         # the conductance of the synapse
syn.e = 0               # the reversal potential

More example in the example directory show how to use NeuronVisio with more complex model.

More info can be found on the Documentation page http://mattions.github.com/neuronvisio/docs.html

Contacts

Homepage: http://mattions.github.com/neuronvisio/

mail: mattioni@ebi.ac.uk

Development

The code is on github at this address

http://github.com/mattions/neuronvisio/tree/master

and git is used as software management tool

To contribute fork the repository with

git clone git://github.com/mattions/neuronvisio.git

and send me back a patch.

More info on git here: http://git-scm.com/