From time, to time, I find myself creating reference sheets that provide an overview of a topic for my own personal use. I make these available to anybody who finds them useful. I make every attempt to be accurate and provide appropriate references, but I don't make guarantees. Also, the writing style is terse and there is no significant effort at good grammar, etc. They are strictly AS IS. Any corrections or feedback would be appreciated (

All documents are in PDF format for use with Adobe Acrobat. If you don't currently have this you can donwload from Adobe's site.

All such documents are copyrighted with restrictions on use.

© 1998 Brian McGill. You are free to download the documents below and use them in electronic or paper form for your personal use. You are not allowed to transfer either an electronic or a paper copy to another person. You may refer other people to this web site.

Jump to Eclogical topics

Jump to Programming languages

Jump to Math

Jump to Programming tools

Scientific topics

Game theory reference

Provides a roughly 10 page review of major results in game theory. Mostly emphasizes discrete strategies (i.e. matrix games).

download it

Adaptive dynamics reference/tutorial

Provides a five page overview and a one page cheat sheet on the emerging field of adaptive dynamics (aka continuous trait game theory). Summarizes results from a lot of different papers.

download it

Programming cheat sheets

These are usually one or two page extremely dense summaries of a programming language. They won't teach you the language, but they might help you relearn it quickly if you new it once.


R statistical language

PHP programming language

perl programming language

HTML web markup language


How to

I have become increasingly enamored with the open stack (GDAL/OGR+POSTGIS+QGIS) as a GIS environment. However there are few a holes to fall into. So I hope to post from time to time solutions that are a lot harder to figure out than they should be.

I was shocked to find out just how hard a simple GIS operation - zonal statistics - was to do. After a lot of google searching I came up with some fairly complex solutions, many of which quietly turned floats into integers or were inaccurate on the borders or relied on commands not yet released in PostGIS.

Tutorial on how to do zonal statistics in PostGIS

Math summaries

This is a roughly 60 page summary/tutorial/introduction to the mathematical tools an ecologist needs (in my opinion). It was intended for nonmathematicians (but who have taken calculus). These are lecture notes, so they might be a little terse in places, but they are intended to be comprehensive. You will note I never quite finished my outlined topics (stochastic processes is incomplete and static measures (fractals, stats) is not there at all. WARNING: the symbols for R - the set of real numbers and Z the set of integers got turned into squares and triangles in conversion to PDF and I haven't yet taken the time to track down the problem.

Download it

Programming tools

I use MATLAB for most of my day-in-day-out work. I teach statistics using R. For the most part, I am happy using MATLAB (if only because its what I know best), but two features of R that I really miss in MATLAB are:
  1. Dataframes - a neat wrapper for statistical data (variables in columns, cases in rows)
  2. The idea of a model object - run a regression or whatever and then get back an object to manipualate it
So I have implemented (partially) these two features in MATLAB. The documentation is sparse and features are currently biased in my own research directions. I would welcome comments and code contributions (which would be fully acknowledged). To install, download this file unzip it (with -d option) and install it in directories on the MATLAB search path named "@dataframe" and "@model" as per the MATLAB object model. Very brief documentation can be found in the zip file as well.