Mercurial > repos > galaxyp > encyclopedia_prosit_csv_to_library
diff macros.xml @ 1:c0a3bd187e2b draft
"planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/encyclopedia/tools/encyclopedia commit d94002fc79f552c8a64ffca86298396b1568df97"
author | galaxyp |
---|---|
date | Mon, 14 Sep 2020 16:58:50 +0000 |
parents | 4402e78f068d |
children | 76133c933d92 |
line wrap: on
line diff
--- a/macros.xml Fri Jun 19 14:03:47 2020 +0000 +++ b/macros.xml Mon Sep 14 16:58:50 2020 +0000 @@ -1,28 +1,4 @@ <macros> -<!-- -# generate a Walnut CLIB from GPF-DIA and a FASTA -for i in library/*.mzML; do - java -Xmx20g -jar encyclopedia-0.9.0-executable.jar -walnut -i $i -f uniprot_yeast_25jan2019.fasta; -done -java -Xmx20g -jar encyclopedia-0.9.0-executable.jar -libexport -walnut -o chromatogram_library.elib -i library -f uniprot_yeast_25jan2019.fasta -a false; - -# process single-injection DIA with the CLIB -for i in quant/*.mzML; do - java -Xmx20g -jar encyclopedia-0.9.0-executable.jar -i $i -l chromatogram_library.elib -f uniprot_yeast_25jan2019.fasta; -done - -Next for Prosit: -# generate an EncyclopeDIA CLIB from GPF-DIA and a Prosit Library -for i in library/*.mzML; do - java -Xmx20g -jar encyclopedia-0.9.0-executable.jar -i $i -l prosit_library.dlib -f uniprot_yeast_25jan2019.fasta; -done -java -Xmx20g -jar encyclopedia-0.9.0-executable.jar -libexport -o chromatogram_library.elib -i library -f uniprot_yeast_25jan2019.fasta -a false; - -# process single-injection DIA with the CLIB (exactly the same as with Walnut) -for i in quant/*.mzML; do - java -Xmx20g -jar encyclopedia-0.9.0-executable.jar -i $i -l chromatogram_library.elib -f uniprot_yeast_25jan2019.fasta; -done ---> <token name="@VERSION@">0.9.5</token> <xml name="requirements"> <requirements> @@ -30,13 +6,21 @@ <yield/> </requirements> </xml> + + <token name="@ENCYCLOPEDIA_WIKI@"> +EncyclopeDIA_ is library search engine comprised of several algorithms for DIA data analysis and can search for peptides using either DDA-based spectrum libraries or DIA-based chromatogram libraries. See: https://bitbucket.org/searleb/encyclopedia/wiki/Home + +.. _EncyclopeDIA: https://bitbucket.org/searleb/encyclopedia/wiki/Home + </token> <xml name="citations"> <citations> <citation type="doi">10.1038/s41467-018-07454-w</citation> <citation type="doi">10.1038/s41467-020-15346-1</citation> - <yield /> + <citation type="doi">10.1074/mcp.P119.001913</citation> + <yield/> </citations> </xml> + <token name="@CMD_IMPORTS@"> #import re #def identifier_or_name($input1) @@ -47,14 +31,12 @@ #end if #end def #def clean($name1) - ## #set $name_clean = $re.sub('[^\w\-_\.]', '_', $re.sub('(?i[.](fa|fasta|imzml|mzml)$)','', $re.sub('.*/','', $name1.rstrip('.gz')))) - ## #set $name_clean = $re.sub('[^\w\-_\.]', '_', $re.sub('.*/','', $name1.rstrip('.gz'))) - #set $name_clean = $re.sub('[^\w\-_\.]', '_', $re.sub('(?i)[.](fa|fasta|imzml|mzml)$','', $re.sub('.*/','', $name1.rstrip('.gz')))) + #set $name_clean = $re.sub('[^\w\-_]', '_', $re.sub('(?i)[.](fa|fasta|imzml|mzml)$','', $re.sub('.*/','', $name1.rstrip('.gz')))) #return $name_clean #end def #def ln_name($ds) #set $ext = '' - #if $ds.is_of_type('mzml') + #if $ds.is_of_type('mzml') or $ds.is_of_type('imzml') #set $ext = ".mzML" #else if $ds.is_of_type('elib') #set $ext = ".elib" @@ -77,23 +59,27 @@ </token> <xml name="scan_input"> - <param argument="-i" type="data" format="imzml,mzml" label="Spectrum file, .mzml or .dia"/> + <param name="scan_input" argument="-i" type="data" format="imzml,mzml" label="Spectrum file in mzML format"> + <help>@MSCONVERT_RAW@</help> + </param> </xml> <token name="@LINK_SCAN_INPUT@"><![CDATA[ - #set $i_name = $ln_name($i) - ln -s '$i' '$i_name' && + #set $i_name = $ln_name($scan_input) + ln -s '$scan_input' '$i_name' && ]]></token> <token name="@SCAN_INPUT@"> -i '$i_name' </token> <xml name="scan_inputs"> - <param argument="-i" type="data" format="imzml,mzml" multiple="true" label="Spectrum file, .mzml or .dia"/> + <param name="scan_inputs" argument="-i" type="data" format="imzml,mzml" multiple="true" label="Spectrum files in mzML format"> + <help>@MSCONVERT_RAW@</help> + </param> </xml> <token name="@LINK_SCAN_INPUTS@"><![CDATA[ #set $inputs_dir = 'inputs' mkdir -p $inputs_dir && - #for $sf in $i + #for $sf in $scan_inputs #set $i_name = $ln_name($sf) ln -s '$sf' '${inputs_dir}/${i_name}' && #end for @@ -103,24 +89,30 @@ </token> <xml name="fasta_input"> - <param argument="-f" type="data" format="fasta" label="Background protein fasta database"/> + <param name="fasta" argument="-f" type="data" format="fasta" label="Background proteome protein fasta database"> + <help>provides the necessary peptide-to-protein links not specified in the spectrum library</help> + </param> </xml> <token name="@LINK_FASTA_INPUT@"><![CDATA[ - #set $f_name = $ln_name($f) - ln -s '$f' '$f_name' && + #set $f_name = $ln_name($fasta) + ln -s '$fasta' '$f_name' && ]]></token> <token name="@FASTA_INPUT@"> -f '$f_name' </token> <xml name="target_fasta"> - <param argument="-t" type="data" format="fasta" label="target FASTA file" optional="true"/> - <param argument="-tp" type="boolean" truevalue="true" falsevalue="false" checked="false" label="target FASTA file contains peptides"/> + <param name="target_fasta" argument="-t" type="data" format="fasta" label="Target fasta database" optional="true"> + <help>Optional - Only analyze this subset of the background fasta proteome</help> + </param> + <param argument="-tp" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Target FASTA file contains peptides"> + <help>Rather than full proteins</help> + </param> </xml> <token name="@LINK_TARGET_FASTA@"><![CDATA[ - #if $t - #set $t_name = $ln_name($t) - ln -s '$t' '$t_name' && + #if $target_fasta + #set $t_name = $ln_name($target_fasta) + ln -s '$target_fasta' '$t_name' && #else #set $t_name = None #end if @@ -132,15 +124,15 @@ #end if </token> - <xml name="lib_input" token_optional="true" token_help=""> - <param argument="-l" type="data" format="elib,dlib" optional="@OPTIONAL@" label="Library: Chromatagram .ELIB or Spectrum .DLIB"> - <help>@HELP@</help> + <xml name="lib_input" token_optional="true" token_libhelp=""> + <param name="library" argument="-l" type="data" format="elib,dlib" optional="@OPTIONAL@" label="Library: Chromatagram .ELIB or Spectrum .DLIB"> + <help>@LIBHELP@</help> </param> </xml> <token name="@LINK_LIB_INPUT@"><![CDATA[ - #if $l - #set $l_name = $ln_name($l) - cp '$l' $l_name && + #if $library + #set $l_name = $ln_name($library) + cp '$library' '$l_name' && #else #set $l_name = None #end if @@ -195,16 +187,16 @@ token_cid_selected="false" token_hcd_selected="true"/> </xml> <token name="@COMMON_OPTIONS@"> - #if $acquisition.set_acquisition == 'yes' - -numberOfExtraDecoyLibrariesSearched $acquisition.numberOfExtraDecoyLibrariesSearched - #if $acquisition.acquisition - -acquisition '$acquisition.acquisition' + #if $options.acquisition.set_acquisition == 'yes' + -numberOfExtraDecoyLibrariesSearched $options.acquisition.numberOfExtraDecoyLibrariesSearched + #if $options.acquisition.acquisition + -acquisition '$options.acquisition.acquisition' #end if - #if $acquisition.enzyme: - -enzyme '$acquisition.enzyme' + #if $options.acquisition.enzyme: + -enzyme '$options.acquisition.enzyme' #end if - #if $acquisition.frag: - -frag '$acquisition.frag' + #if $options.acquisition.frag: + -frag '$options.acquisition.frag' #end if #end if </token> @@ -254,11 +246,11 @@ </conditional> </xml> <token name="@MASS_TOLERANCE@"> - #if $tolerance.set_tolerance == 'yes' - -ptolunits $tolerance.precursor_tolerance.ptolunits - -ptol $tolerance.precursor_tolerance.ptol - -ftolunits $tolerance.fragment_tolerance.ftolunits - -ftol $tolerance.fragment_tolerance.ftol + #if $options.tolerance.set_tolerance == 'yes' + -ptolunits $options.tolerance.precursor_tolerance.ptolunits + -ptol $options.tolerance.precursor_tolerance.ptol + -ftolunits $options.tolerance.fragment_tolerance.ftolunits + -ftol $options.tolerance.fragment_tolerance.ftol #end if </token> @@ -286,9 +278,9 @@ </xml> <token name="@MASS_LIBRARY_TOLERANCE@"> @MASS_TOLERANCE@ - #if $tolerance.set_tolerance == 'yes' and $tolerance.library_tolerance.ltolunits != 'defaults' - -ltolunits $tolerance.library_tolerance.ltolunits - -ltol $tolerance.library_tolerance.ltol + #if $options.tolerance.set_tolerance == 'yes' and $options.tolerance.library_tolerance.ltolunits != 'defaults' + -ltolunits $options.tolerance.library_tolerance.ltolunits + -ltol $options.tolerance.library_tolerance.ltol #end if </token> @@ -307,15 +299,15 @@ </conditional> </xml> <token name="@PERCOLATOR_OPTIONS@"> - #if $percolator.set_percolator == 'yes' - #if str($percolator.percolatorVersionNumber) - -percolatorVersionNumber $percolator.percolatorVersionNumber + #if $options.percolator.set_percolator == 'yes' + #if str($options.percolator.percolatorVersionNumber) + -percolatorVersionNumber $options.percolator.percolatorVersionNumber #end if - #if str($percolator.percolatorProteinThreshold) - -percolatorProteinThreshold $percolator.percolatorProteinThreshold + #if str($options.percolator.percolatorProteinThreshold) + -percolatorProteinThreshold $options.percolator.percolatorProteinThreshold #end if - #if str($percolator.percolatorThreshold) - -percolatorThreshold $percolator.percolatorThreshold + #if str($options.percolator.percolatorThreshold) + -percolatorThreshold $options.percolator.percolatorThreshold #end if #end if </token> @@ -341,24 +333,24 @@ </conditional> </xml> <token name="@PEAK_OPTIONS@"> - #if $peak.set_peak == 'yes' - #if str($peak.numberOfQuantitativePeaks) - -numberOfQuantitativePeaks $peak.numberOfQuantitativePeaks + #if $options.peak.set_peak == 'yes' + #if str($options.peak.numberOfQuantitativePeaks) + -numberOfQuantitativePeaks $options.peak.numberOfQuantitativePeaks #end if - #if str($peak.minNumOfQuantitativePeaks) - -minNumOfQuantitativePeaks $peak.minNumOfQuantitativePeaks + #if str($options.peak.minNumOfQuantitativePeaks) + -minNumOfQuantitativePeaks $options.peak.minNumOfQuantitativePeaks #end if - #if str($peak.minQuantitativeIonNumber) - -minQuantitativeIonNumber $peak.minQuantitativeIonNumber + #if str($options.peak.minQuantitativeIonNumber) + -minQuantitativeIonNumber $options.peak.minQuantitativeIonNumber #end if - #if str($peak.minIntensity) - -minIntensity $peak.minIntensity + #if str($options.peak.minIntensity) + -minIntensity $options.peak.minIntensity #end if - #if str($peak.expectedPeakWidth) - -expectedPeakWidth $peak.expectedPeakWidth + #if str($options.peak.expectedPeakWidth) + -expectedPeakWidth $options.peak.expectedPeakWidth #end if - #if $peak.filterPeaklists - -filterPeaklists $peak.filterPeaklists + #if $options.peak.filterPeaklists + -filterPeaklists $options.peak.filterPeaklists #end if #end if </token> @@ -387,24 +379,24 @@ </conditional> </xml> <token name="@WINDOW_OPTIONS@"> - #if $window.set_window == 'yes' - #if str($window.foffset) - -foffset $window.foffset + #if $options.window.set_window == 'yes' + #if str($options.window.foffset) + -foffset $options.window.foffset #end if - #if str($window.poffset) - -poffset $window.poffset + #if str($options.window.poffset) + -poffset $options.window.poffset #end if - #if str($window.precursorIsolationMargin) - -precursorIsolationMargin $window.precursorIsolationMargin + #if str($options.window.precursorIsolationMargin) + -precursorIsolationMargin $options.window.precursorIsolationMargin #end if - #if str($window.precursorWindowSize) - -precursorWindowSize $window.precursorWindowSize + #if str($options.window.precursorWindowSize) + -precursorWindowSize $options.window.precursorWindowSize #end if - #if str($window.rtWindowInMin) - -rtWindowInMin $window.rtWindowInMin + #if str($options.window.rtWindowInMin) + -rtWindowInMin $options.window.rtWindowInMin #end if - #if $window.scoringBreadthType - -scoringBreadthType $window.scoringBreadthType + #if $options.window.scoringBreadthType + -scoringBreadthType $options.window.scoringBreadthType #end if #end if </token> @@ -433,11 +425,11 @@ </conditional> </xml> <token name="@MODIFICATION_OPTIONS@"> - #if $modifications.set_modifications == 'yes' - #if $modifications.fixed - -fixed $modifications.fixed + #if $options.modifications.set_modifications == 'yes' + #if $options.modifications.fixed + -fixed $options.modifications.fixed #end if - -verifyModificationIons $modifications.verifyModificationIons + -verifyModificationIons $options.modifications.verifyModificationIons #end if </token> @@ -459,8 +451,6 @@ <param argument="-minNumOfQuantitativePeaks" type="integer" value="3" min="1" max="10" label="minNumOfQuantitativePeaks" optional="true"/> <param argument="-numberOfQuantitativePeaks" type="integer" value="3" min="1" max="10" label="numberOfQuantitativePeaks" optional="true"/> <!-- - <param argument="-alpha" type="float" value="1.8" min="0.0" max="5.0" label="alpha"/> - <param argument="-beta" type="float" value="0.4" min="0.0" max="5.0" label="beta"/> <param argument="-addDecoysToBackground" type="boolean" truevalue="true" falsevalue="false" checked="false" label="addDecoysToBackground"/> <param argument="-dontRunDecoys" type="boolean" truevalue="true" falsevalue="false" checked="false" label="dontRunDecoys"/> --> @@ -468,122 +458,94 @@ </conditional> </xml> <token name="@SEARCH_OPTIONS@"> - #if $search.set_search == 'yes' - -minCharge $search.minCharge - -maxCharge $search.maxCharge - -minLength $search.minLength - -maxLength $search.maxLength - -minEluteTime $search.minEluteTime - -maxMissedCleavage $search.maxMissedCleavage - -minQuantitativeIonNumber $search.minQuantitativeIonNumber - -minNumOfQuantitativePeaks $search.minNumOfQuantitativePeaks - -numberOfQuantitativePeaks $search.numberOfQuantitativePeaks - ## -alpha $search.alpha - ## -beta $search.beta - ## -addDecoysToBackground $search.addDecoysToBackground - ## -dontRunDecoys $search.dontRunDecoys + #if $options.search.set_search == 'yes' + -minCharge $options.search.minCharge + -maxCharge $options.search.maxCharge + -minLength $options.search.minLength + -maxLength $options.search.maxLength + -minEluteTime $options.search.minEluteTime + -maxMissedCleavage $options.search.maxMissedCleavage + -minQuantitativeIonNumber $options.search.minQuantitativeIonNumber + -minNumOfQuantitativePeaks $options.search.minNumOfQuantitativePeaks + -numberOfQuantitativePeaks $options.search.numberOfQuantitativePeaks + ## -addDecoysToBackground $options.search.addDecoysToBackground + ## -dontRunDecoys $options.search.dontRunDecoys #end if </token> - <!-- -minNumOfQuantitativePeaks minQuantitativeIonNumber numberOfQuantitativePeaks numberOfReportedPeaksu - +acquisition (default: overlapping dia) - +addDecoysToBackground (default: false) - +alpha (default: 1.8) - +beta (default: 0.4) - +dontRunDecoys (default: false) - +enzyme (default: trypsin) - +filterPeaklists (default: false) - +fixed (default: C=57.0214635) - +foffset (default: 0) - =frag (default: YONLY) - +ftol (default: 10) - +ftolunits (default: ppm) - +maxCharge (default: 3) - +ftolunits (default: ppm) - +maxCharge (default: 3) - +maxLength (default: 100) - +maxMissedCleavage (default: 1) - +minCharge (default: 2) - +minEluteTime (default: 12) - +minIntensity (default: -1.0) - +minLength (default: 5) - +minNumOfQuantitativePeaks (default: 3) - +minQuantitativeIonNumber (default: 3) - +numberOfQuantitativePeaks (default: 5) - -numberOfReportedPeaks (default: 1) - -numberOfThreadsUsed (default: 12) - +percolatorProteinThreshol (default: 0.01) - +percolatorThreshold (default: 0.01) - +percolatorVersionNumber (default: 3) - +poffset (default: 0) - +precursorIsolationMargin (default: 0) - +precursorWindowSize (default: -1) - +ptol (default: 10) - +ptolunits (default: ppm) - -requireVariableMods (default: false) - -variable (default: -) - --> + + <xml name="options_section"> + <section name="options" title="Parameter Settings" expanded="false"> + <expand macro="common_options"/> + <expand macro="mass_library_tolerance"/> + <expand macro="percolator_options"/> + <expand macro="peak_options"/> + <expand macro="window_options"/> + <expand macro="modification_options"/> + <expand macro="search_options"/> + </section> + </xml> + <xml name="libexport"> <param argument="-a" type="boolean" truevalue="true" falsevalue="false" checked="false" label="align between files"/> </xml> -</macros> -<!-- -e w t x l param -+:+:+:+:+ i -+:+:+:+:+ l -+:+:+:+:+ f - -+:+:+:+:+ t --:+:-:+:- tp --:+:-:+:+ a - -+:+:+:+:+ o -+:+:+:+:- acquisition --:+:-:+:- addDecoysToBackground --:+:-:+:- alpha --:+:-:+:- beta --:-:-:-:+ blib --:+:-:+:- dontRunDecoys -+:+:+:+:- enzyme -+:-:+:-:- expectedPeakWidth -+:+:+:+:- filterPeaklists -+:+:+:+:+ fixed -+:+:+:+:+ foffset -+:+:+:+:- frag -+:+:+:+:+ ftol -+:+:+:+:+ ftolunits -+:-:+:-:- lftol -+:-:+:-:- lftolunits -+:-:-:-:- libexport -+:-:+:-:+ localizationModification --:+:-:+:- maxCharge --:+:-:+:- maxLength --:+:-:+:- maxMissedCleavage --:+:-:+:- minCharge --:+:-:+:- minEluteTime -+:+:+:+:- minIntensity --:+:-:+:- minLength -+:+:+:+:+ minNumOfQuantitativePeaks -+:+:+:+:+ minQuantitativeIonNumber -+:-:+:-:+ numberOfExtraDecoyLibrariesSearched -+:+:+:+:+ numberOfQuantitativePeaks --:+:-:+:- numberOfReportedPeaks --:+:-:+:- numberOfThreadsUsed --:-:-:-:+ percolatorLocation --:+:-:+:- percolatorProteinThreshol -+:-:+:-:+ percolatorProteinThreshold -+:+:+:+:+ percolatorThreshold -+:+:+:+:- percolatorVersionNumber --:-:-:-:+ phospho -+:+:+:+:- poffset -+:+:+:+:- precursorIsolationMargin -+:+:+:+:- precursorWindowSize -+:+:+:+:- ptol -+:+:+:+:- ptolunits --:+:-:+:- requireVariableMods -+:-:+:-:- rtWindowInMin -+:-:+:-:- scoringBreadthType --:+:-:+:- variable -+:-:+:-:- verifyModificationIons ---> + <token name="@SEARCH2LIB_CMDS@"><![CDATA[ + @CMD_IMPORTS@ + @LINK_SCAN_INPUTS@ + @LINK_FASTA_INPUT@ + @LINK_TARGET_FASTA@ + @LINK_LIB_INPUT@ + for SCAN_FILE in `ls -1 inputs/*`; do + echo "\$SCAN_FILE" && + EncyclopeDIA -Djava.awt.headless=true -Duser.language=en-US -Duser.region=US + -Xmx\$[ \${GALAXY_MEMORY_MB:-20480} / 1024 ]g + -numberOfThreadsUsed "\${GALAXY_SLOTS:-4}" + #if not $library + -walnut + #end if + -i \$SCAN_FILE + @FASTA_INPUT@ + @TARGET_FASTA@ + @LIB_INPUT@ + @COMMON_OPTIONS@ + @MASS_LIBRARY_TOLERANCE@ + @PERCOLATOR_OPTIONS@ + @PEAK_OPTIONS@ + @WINDOW_OPTIONS@ + @MODIFICATION_OPTIONS@ + @SEARCH_OPTIONS@ | tee -a search2lib.log + ; done && + for TXT in `find inputs/*.mzML.[efw]*[ast].txt`; do TRGT=`echo \$TXT | sed 's/mzML/dia/'`; ln -s \$TXT \$TRGT; done && + EncyclopeDIA -Djava.awt.headless=true -Duser.language=en-US -Duser.region=US -Xmx\$[ \${GALAXY_MEMORY_MB:-20480} / 1024 ]g -libexport + #if not $library + -pecan + #end if + @SCAN_INPUTS@ + @FASTA_INPUT@ + @TARGET_FASTA@ + @LIB_INPUT@ + -a $a + -o chromatogram_library.elib + && ls -l ./*.* inputs/* + | tee -a search2lib.log +]]> + </token> + <token name="@MSCONVERT_CMD@"><![CDATA[ + msconvert --zlib --64 --mzML --simAsSpectra --filter "peakPicking true 1-" --filter "demultiplex optimization=overlap_only" *.raw +]]> + </token> + <token name="@MSCONVERT_RAW@"><![CDATA[ +mzML conversion from RAW requires special options: @MSCONVERT_CMD@ +]]> + </token> + <token name="@MSCONVERT_HELP@"><![CDATA[ + + The MSConvert command can be used to convert and deconvolute DIA raw files to mzML format. You need to use these options: + + :: + + @MSCONVERT_CMD@ + +]]> + </token> +</macros>