next up previous index
Next: 1 Software Architecture Up: Plotting and Analysis for Previous: Plotting and Analysis for   Index

Subsections

Contents

1 Introduction

1.1 What is the PANDORA Toolbox?

The PANDORA Toolbox is a software package which consists of a collection of MATLAB object-oriented classes and script functions for creating, analyzing and visualizing databases based on data from electrophysiological neuron simulations and recordings.

1.2 Why did you make it?

Motivations to create this software were:

1.3 How is it implemented?

A custom database management system (DBMS) is written from scratch in the MATLAB language. The toolbox design follows object-oriented programming principles. It uses functions from the statistics and signal processing toolboxes of MATLAB, but they are not strictly necessary. It does not use MATLAB's database (DB) toolbox.1

1.4 How can I use it?

The PANDORA Toolbox uses an object-oriented approach to provide maximal flexibility for interactive use on the MATLAB command-line.2 Objects can be created, modified, analyzed, and visualized interactively in few steps. It is straightforward to save and load binary representations of these objects into files. Scripts can be made to programmatically repeat these procedures. Existing object classes are designed with the prospect of future extension, to accommodate new types of data and analyses.

1.5 Who is it made for?

PANDORA Toolbox is customized for neuroscientific research. However, the concepts of a complex dataset, extraction of multiple observations from each item of the dataset, and analysis of multi-dimensional parameter spaces are universal. In its current form the database and dataset classes can be used for data other than electrophysiologic sources. As this toolbox is designed for flexible extensibility, one can add extensions that deal with different types of data and analyses.


1.6 Finding your way around

The source code uses MATLAB's documentation system, therefore all methods and classes are documented. To get help about all classes, issue the

>> help djlab
at the MATLAB prompt. This should give you an overview of available classes. Then, to learn about a specific class, ask for the documentation for the constructor method. For instance, for the trace class, issuing

>> help trace
gives you the documentation for the constructor together with an overview for the class. Sometimes, if there are multiple methods with the same name under different classes, you may get the wrong documentation. In that case, you can specify the class from which to take the method by prepending the class name to the method, such as in

>> help trace/spikes
In order to learn all methods available for a class, you can use MATLAB's methods command. For the trace class, do

>> methods(trace)
However, some documentation may be outdated or simply wrong. Please report these to the author via e-mail to cgunay@emory.edu.

1.7 Overview of this document

Next, Section 2 guides the reader through the installation of the package and other dependencies. You can skip this section if you already have a running software environment. Section 3 introduces the essential components of the software and talks about their design decisions. You can also skip this part if you're not interested in the guts of the system and you are in favor of a quick start. The recipes in Section 5 provide a tutorial for some common tasks. It may be easier for some readers to follow these recipes to jump-start using the software. However, it is recommended that you familiarize yourself with the basic organization of the classes before proceeding into more complex tasks. Section 6 takes the tutorial approach to describe common visualization tasks. Finally, Section A points to the list of individual methods provided by the software. These methods are documented in detail using the MATLAB online help system.


2 Installation

Download the latest package file from:

http://userwww.service.emory.edu/~cgunay/pandora.

Unpack the archive anywhere in your system, using

$ tar xzf pandora-xyz.tar.gz
and follow the instructions in the README file.

Basically it involves pointing your MATLAB installation to look at the pandora/ subdirectory for loading the PANDORA files. This can be achieved by adding this directory to your MATLAB search path using the addpath Matlab command. To avoid its repeated application for each new session, you can have a startup script, startup.m, in the directory that you run MATLAB with the following commands:

%-- startup.m for matlab

addpath /my/download/directory/pandora-1.0b/pandora

%-- end startup.m

This will be loaded everytime you run MATLAB from this directory. in UN*X systems, this can be improved further by placing the command in the file $HOME/matlab/startup.m, which is executed no matter from where MATLAB is called, especially if you are running Matlab from different or unknown places each time. In Windows, place the file under My Documents/MATLAB, or add the directory to the search path using the File->Set Path menu option.


next up previous index
Next: 1 Software Architecture Up: Plotting and Analysis for Previous: Plotting and Analysis for   Index
Cengiz Gunay 2008-10-13