view extract_mass_chromatograms.xml @ 0:201a15633354 draft default tip

Initial commit.
author galaxyp
date Fri, 10 May 2013 17:28:02 -0400
parents
children
line wrap: on
line source

<tool id="mzmatch_extract_mass_chromatograms" version="0.1.0" name="Extract Mass Chromatograms">
  <description>
  </description>
  <macros>
    <import>macros.xml</import>
  </macros>
  <expand macro="stdio" />
  <expand macro="requires" />
  <command interpreter="python">
    mzmatch_wrapper.py 
    --executable '__SHELL__' --config $setup
    --executable 'ExtractMassChromatograms' --config $config
  </command>
  <configfiles>
    <configfile name="setup">ln -s $input1 input.${input1.ext}</configfile>
    <configfile name="config">-ppm $ppm -i input.${input1.ext} -o $output #if $threshold.specify# -threshold $threshold.threshold #end if#</configfile>
  </configfiles>
  <inputs>
    <param name="input1" label="Input" type="data" format="mzml,mzxml" />
    <param name="ppm" label="ppm" value="3" type="float" help="The accuracy of the measurement in parts-per-milion. This value is used for the collection of the data-points belonging to a mass trace and needs to be reasonable for the equipment used to make the measurement (the LTQ-Orbitrap manages approximatetly 3 ppm)." />
    <conditional name="threshold">
      <param name="specify" type="boolean" label="Specify Threshold" />
      <when value="false">
      </when>
      <when value="true">
        <param name="threshold" type="float" value="0.02" label="Treshold" help="The percentage threshold value for breaking the mass traces up, as a percentage of the most intense portion of a mass trace. The threshold value is a percentage and required to be between 0 and 1." />
      </when>
    </conditional>    
  </inputs>
  <outputs>
    <data format="peakml" name="output" />
  </outputs>
  <help>
**What it does**

Extracts mass chromatograms (x-axis: RT; y-axis: Intensity) from 2D mass spectrometry data (LC/MS or GC/MS). The raw data is loaded from the open standard file formats (mzML, mzXML or mzData) and all of the individidual mass traces (M/Z +/- ppm over the whole scan range) are retrieved. When the option 'threshold' is defined, the individual mass traces are broken up into individual mass chromatograms (ie the isomers are separated). This is achieved by cutting peaks out of the mass trace where the threshold is reached (as a percentage of the most intense portion of the mass trace). This is an iterative process, where the sides are then analyzed in the same fashion.

The method employed here for retrieving mass chromatograms is greedy and extracts everything (although a modicum of noise reduction is applied to reduce the amount of fragments from broken up mass chromatograms). In order to reduce the resulting noise patterns, tools like 'mzmatch.filter.NoiseFilter' and 'mzmatch.filter.RSDFilter' can be employed.

The resulting output file is in PeakML-format, containing a list of all the extracted mass chromatograms. When the cutoff value has been selected, one can also specify a file (option 'masstraces') where the extracted mass chromatograms are overlaid on the mass traces they have been cut from.

**Citation**

For the underlying tool, please cite ``PeakML/mzMatch: A File Format, Java Library, R Library, and Tool-Chain for Mass Spectrometry Data Analysis. Richard A. Scheltema, Andris Jankevics, Ritsert C. Jansen, Morris A. Swertz, and Rainer Breitling. Analytical Chemistry 2011 83 (7), pp 2786-2793``

If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-mzmatch
  </help>
</tool>