view tandem.xml @ 14:9d6e0ad4d600 draft

Docker support and update for protk 1.4
author iracooke
date Thu, 26 Mar 2015 19:53:53 -0400
parents c60d1f18fd85
children 0faaab4f192a
line wrap: on
line source

<tool id="proteomics_search_tandem_1" name="X!Tandem MSMS Search" version="1.1.0">

   <requirements>
         <container type="docker">iracooke/protk-1.4.1</container>
	    <requirement type="package" version="1.4">protk</requirement>
   </requirements>

	<description>Run an X!Tandem Search</description>

	<command>
		#if $database.source_select=="built_in":
		tandem_search.rb -d $database.dbkey 
		#else 
		tandem_search.rb -d $database.fasta_file
		#end if

		#if $tandem_params.source_select=="built_in":
		-T $tandem_params.paramskey 
		#else 
		-T $tandem_params.params_file
		#end if


		--var-mods='
		$variable_mods
		#for $custom_variable_mod in $custom_variable_mods:
		,${custom_variable_mod.custom_mod}
		#end for
		'

		--fix-mods='
		$fixed_mods
		#for $custom_fix_mod in $custom_fix_mods:
		,${custom_fix_mod.custom_mod}
		#end for
		'

		$input_file -o $output -r 

		--enzyme=$enzyme 

		--precursor-ion-tol-units=$precursor_tolu 

		-v $missed_cleavages 

		-f $fragment_ion_tol 

		-p $precursor_ion_tol

		$allow_multi_isotope_search 

		$acetyl_protein_nterm

		$cleavage_semi

		$keep_spectra

		--threads $threads
		
	</command>

	<inputs>
		<conditional name="database">
			<param name="source_select" type="select" label="Database source">
				<option value="built_in">Built-In</option>
				<option value="input_ref" selected="true">Your Upload File</option>
			</param>
			<when value="built_in">
				<param name="dbkey" type="select" format="text" >
					<label>Database</label>
					<options from_file="pepxml_databases.loc">
						<column name="name" index="0" />
						<column name="value" index="2" />
					</options>
				</param>
			</when>
			<when value="input_ref">
				<param name="fasta_file" type="data" format="fasta" label="Uploaded FASTA file" />
			</when>
		</conditional>
		
		<conditional name="tandem_params">
			<param name="source_select" type="select" label="Baseline Parameters">
				<option value="built_in" selected="true">Built-In</option>
				<option value="input_ref">Custom parameter file</option>
			</param>
			<when value="built_in">
				<param name="paramskey" type="select" format="text" >
					<label>Paramset</label>
					<option value="isb_kscore">ISB K-Score (Recommended for TPP)</option>
				    <option value="isb_native">ISB Native</option>		
				    <option value="gpm">GPM</option>
				</param>
			</when>
			<when value="input_ref">
				<param name="params_file" type="data" format="xml" label="Custom X!Tandem Parameters" />
			</when>
		</conditional>

		<param name="input_file" type="data" format="mzml,mgf" multiple="false" label="MSMS File" help="A file with MS/MS data"/>

		<param name="variable_mods" format="text" type="select" multiple="true" label="Variable Modifications" help="Hold the appropriate key while
			clicking to select multiple items">
			<options from_file="tandem_mods.loc">
				<column name="name" index="0" />
				<column name="value" index="2" />
			</options>
		</param>

		<repeat name="custom_variable_mods" title="Custom Variable Modifications" help="You can specify a modification when present in a motif. For instance, 0.998@N!{P}[ST] is a deamidation modification on N only if it is present in an N[any but P][S or T] motif (N-glycosite).">
			<param name="custom_mod" type="text">
			</param>
		</repeat>
		
		
		<param name="fixed_mods" format="text" type="select" multiple="true" label="Fixed Modifications" help="Hold the appropriate key while
			clicking to select multiple items">
			<options from_file="tandem_mods.loc">
				<column name="name" index="0" />
				<column name="value" index="2" />
			</options>
		</param>

		<repeat name="custom_fix_mods" title="Custom Fixed Modifications" help="You can specify a modification when present in a motif. For instance, 0.998@N!{P}[ST] is a deamidation modification on N only if it is present in an N[any but P][S or T] motif (N-glycosite).">
			<param name="custom_mod" type="text">
			</param>
		</repeat>

		<param name="acetyl_protein_nterm" type="boolean" label="Allow N-terminal protein acetylation as a variable modification" truevalue="-y" falsevalue="" />		
		

		<param name="missed_cleavages" type="select" format="text" help="Allow peptides to contain up to this many missed enzyme cleavage sites">
			<label>Missed Cleavages Allowed</label>
		    <option value="0">0</option>		
			<option value="1">1</option>
			<option selected="true" value="2">2</option>
		</param>

		<param name="cleavage_semi" type="boolean" label="Allow semi-cleaved peptides" help="This can increase search time dramatically" truevalue="--cleavage-semi" falsevalue=""/>

		<param name="keep_spectra" type="boolean" label="Keep Spectra" help="Include spectra in the output" truevalue="--output-spectra" falsevalue=""/>

		<param name="threads" type="integer" value="1" label="Threads" help="Number of threads to use for search. Maximum is 16"/>
		
		<param name="enzyme" type="select" format="text">
		    <label>Enzyme</label>
			<option value="[R]__pc__{P}">argc - [R]|{P}</option>
			<option value="[X]__pc__[D]">aspn - [X]|[D]</option>
			<option value="[FLMWY]__pc__{P}">chymotrypsin - [FLMWY]|{P}</option>
			<option value="[R]__pc__[X]">clostripain - [R]|[X]</option>
			<option value="[M]__pc__{X}">cnbr - [M]|{X}</option>
			<option value="[AGILV]__pc__{P}">elastase - [AGILV]|{P}</option>
			<option value="[D]__pc__{P}">formicacid - [D]|{P}</option>
			<option value="[DE]__pc__{P}">gluc - [DE]|{P}</option>
			<option value="[E]__pc__{P}">gluc_bicarb - [E]|{P}</option>
			<option value="[W]__pc__[X]">iodosobenzoate - [W]|[X]</option>
			<option value="[K]__pc__{P}">lysc - [K]|{P}</option>
			<option value="[K]__pc__[X]">lysc-p - [K]|[X]</option>
			<option value="[X]__pc__[K]">lysn - [X]|[K]</option>
			<option value="[X]__pc__[AKRS]">lysn_promisc - [X]|[AKRS]</option>
			<option value="[X]__pc__[X]">nonspecific - [X]|[X]</option>
			<option value="[FL]__pc__[X]">pepsina - [FL]|[X]</option>
			<option value="[P]__pc__[X]">protein_endopeptidase - [P]|[X]</option>
			<option value="[E]__pc__[X]">staph_protease - [E]|[X]</option>
			<option value="[FMWY]__pc__{P},[KR]__pc__{P},[X]__pc__[D]">tca - [FMWY]|{P},[KR]|{P},[X]|[D]</option>
			<option value="[KR]__pc__{P}" selected="true">trypsin - [KR]|{P}</option>
			<option value="[FKLMRWY]__pc__{P}">trypsin/chymotrypsin - [FKLMRWY]|{P}</option>
			<option value="[KR]__pc__{P},[M]__pc__{P}">trypsin/cnbr - [KR]|{P},[M]|{P}</option>
			<option value="[DEKR]__pc__{P}">trypsin_gluc - [DEKR]|{P}</option>
		</param>

		
		<param name="fragment_ion_tol" help="Fragment Ion Tolerance in Daltons" type="float" value="0.5" min="0" max="10000" label="Fragment ion tolerance"/>

		<param name="precursor_ion_tol" help="Precursor Ion Tolerance (Da or ppm)" type="float" value="10" min="0" max="10000" label="Precursor ion tolerance"/>
		<param name="precursor_tolu" type="select" format="text">
		    <label>Precursor Ion Tolerance Units</label>
		    <option value="ppm">ppm</option>		
			<option value="Da">Da</option>
		</param>
		
		<param name="allow_multi_isotope_search" type="boolean" label="Allow multi-isotope search" help="This allows peptide candidates in windows around -1 Da and -2 Da from the acquired mass to be considered. Only applicable when the minus/plus window above is set to less than 0.5 Da. Good for accurate-mass instruments for which the reported precursor mass is not corrected to the monoisotopic mass." truevalue="--multi-isotope-search" falsevalue=""/>

	</inputs>


	<outputs>
		<data format="tandem" name="output" metadata_source="input_file" label="X!Tandem_vs_${database.dbkey if $database.has_key('dbkey') else $database.fasta_file.display_name}.${input_file.display_name}.${input_file.display_name}.tandem"/>
	</outputs>

	<tests>
		<!-- Just test that the tool runs and produces vaguely correct output -->
		<test>
		    <param name="source_select" value="input_ref"/>
		    <param name="fasta_file" value="testdb.fasta" format="fasta"/>
		    <param name="input_file" value="tiny.mzML" format="mzml"/>
		    <output name="output" format="tandem">
		        <assert_contents>
					<has_text text="tandem-style" />
		        </assert_contents>
		    </output>
		</test>
	</tests>
  <help>

**What it does**

Runs an MS/MS database search using the X!Tandem search engine. Output is in the form of a pepXML file containing identified peptides along with their raw search scores.

----

**References**

Please see http://www.thegpm.org/GPM/references.html for details of references describing the X!Tandem search engine.

  </help>

</tool>