## Description

## I. MATLAB Tutorial

No experience in programming is required or expected to succeed in and enjoy the course. The

Matlab tutorial should get you up and running! Work through it, typing in all the courier

font parts and running them as you go through, and – for your own learning – working all of

the exercises (you might want to save these scripts yourself for future refefnce).

I will only assign a few problem below – again, if you have no prior experience you will need to

go through the tutorial to do them, and if you do, we will be assuming fluidity with all of the

tutorial in future weeks so make sure you’ve gone through it all! We want to make sure everyone

is up to at least the level of this tutorial by the next class statements.

Please print out and turn in your solutions the following exercises.

If statements Exercise 4.1

For loops Exercise 3.2

Functions Exercise 5.1

## II. Spike train analysis and tuning curves

In these exercises you will be confronting one of the core problems faced by neuroscientists

everyday.

• How do I stimulate the nervous system?

• How do I parameterize that stimulation?

• How do I interpret responses of neuron with respect to my chosen parameters?

We will be simulating a simple example: a hair from the cricket cercal ganglion discussed in

class. We will be delivering stimuli to the neuron in the form of deflections to the hair it

innervates, and we will parameterize that stimuli as theta (direction in which we deflect) so the

first two problems are settled, you will be attempting to solve the last: how do I now interpret the

responses of the cell!

These cells will generate spikes via (inhomogeneous) Poisson processes (see lecture and

textbook!), so you will also gain experience dealing with binary spike data with strong variability

(or “noise”) from one moment in time to the next, and from one trial to the next.

On the website you will find, among the posted codes, the following two short matlab codes:

generate_noisy_data_cockroach.m and cockroach_tuning.m. If you save them in the same

directory and type generate_noisy_data_cockroach, you will be able to run an experiment giving

you n trials of a 300 ms spike train in response to your input direction for one of three cells.

You will be prompted to enter both the cell you want to simulate recording from (1, 2, or 3) and

the direction of the stimulus. Think of the input stimulus as the direction in which you are have

deflected a cockroach spine (analogous to a hair from the cricket cercal ganglion discussed in

class), measured in degrees, and use values between 0 and 90.

You can ask for as many repetitions – in other words, as many trials — as you like. The data will

be in the variable “spiketrain” and will consist of a matrix of trials, each of which has millisecond

timebins which are either zero if there was no spike in that bin, or one if there was.

1. Try looking at the first cell response (i.e., choose cell 1) and getting a number of repetitions for

a direction of stimuli (start with, say, 45 degrees).

Use MATLAB plotting routines to examine the responses you’ve received. For each cell, make

several plots that describe the response of each cell for a few different fixed stimuli, and describe

each plot in few sentences. Make sure your plots are labeled completely, sized legibly, etc.

## Specifically, follow these suggestions in making your plots:

* Use the command imagesc(spiketrain).

This will make a “raster plot” (albeit with colors that you could improve): “bars” at the time of

each spike, with each row being a trial and each column being a time point.

(throughout, use figure and subplot to make a clear and rich summary of your findings)

* Compute the trial-averaged spike count rates (see text) from your raster plot: Use the “sum”

command to figure out the total spike count over each trial. Normalize that by the time interval

over which the recordings are made.

* Use the mean (mean) command to compute the average firing rate across trials, and the

standard deviation command (std) to make sure you have enough trials to draw meaningful

conclusions about those rates.

2. Examine the time course of your raster plots from the imagesc command more carefully. Do

the firing rates appear to be constant over the trial or varying? Describe how the rates change

over time by making a clear and informative plot, and in a sentence or two. This is a (very

simple) example of neural adaptation to stimuli.

3. Now that we have a sense for the responses at one direction we want to vary our stimulus to

get a sense for the cell’s tuning: how the cell’s responses change as a function of the stimulus

parameters we’ve chosen.

To do this, plot the tuning curve of the trial-averaged spike count rate, with error bars showing

standard deviations across trials, as a function of stimulus direction. Repeat this for all 3 cells.

Describe and compare what you see for each of the 3 cells in a few sentences. Make sure you

carefully observe for each cell whether ‘preferred orientation’ is a sufficient description of the

cells preferences.

### Optional hint:

One useful function in doing this could be ‘cat(3, array_one, array_two)’ this

could help put together your response matrices for each direction along a third dimension. You

could then sum along the 1st and 2nd dimension to get how many spikes there were for each

direction.