view sirius_csifingerid.xml @ 8:7b9c17738db8 draft

"planemo upload for repository https://github.com/computational-metabolomics/sirius_csifingerid_galaxy commit 3d2543fdc71938abcb9c2ef5e187b122c49b80ea"
author computational-metabolomics
date Fri, 11 Feb 2022 10:05:21 +0000
parents 96b077221201
children 8dac4cef0a22
line wrap: on
line source

<tool id="sirius_csifingerid" name="SIRIUS-CSI:FingerID"
      version="4.9.8+galaxy3" profile="19.05">
    <description>is used to identify metabolites using single and
        tandem mass spectrometry</description>
    <requirements>
        <requirement type="package" version="4.9.8">
            sirius-csifingerid</requirement>
    </requirements>
    <command detect_errors="exit_code">
    <![CDATA[

        python '$__tool_directory__/sirius_csifingerid.py'
            --input_pth '$input'
            --database $database
            --profile $profile
            --candidates $candidates
            --ppm_max $ppm_max
            --polarity $polarity
            --out_dir $__new_file_path__
            --canopus_result_pth canopus_all_summary.tsv
            --annotations_result_pth annotations_all_summary.tsv
            --cores_top_level 1
            --meta_select_col $meta_select_col
            --min_MSMS_peaks $min_MSMS_peaks
            --schema $schema
            --temp_dir $__new_file_path__

            #if $adducts_cond.adducts_selector == 'select':
                #for $a in $adducts_cond.adducts
                    --adducts $a
                #end for
            #elif $adducts_cond.adducts_selector == 'all':
                #if $polarity == 'positive':
                    --adducts [M+H]+
                    --adducts [M+NH4]+
                    --adducts [M+Na]+
                    --adducts [M+K]+
                    --adducts [M+CH3OH+H]+
                    --adducts [M+ACN+H]+
                    --adducts [M+ACN+Na]+
                    --adducts [M+2ACN+H]+
                 #elif $polarity == 'negative':
                    --adducts [M-H]-
                    --adducts [M+Cl]-
                    --adducts [M+HCOO]-
                    --adducts [M+CH3COO]-
                 #end if
            #end if

            --rank_filter $rank_filter

            --confidence_filter $confidence_filter


    ]]></command>
    <inputs>
        <param name="input" argument="--input_pth" type="data" format="msp"
               label="MSP file (output from Create MSP tool)" />
        <param argument="--database" type="select"
               label="Select SIRIUS-CSI:FingerID Database" >
            <option value="PUBCHEM" >PubChem</option>
            <option value="HMDB">HMDB</option>
            <option value="KEGG">KEGG</option>
            <option value="KNAPSACK">KNApSAcK</option>
            <option value="BIOCYC">BioCyc</option>
            <option selected="true" value="BIO">Bio (all biological)</option>
            <option value="ALL">All (use all databases)</option>
        </param>
        <param argument="--ppm_max" type="integer" value="10" min="0"
               label="Mass deviation of the fragment peaks in ppm" />
        <param argument="--candidates" type="integer" value="5" min="1"
               label="Maximum number of candidates in the output" />
        <param argument="--polarity" type="select" label="Ion mode" >
            <option value="positive" selected="true">Positive</option>
            <option value="negative">Negative</option>
        </param> 
        <param argument="--profile" type="select" label="Analysis used" >
            <option value="orbitrap" selected="true">Orbitrap</option>
            <option value="qtof">qTOF</option>
            <option value="fticr">FT-ICR</option>
        </param>
        <param argument="--schema" type="select" label="Schema"
               help="Schema used for the MSP file (auto will try to
                     determine the schema automatically)">
            <option value="auto" selected="True">Auto</option>
            <option value="msp" >Generic MSP</option>
            <option value="massbank">MassBank</option>
        </param>
        <param argument="--meta_select_col" type="select"
               label="Choose how additional metadata columns are extracted"
               help="The SIRIUS-CSI:Fingerid output can have additional
               metadata columns added; these can be either extracted from all
               MSP parameters or from the 'Name' and 'RECORD_TITLE' MSP
               parameters. Additionally, columns can be added from the 'Name'
               or 'RECORD_TITLE' parameters by splitting on | and :  e.g.
               'MZ:100.2 | RT:20 | xcms_grp_id:1' would create MZ,RT and
               xcms_grp_id columns">
            <option value="name" selected="true">
                Extra metadata columns from the Name or RECORD_TITLE</option>
            <option value="name_split" >
                Extra metadata columns from the Name or
                RECORD_TITLE (each column is split on "|" and ":" ) </option>
            <option value="all">
                Extra metadata columns from all MSP parameters</option>
        </param>
        <param argument="--min_MSMS_peaks" type="integer" min="0" value="0"
               label="Minimum number of MS/MS peaks"/>

        <conditional name="adducts_cond">
            <param name="adducts_selector" type="select" label="How to handle adducts"
                   help="Choose whether to include a suspect list">
                <option value="msp" selected="True">Use adducts defined in MSP file</option>
                <option value="select" >Select from list of adducts</option>
                <option value="all" >Use pre-selected adducts for either pos or neg ionisation mode</option>
            </param>
            <when value="msp">
            </when>
            <when value="select">
                <param argument="--adducts" label="Select adducts"
                       type="select" help="" multiple="true" display="checkboxes">
                    <option value="[M+H]+" selected="True">[M+H]+ 1.007276</option>
                    <option value="[M+NH4]+">[M+NH4]+ 18.034374</option>
                    <option value="[M+Na]+">[M+Na]+ 22.989218</option>
                    <option value="[M+K]+">[M+K]+ 38.963158</option>
                    <option value="[M+CH3OH+H]+">[M+CH3OH+H]+ 33.033489</option>
                    <option value="[M+ACN+H]+">[M+ACN+H]+ 42.033823</option>
                    <option value="[M+ACN+Na]+">[M+ACN+Na]+ 64.015765</option>
                    <option value="[M+2ACN+H]+">[M+2ACN+H]+ 83.06037</option>
                    <option value="[M-H]-" >[M-H]- -1.007276</option>
                    <option value="[M+Cl]-">[M+Cl]- 34.969402</option>
                    <option value="[M+HCOO]-">[M+HCOO]- 44.99819</option>
                    <option value="[M+CH3COO]-">[M+CH3COO]- 59.01385</option>
                </param>
            </when>
            <when value="all">
            </when>
        </conditional>

        <param argument="--rank_filter" type="integer" value="0"
               label="Only show the top ranked annotations less than or equal
                      to this value (default to show all annotations)"/>

        <param argument="--confidence_filter" type="float" value="0"
               label="Only show annotations greater than or or equal
                      to this value (default to show all annotations)"/>

    </inputs>
    <outputs>
        <data name="canopus_results" format="tsv" label="${tool.name} on ${on_string}: CANOPUS"
              from_work_dir="canopus_all_summary.tsv"/>
        <data name="annotation_results" format="tsv" label="${tool.name} on ${on_string}: Annotations"
              from_work_dir="annotations_all_summary.tsv"/>
    </outputs>
    <tests>
        <test>
            <!-- Test "massbank" style data format  -->
            <param name="input" value="ML006801.txt"  ftype="msp"/>
            <output name="annotation_results" file="annotation_ML006801.tsv"/>
            <output name="canopus_results" file="canopus_ML006801.tsv"/>
        </test>
        <test>
            <!-- Test "generic format" style data format  -->
            <param name="input" value="generic.msp" ftype="msp"/>
            <output name="annotation_results" file="annotation_generic.tsv"/>
            <output name="canopus_results" file="canopus_generic.tsv"/>
        </test>
        <test>
            <!-- Test for glucose (qtof) MassBank data format  -->
            <param name="input" value="RP022611.txt" ftype="msp"/>
            <param name="profile" value="qtof"/>
            <output name="annotation_results" file="annotation_RP022611_result.tsv"/>
            <output name="canopus_results" file="canopus_RP022611_result.tsv"/>
        </test>
        <test>
            <!-- Test for glucose (q-exactive) GNPS, MoNA data format  (and test canopus)-->
            <param name="input" value="CCMSLIB00000578155.msp" ftype="msp"/>
            <param name="profile" value="orbitrap"/>
            <output name="annotation_results" file="annotation_CCMSLIB00000578155_result.tsv"/>
            <output name="canopus_results" file="canopus_CCMSLIB00000578155_result.tsv"/>
        </test>
        <test>
            <!-- Test invalid adduct  -->
            <param name="input" value="invalid_adduct.msp" ftype="msp"/>
            <output name="annotation_results" file="annotation_invalid_adduct_result.tsv"/>
            <output name="canopus_results" file="canopus_invalid_adduct_result.tsv"/>
        </test>
        <test>
            <!-- Test all adducts  -->
            <param name="input" value="RP022611.txt" ftype="msp"/>
            <param name="profile" value="qtof"/>
            <param name="polarity" value="negative"/>
            <conditional name="adducts_cond">
                <param name="adducts_selector" value="all"/>
            </conditional>
            <output name="annotation_results" file="annotation_RP022611_result_all_adducts.tsv"/>
            <output name="canopus_results" file="canopus_RP022611_result_all_adducts.tsv"/>
        </test>
        <test>
            <!-- Test confidence filter  -->
            <param name="input" value="generic.msp" ftype="msp"/>
            <param name="confidence_filter" value="0.7"/>
            <output name="annotation_results" file="cf_annotation_generic_msp_result.tsv"/>
            <output name="canopus_results" file="cf_canopus_generic_msp_result.tsv"/>
        </test>
    </tests>
    <help>
----------------
SIRIUS-FingerID
----------------

Description
-----------

SIRIUS is a java-based software framework for discovering a landscape of
de-novo identification of metabolites using single and tandem mass
spectrometry. SIRIUS uses isotope pattern analysis for detecting the
molecular formula and further analyses the fragmentation pattern of a
compound using fragmentation trees. Website:
https://bio.informatik.uni-jena.de/software/sirius/


Parameters
----------

**\1. MSP file**

MSP file created using *Create MSP* tool

**\2. Select SIRIUS-CSI:FingerID Databases**

The following databases are available:

* PubChem

* HMDB

* KEGG

* KNApSAcK

* BioCyc

* Bio (default in CLI)

* All

**\3. Mass deviation of the fragment peaks in ppm**

Allowed mass deviation of the fragment peaks.

**\4. The maximum number of candidates in the output**

Set the top X candidates to return.

**\5. Ion mode**

* Positive

* Negative

**\6. Analysis used**

* Orbitrap

* qTOF

* FT-ICR

If you want to analyze spectra measured with Orbitrap or FT-ICR, you should
specify the appropriate analysis profile. A profile is a set of configuration
options and scoring functions SIRIUS 3 will use for its analysis. For example,
the Orbitrap and FT-ICR profiles have tighter constraints for the allowed mass
deviation but do not rely so much on the intensity of isotope peaks.


Developers and contributors
---------------------------

- **Jordi Capellades (j.capellades.to@gmail.com) - Universitat Rovira i Virgili (SP)**
- **Thomas N Lawson (t.n.lawson@bham.ac.uk) - University of Birmingham (UK)**
- **Simon Bray (sbray@informatik.uni-freiburg.de) - University of Freiburg (Germany)**
- **Ralf Weber (r.j.weber@bham.ac.uk) - University of Birmingham (UK)**

    </help>
    <citations>
        <citation type="doi">10.1073/pnas.1509788112</citation>
        <citation type="doi">10.1093/bioinformatics/btu275</citation>
    </citations>
</tool>