view quantwiz_iq.xml @ 0:4f0efe305bff draft default tip

"planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/quantwiz_iq commit 7e54991bc641a1f70855b686c987f3f331142db1"
author galaxyp
date Tue, 21 Jan 2020 15:21:38 -0500
parents
children
line wrap: on
line source

<tool id="quantwiz_iq" name="QuantWiz-IQ" version="2.0">
    <description>Isobaric Quantitation using QuantWiz-IQ</description>
    <requirements>
        <requirement type="package" version="2.0">quantwiz-iq</requirement>
    </requirements>
    <command detect_errors="exit_code"><![CDATA[
cp '$input_file' '$input_file.name'
&&
cat '$new_param_file' > '$iq_params'
#if $input_purity_file.input_purity_file_option == "history":
    && cp '$input_purity_file.purity_type' '$input_purity_file.purity_type.name'
    && echo "Purity_corrections_values=$input_purity_file.purity_type.name" >> '$iq_params'
#else:
    && PROG_PATH=`which QuantWiz_IQ`
    && cp \${PROG_PATH%/*}/Purity_correction/$input_purity_file.purity_type .
    && echo "Purity_corrections_values=$input_purity_file.purity_type" >> '$iq_params'
#end if

&&
QuantWiz_IQ '$iq_params'
&& cp '${input_file.name.rsplit('.',1)[0]}_${area_method}_${min_tol}.tsv' '$quant'
&& cp '${input_file.name.rsplit('.',1)[0]}_${area_method}_${min_tol}_noquant.tsv' '$noquant'
    ]]>
    </command>
    <configfiles>
        <configfile name="new_param_file"><![CDATA[#slurp
Spectra_Folder=.
#if $input_file.ext == "mgf":
Input_file_extension=mgf
#else if $input_file.ext == "mzml":
Input_file_extension=mzML
#end if
Label_type=$input_label.label_type
Plex=$input_label.num_plex
min_reporters=$min_reporters
Spectrum_area=$area_method
Base_reporter=$input_label.base_reporter
Normalization=$normalization
Peak_intensity_threshold=$peak_intensity_threshold
Tol_unit=$tol_unit
Tol_min=$min_tol
Tol_max=$max_tol
#slurp
]]></configfile>
    </configfiles>
    
    <inputs>
        <param type="data" name="input_file" format="mgf,mzml" label="MGF/mzML file"/>
        
        <conditional name="input_label">
            <param name="label_type" type="select" label="Isobaric reporter labeling type (MS2 level): iTRAQ or TMT">
                <option value="iTRAQ" selected="true">iTRAQ</option>
                <option value="TMT">TMT</option>
            </param>
            <when value="iTRAQ">
                <param name="num_plex" type="select" display="radio" label="You are using iTRAQ: 4Plex or 8Plex">
                    <option value="4plex" selected="true">4Plex</option>
                    <option value="8plex">8Plex</option>
                </param>
                <param name="base_reporter" type="select" label="Denominator reporter tag for ratio calculation (mention only base reporter integer value)">
                    <option value="113" selected="true">113</option>
                    <option value="114">114</option>
                    <option value="115">115</option>
                    <option value="116">116</option>
                    <option value="117">117</option>
                    <option value="118">118</option>
                    <option value="119">119</option>
                    <option value="121">121</option>
                </param>
            </when> 
            <when value="TMT">
                <param name="num_plex" type="select" display="radio" label="You are using TMT: 2Plex, 6Plex or 10Plex">
                    <option value="2plex">2Plex</option>
                    <option value="6plex">6Plex</option>
                    <option value="10plex" selected="true">10Plex</option>
                </param>
                <param name="base_reporter" type="select" label="Denominator reporter tag for ratio calculation (mention only base reporter integer value)">
                    <option value="126" selected="true">126</option>
                    <option value="127">127</option>
                    <option value="128">128</option>
                    <option value="129">129</option>
                    <option value="130">130</option>
                    <option value="131">131</option>
                </param>
            </when>
        </conditional>
        
        <param name="min_reporters" type="integer" value="2" min="0" label="Minimum number of reporter types required to consider a spectrum for quantitation. Default is 2" />
        
        <param name="area_method" type="select" label="Spectrum area calculation method">
            <option value="T">Trapezoid</option>
            <option value="S" selected="true">Sum intensity</option>
            <option value="B">Baseline corrected sum intensity</option>
        </param>
        
        <param name="normalization" type="select" display="radio" label="Perform normalization">
            <option value="yes">Yes</option>
            <option value="no" selected="true">No</option>
        </param>
        
        <param name="peak_intensity_threshold" type="float" value="0.0" min="0.0" label="Reporter label maximum peak intensity threshold" help="Reporter label maximum peak intensity threshold to consider the tag for quantitation. Default is 0. It depends on signal to noise ratio (S/N)" />
        
        <param name="tol_unit" type="select" display="radio" label="MS/MS (MS2) tolerance unit">
            <option value="Da" selected="true">Dalton (Da)</option>
            <option value="ppm">Parts per million (ppm)</option>
        </param>
        
        <param name="min_tol" type="float" value="0.05" min="0.0" label="Minimum MS/MS (MS2) tolerance range" />
        <param name="max_tol" type="float" value="0.05" min="0.0" label="Maximum MS/MS (MS2) tolerance range" />
        
        <conditional name="input_purity_file">
            <param name="input_purity_file_option" type="select" display="radio" label="Use default or from the history">
                <option value="default" selected="true">Use Default</option>
                <option value="history">Use file from the history</option>
            </param>
            <when value="default">
                <param name="purity_type" type="select" label="Select default purity correction type">
                    <option value="iTRAQ4plex.tsv">iTRAQ 4plex</option>
                    <option value="iTRAQ8plex.tsv" selected="true">iTRAQ 8plex</option>
                    <option value="TMT6plex.tsv">TMT 6plex</option>
                    <option value="TMT10plex.tsv">TMT 10plex</option>
                </param>
            </when> 
            <when value="history">
                <param type="data" name="purity_type" format="txt" label="Select purity correction file from the history"/>
            </when> 
        </conditional>
    </inputs>
    
    <outputs>
        <data name="quant" format="tabular" label="${tool.name}_Quant.tabular" from_work_dir="${input_file.name.rsplit('.',1)[0]}_${area_method}_${min_tol}.tsv"/>
        <data name="noquant" format="tabular" label="${tool.name}_No_Quant.tabular" from_work_dir="${input_file.name.rsplit('.',1)[0]}_${area_method}_${min_tol}_noquant.tsv"/>
        <data name="iq_params" format="txt" label="${tool.name}_QuantWiz_IQ_parameters"/>
    </outputs>
    
    <tests>
        <test>
            <param name="input_file" value="Test_Orbi_iTRAQ_8plex.mgf" ftype="mgf"/>
            <param name="label_type" value="iTRAQ"/>
            <param name="num_plex" value="8plex"/>
            <param name="min_reporters" value="1"/>
            <param name="area_method" value="S"/>
            <param name="base_reporter" value="113"/>
            <param name="normalization" value="no"/>
            <param name="peak_intensity_threshold" value="0.0"/>
            <param name="tol_unit" value="Da"/>
            <param name="min_tol" value="0.05"/>
            <param name="max_tol" value="0.05"/>
            <param name="input_purity_file_option" value="default"/>
            <param name="purity_type" value="iTRAQ8plex.tsv"/>
            <output name="quant" file="Test_Orbi_iTRAQ_8plex_S_0.05.tsv">
                <assert_contents>
                    <has_text text="Retention_time"/>
                </assert_contents>
            </output>
            <output name="noquant" file="Test_Orbi_iTRAQ_8plex_S_0.05_noquant.tsv">
                <assert_contents>
                    <has_text text="Base_Intensity"/>
                </assert_contents>
            </output>
        </test>
    </tests>
    
    <help><![CDATA[

**QuantWiz-IQ** for Isobaric Quantitation
        
IQ stands for Isobaric Quantitator, a tool for quantitation based on of Isobaric tags (iTRAQ and TMT) that takes
MGF as well as the HUPO-PSI standard mzML as input. It supports 4-plex and 8-plex quantitation for iTRAQ;
and 2-plex, 6-plex and 10-plex quantitation for TMT.

**Outputs**:

Outputs parameters file along with two tabular files. One tabular file contains spectra that shows quantitation,
and the other tabular file with spectra that didn't show any qualified quantitation.
        
    ]]></help>
    
    <citations>
        <citation type="bibtex">
            @misc{quantwiz_iq,
            author={Aggarwal, Suruchi and Yadav, Amit Kumar and Kumar, Praveen},
            year={2020},
            title={QuantWiz-IQ Galaxy Wrapper}
            }
        </citation>
        <citation type="doi">10.1007/978-1-4939-3106-4_18</citation>
    </citations>
</tool>