Copyright Notice

msalign is Copyright (C) 2007 Magnus Palmblad

msalign is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.

About msalign

msalign aligns one LC-MS/MS dataset with one LC-MS dataset, using peptide identifications by LC-MS/MS and accurate mass in the LC-MS. The chromatographic alignment fits a piecewise linear function to these matched peptide identification/accurate mass features using a genetic algorithm.

msalign uses the Random Access Minimal Parser (RAMP) library to read data in mzXML.

Figure 1. Alignment (blue curve) of three ion trap LC-MS/MS datasets to corresponding FTICR LC-MS datasets by msalign. Each dot represents a peptide identification in the LC-MS/MS dataset and the corresponding extracted ion chromatogram maximum (within 10 ppm) in the FTICR LC-MS data. To see msalign and the genetic algorithm in action, click here or here.

Download msalign here. (Right-click and choose "Save Link As...".)

Download the hybridMGF utility to combine MS/MS data with accurate precursor masses from LC-MS into one MGF file here.

Compiling msalign

Compile msalign with: gcc -o msalign base64.c ramp.c msalign.c -I. -lgd -lm -lz

Using msalign

Usage (simple): msalign -p <LC-MS/MS peptide identifications pepXML filename> -m <LC-MS data in mzXML> -e <max. mass measurement error in LC-MS data (in ppm)>

Usage (complete): msalign -p <LC-MS/MS peptide identifications pepXML filename> -m <LC-MS data in mzXML> -e <max. mass measurement error in LC-MS data (in ppm)> [-l <typical standard deviation in LC retention time> -R <MS start read scan>,<MS end read scan> -X <max MS/MS scan for alignment> -Y <max MS scan for alignment> -i <min ion score> -o <output file>]

where <LC-MS/MS peptide identifications pepXML filename> is the peptide identifications results from the LC-MS/MS dataset in pepXML format and the <LC-MS data in mzXML> the (accurate) LC-MS data in mzXML (either line or full profile spectra). The <output file> is the name of the file to which the alignment results and piecewise linear function will be written (with different filename extensions).