Next: Getting started with GENESIS programming Up: Table of Contents


This is an updated version of the multi-part GENESIS Modeling Tutorial that was first introduced during the 2005 WAM-BAMM ( meeting on realistic biological modeling in San Antonio, TX. It was offered as a "take-home" hands-on tutorial to be used for self-study, following the Introduction to Realistic Neural Modeling tutorial. The tutorial was further developed during use in the 2006 and 2008 Latin American School on Computational Neuroscience (LASCON), and the Frankfurt Institute of Advanced Studies (FIAS 2006) summer school on theoretical neuroscience and complex systems. It is intended to be a "quick start" to creating simulations with GENESIS, and will give you enough information to let you quickly begin creating cells and networks with GENESIS.

One way to use the tutorial is to go through it at a leisurely pace, exploring all the links to detailed information and documentation as you create models and perform the exercises. Another way is to take the most direct path, creating models without always understanding the details of what you have done. If you opt for this path, be sure to return to pick up the details when your lack of understanding makes progress difficult. Take your pick!

The tutorial makes frequent references and links to sections of the GENESIS Reference Manual. This is primarily a summary of the syntax used by the GENESIS Script Language Interpreter, the commands which it recognizes, and of the GENESIS "objects" that are available for constructing simulations. It also refers to chapters in The Book of GENESIS, by James M. Bower and David Beeman. The second edition of this book, familiarly called "The BoG", was originally published by Springer-Verlag. As the publisher does not plan to reprint the book, the copyright has been reclaimed by the authors, and we are now able to offer it as a free "Internet Edition", with links to it in this package of Tutorials.

The BoG gives a detailed coverage of realistic neural modeling from the subcellular to the network level, and provides the detailed guide to the construction of GENESIS simulations that is missing from the Reference Manual. This tutorial is constructed to minimize your need for the BoG. Nevertheless, this short tutorial can't possibly go into all the detail of a 482 page book, so you may wish study it in some detail, if you later decide to do some serious work with GENESIS. There are links to chapters in the BoG throughout this tutorial, in order to provide more information on some of the topics that we will cover.

GENESIS Scripting

If you have read the Introduction to Realistic Neural Modeling, you will be familiar with the rich variety of graphical user interfaces (GUIs) that are possible with GENESIS. In fact, it is possible to create and run GENESIS simulations with little or no programming, by using Neurokit (for single cells) or Kinetikit (for biochemical reactions). But, sooner or later, you will want the flexibility of creating your own GENESIS scripts.

The bad news is that to get the maximum benefit from GENESIS and from this tutorial, you will have to do some programming in the GENESIS scripting language. The good news is that the modular object-oriented nature of GENESIS makes it easy to modify existing scripts. Once you have learned a few basics of GENESIS scripting and have some good example simulation scripts to get you started, you can create most of your simulations by simple "hacking" of existing scripts. That is the approach taken in this tutorial, and by most GENESIS modelers.

Some preliminaries

Before you start, you will need a little background.

The two most common UNIX editors for plain text files, such as GENESIS scripts, are 'vi' and 'emacs'. If you are not familiar with either editor, you may find it easier to learn emacs. For an even simpler text editor with built-in help, try 'pico' if it is installed. If you are using Linux with the GNOME or KDE desktop, try 'gedit', 'kedit", or 'kate'. If you are running GENESIS under Windows using the Cygwin ( environment, use 'nedit'.

Next: Getting started with GENESIS programming Up: Table of Contents