view dialignr.xml @ 0:fbbbf8c145fc draft default tip

"planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/dialignr commit 8dd046346db8261c462e2f3f5b4ff7f2433348df"
author galaxyp
date Wed, 30 Dec 2020 20:12:57 +0000
parents
children
line wrap: on
line source

<tool id="dialignr" name="DIAlignR" version="@WRAPPER_VERSION@">
    <description>for retention time alignment of targeted mass spectrometric data</description>
    <macros>
        <import>macros.xml</import>
    </macros>
    <requirements>
        <requirement type="package" version="@TOOL_VERSION@">bioconductor-dialignr</requirement>
    </requirements>
    <command detect_errors="exit_code"><![CDATA[
    #import re

    mkdir -p ./data/mzml &&
    mkdir -p ./data/osw &&

    #for $mzml in $input_mzml_files:
        #set $file_name_mzml = re.sub('[^\w\-_.]', '_', str($mzml.element_identifier))
        echo '$file_name_mzml' >> ./runs.txt &&
        ln -s '$mzml' './data/mzml/${file_name_mzml}.chrom.mzML' &&
    #end for

    #if $input_osw_file:
    ln -s '$input_osw_file' './data/osw/merged.osw' &&
    #end if

    Rscript --vanilla '${__tool_directory__}/dialignr.R'
        #if $input_osw_file:
        --oswMerged 'TRUE'
        #else:
        --oswMerged 'FALSE'
        #end if
        --maxFdrQuery '${$adv_params.maxFdrQuery}'
        --XICfilter '${$adv_params.XICfilter}'
        --polyOrd '${adv_params.polyOrd}'
        --kernelLen '${adv_params.kernelLen}'
        --globalAlignment '${adv_params.globalAlignment}'
        --globalAlignmentFdr '${adv_params.globalAlignmentFdr}'
        --globalAlignmentSpan '${adv_params.globalAlignmentSpan}'
        --RSEdistFactor '${adv_params.RSEdistFactor}'
        --normalization '${adv_params.normalization}'
        --simMeasure '${adv_params.simMeasure}'
        --alignType '${adv_params.alignType}'
        --goFactor '${adv_params.goFactor}'
        --geFactor '${adv_params.geFactor}'
        --cosAngleThresh '${adv_params.cosAngleThresh}'
        --OverlapAlignment '${adv_params.OverlapAlignment}'
        --dotProdThresh '${adv_params.dotProdThresh}'
        --gapQuantile '${adv_params.gapQuantile}'
        --hardConstrain '${adv_params.hardConstrain}'
        --samples4gradient '${adv_params.samples4gradient}'
        --analyteFDR '${adv_params.analyteFDR}'
        --unalignedFDR '${adv_params.unalignedFDR}'
        --alignedFDR '${adv_params.alignedFDR}'
        --baselineType '${adv_params.baselineType}'
        --integrationType '${adv_params.integrationType}'
        --fitEMG '${adv_params.fitEMG}'
        --recalIntensity '${adv_params.recalIntensity}'
        --fillMissing '${adv_params.fillMissing}'
        --smoothPeakArea '${adv_params.smoothPeakArea}'
        &&

    cat alignedTargetedRuns.csv | sed 's/,/\t/g' > alignedTargetedRuns.tsv
    ]]></command>
    <inputs>
        <param name="input_mzml_files" type="data" format="mzml" multiple="true" label="MZML file(s)" help="Sample file(s) in .MZML format." />
        <param name="input_osw_file" type="data" format="osw" optional="true" multiple="false" label="OSW file" help="Sample file in .OSW format." />
        <section name="adv_params" title="Advanced parameters">
            <param name="maxFdrQuery" type="float" min="0" max="1" value="0.05" label="Maximum FDR query" help="Numeric value between 0 and 1. It is used to filter features from osw file which have SCORE_MS2.QVALUE less than itself." />
            <param name="XICfilter" type="select">
                <option value="sgolay" selected="true">sgolay</option>
                <option value="boxcar">boxcar</option>
                <option value="gaussian">gaussian</option>
                <option value="loess ">loess</option>
                <option value="none">none</option>
            </param>
            <param name="polyOrd" type="integer" min="0" value="4" label="Order of the polynomial to be fit in the kernel" />
            <param name="kernelLen" type="integer" min="0" value="9" label="Number of data-points to consider in the kernel" />
            <param name="globalAlignment" type="select" label="Global alignment">
                <option value="loess" selected="true">loess</option>
                <option value="linear">linear</option>
            </param>
            <param name="globalAlignmentFdr" type="float" min="0" max="1" value="0.01" label="Global alignment FDR" help="Numeric value between 0 and 1. Features should have m-score lower than this value for participation in LOESS fit." />
            <param name="globalAlignmentSpan" type="float" min="0" max="1" value="0.1" label="Global alignment Span" help="Span value for LOESS fit. For targeted proteomics 0.1 could be used." />
            <param name="RSEdistFactor" type="float" min="0" value="3.5" label="RSE distance" help="Defines how much distance in the unit of rse remains a noBeef zone." />
            <param name="normalization" type="select" label="Normalization">
                <option value="mean" selected="true">mean</option>
                <option value="12">12</option>
            </param>
            <param name="simMeasure" type="select" label="SIM measure">
                <option value="dotProduct">dotProduct</option>
                <option value="cosineAngle">cosineAngle</option>
                <option value="cosine2Angle">cosine2Angle</option>
                <option value="dotProductMasked" selected="true">dotProductMasked</option>
                <option value="euclideanDist">euclideanDist</option>
                <option value="covariance">covariance</option>
                <option value="correlation">correlation</option>
            </param>
            <param name="alignType" type="select" label="Alignment method">
                <option value="global">global</option>
                <option value="local">local</option>
                <option value="hybrid" selected="true">hybrid</option>
            </param>
            <param name="goFactor" type="float" min="0" value="0.125" label="Gap penalty (first gap)" help="Penalty for introducing first gap in alignment. This value is multiplied by base gap-penalty." />
            <param name="geFactor" type="float" min="0" value="40" label="Gap penalty (subsequent gaps)" help="Penalty for introducing subsequent gaps in alignment. This value is multiplied by base gap-penalty." />
            <param name="cosAngleThresh" type="float" min="0" value="0.3" label="cosAngleTresh" help="In SIM measure = dotProductMasked mode, angular similarity should be higher than cosAngleThresh otherwise similarity is forced to zero." />
            <param name="OverlapAlignment" type="boolean" checked="true" truevalue="TRUE" falsevalue="FALSE" label="Overlap alignment" help="An input for alignment with free end-gaps. No: Global alignment Yes: Overlap alignment" />
            <param name="dotProdThresh" type="float" min="0" value="0.96" label="dotProdThresh" help="In SIM measure = dotProductMasked mode, values in similarity matrix higher than dotProdThresh quantile are checked for angular similarity." />
            <param name="gapQuantile" type="float" min="0" max="1" value="0.5" label="Gap quantile" help="Must be between 0 and 1. This is used to calculate base gap-penalty from similarity distribution." />
            <param name="hardConstrain" type="boolean" truevalue="TRUE" falsevalue="FALSE" label="Hard constrain" help="No: Indices farther from noBeef distance are filled with distance from linear fit line." />
            <param name="samples4gradient" type="float" min="0" value="100" label="Samples for gradient" help="Modulates penalization of masked indices." />
            <param name="analyteFDR" type="float" min="0" max="1" value="0.01" label="Analyte FDR" help="Defines the upper limit of FDR on a precursor to be considered for multipeptide." />
            <param name="unalignedFDR" type="float" min="0" max="1" value="0.01" label="Unaligned FDR" help="Must be between 0 and maxFdrQuery. Features below unalignedFDR are considered for quantification even without the RT alignment." />
            <param name="alignedFDR" type="float" min="0" max="1" value="0.05" label="Aligned FDR" help="Must be between unalignedFDR and 1. Features below alignedFDRare considered for quantification after the alignment." />
            <param name="baselineType" type="select" label="Baseline method" help="Method to estimate the background of a peak contained in XICs.">
                <option value="base_to_base" selected="true">base to base</option>
                <option value="vertical_division_min">vertical division min</option>
                <option value="vertical_division_max">vertical division max</option>
            </param>
            <param name="integrationType" type="select" label="Integration method" help="Method to compute the area of a peak contained in XICs.">
                <option value="intensity_sum" selected="true">intensity sum</option>
                <option value="trapezoid">trapezoid</option>
                <option value="simpson">simpson</option>
            </param>
            <param name="fitEMG" type="boolean" truevalue="TRUE" falsevalue="FALSE" label="Fit EMG" help="Enable/disable exponentially modified gaussian peak model fitting." />
            <param name="recalIntensity" type="boolean" truevalue="TRUE" falsevalue="FALSE" label="Recal intensity" help="Recalculate intensity for all analytes." />
            <param name="fillMissing" type="boolean" checked="true" truevalue="TRUE" falsevalue="FALSE" label="Fill missing" help="Calculate intensity for analytes for which features are not found." />
            <param name="smoothPeakArea" type="boolean" truevalue="TRUE" falsevalue="FALSE" label="Smooth peak area" help="No: Raw chromatograms will be used for quantification. Yes: Smoothed chromatograms will be used for quantification." />
        </section>
    </inputs>
    <outputs>
        <data name="out_aligned_targeted_runs" format="tabular" label="${tool.name} on ${on_string}: alignedTargetedRuns.tsv" from_work_dir="alignedTargetedRuns.tsv" />
    </outputs>
    <tests>
        <test>
            <param name="input_mzml_files" ftype="mzml" value="hroest_K120809_Strep0_PlasmaBiolRepl2_R04_SW_filt,hroest_K120809_Strep10_PlasmaBiolRepl2_R04_SW_filt" />
            <param name="input_osw_file" ftype="osw" value="merged.osw" />
            <output name="out_aligned_targeted_runs" file="alignedTargetedRuns.tsv" />
        </test>
        <test>
            <param name="input_mzml_files" ftype="mzml" value="hroest_K120809_Strep0_PlasmaBiolRepl2_R04_SW_filt,hroest_K120809_Strep10_PlasmaBiolRepl2_R04_SW_filt" />
            <param name="input_osw_file" ftype="osw" value="merged.osw" />
            <param name="adv_params|maxFdrQuery" value="0.001" />
            <output name="out_aligned_targeted_runs" file="alignedTargetedRuns_fdr.tsv" />
        </test>
    </tests>
    <help><![CDATA[
DIAlignR
=============

DIAlignR is an R package for retention time alignment of targeted mass spectrometric data, including DIA and SWATH-MS data. This tool works with MS2 chromatograms directly and uses dynamic programming for alignment of raw chromatographic traces. DIAlignR uses a hybrid approach of global (feature-based) and local (raw data-based) alignment to establish correspondence between peaks.

For more information see the DIAlignR documentation_.

.. _documentation: https://github.com/shubham1637/DIAlignR

    ]]></help>
     <citations>
         <citation type="doi">10.1074/mcp.TIR118.001132</citation>
    </citations>
</tool>