Home | Vita | Course | Toolbox | Contact |

Matlab is a commercial software package for numeric computation, graphics, visualization, and high-level programming. Matlab is available from The MathWorks, Inc. The basic Matlab package has many functions generally useful for tree-ring studies. Matlab "toolboxes" with specialized functions can also purchased from The MathWorks, Inc. Toolboxes are available for signal processing, mapping, image processing, neural networks, statistics, and many other topics.

The "Tree-Ring Toolbox" is not a commercially available Matlab toolbox, but is a collection of Matlab functions I have written to do various tasks in tree-ring analysis. For example, the function crn2vec2 reads an ITRDB-formatted ".crn" file and returns the site chronology, years, and sample size as matlab vectors.

Back to Top of Page

To use the Tree-Ring Toolbox, you must have Matlab installed on your computer or network. I use the University of Arizona Matlab site license, which has the most recent Matlab release. The functions may not work on older versions. Depending on which functions you intend to use, you may also need to have one or more "Matlab toolboxes" (e.g., statistics) installed. The comment section of each function lists which toolboxes are required. Some functions requre statistics, signal processing or spline toolboxes.

To use the Tree-Ring Toolbox, you must its functions in a directory on your Matlab path. My functions usually call on other utility functions I wrote. The best method to be sure you don't call an "unknown" function is to download the whole set of Tree-Ring Toolbox functions. I have zipped these into a file trunk.zip, which you should unzip into a directory on your Matlab path. I recommend keeping those functions by themselves (not with any of your own user-written functions, not with your data files) in a single dedicated directory. I distribute these function freely. I require no acknowledgement of the source. Go ahead and modify them as you wish. I welcome any comments on the functions in the function list. But due to time constraints, I cannot promise anything more than grudging cooperation in updating or correcting functions when I'm in the mood.

To find out what's in the Tree-Ring Matlab Toolbox, check out the list of functions Click on a function in the list and you will see the opening comment section of the function. The comment section of each function is organized as follows:

- function name with 1-line description
- syntax of the function call
- date of most recent revision
- extended description of what the function does
- Input requirements
- Output
- References
- UW Functions Called (other functions I wrote)
- Matlab toolboxes required (e.g., signal processing)

(1x1)r real number, scalar (3x2)r matrix (3 x 2) of real numbers (3x1)i column vector (3 elements) of integers (1x8)s character string of length 8 (1x1)L logical scalarMatlab also has data types called "cells" and "structures", which are best found out about by reading the Matlab documentation. My code for cells uses braces. For example, the code below indicates a 1 x 3 "cell" variable containing a 2x2 integer matrix, a 1x5 character string and a 1x10 row vector of real numbers.

{1x3} (2 x 2)i (1 x 5)s (1 x 10)r

For brevity of web page I include only the first part of the opening comments section for each function. If you actually download and use the functions I suggest reading the "Notes" section of the comments, which has more information. You can view the Notes section and the whole function with any text editor. I've also included sample data for some functions in trunk.zip. The sample data is in a zip file coded with the name of the relevant function (e.g., "SampleData_skelcrn.zip".

Back to Top of Page

- Tree-ring and climate-data analysis
- IO and formatting of tree-ring data
- IO and formatting of climate data
- c132tss --Thirteen-column monthly climate matrix to time-series structure

- File and directory management
- dirfiles --list of files with specified suffix

- Time series analysis
- acf -- autocorrelation function and confidence limits
- arspectrum -- spectrum of an AR(1) or AR(2) process
- corrone -- product-moment correlation of one variable with several others
- mafilt1 -- evenly-weighted moving average of an annual time series
- pdgmraw -- raw periodogram of a time series
- pdgmsim -- exact simulation of Gaussian time series from its periodogram
- specbt1 -- spectrum of a single time series by Blackman Tukey method
- whit1 -- fit an AR model to time series and prewhiten

- Utility: low level functions called by other functions
- akaike --akaike information criterion for fitting AR models
- eightplt -- eight plots on a page
- figsize -- figure-window pixel positions from specified fractional screen-width and screen-height
- filter1 -- low-pass filter a time series using specified weights
- intnan --check for imbedded NaN in a time series
- nonan1 --longest continuous block of a time series matrix without missing data
- rwchng --scaled values or first-difference of a time series
- sov2tsm3 --convert strung-out-vector to time series matrix
- suplabel --places text as a title, xlabel, or ylabel on a group of subplots
- textcorn -- Add annotation text to any corner of a figure
- trailnan -- remove any trailing NaN from a time series
- trimnan -- remove any trailing NaN from a time series
- wtsbinom -- weights for binomial filter with specified frequency response
- wtsgaus -- weights for Gaussian filter with specified frequency response

Home Vita Course Toolbox Contact