view FalseDiscoveryRate.xml @ 16:4138acdeedfb draft default tip

planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/openms commit 5c080b1e2b99f1c88f4557e9fec8c45c9d23b906
author galaxyp
date Fri, 14 Jun 2024 21:39:03 +0000
parents 6ccbf9a2072c
children
line wrap: on
line source

<!--This is a configuration file for the integration of a tools into Galaxy (https://galaxyproject.org/). This file was automatically generated using CTDConverter.-->
<!--Proposed Tool Section: [Identification Processing]-->
<tool id="FalseDiscoveryRate" name="FalseDiscoveryRate" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="21.05">
  <description>Estimates the false discovery rate on peptide and protein level using decoy searches</description>
  <macros>
    <token name="@EXECUTABLE@">FalseDiscoveryRate</token>
    <import>macros.xml</import>
  </macros>
  <expand macro="requirements"/>
  <expand macro="stdio"/>
  <command detect_errors="exit_code"><![CDATA[@QUOTE_FOO@
@EXT_FOO@
#import re

## Preprocessing
mkdir in &&
cp '$in' 'in/${re.sub("[^\w\-_]", "_", $in.element_identifier)}.$gxy2omsext($in.ext)' &&
mkdir out &&

## Main program call

set -o pipefail &&
@EXECUTABLE@ -write_ctd ./ &&
python3 '$__tool_directory__/fill_ctd.py' '@EXECUTABLE@.ctd' '$args_json' '$hardcoded_json' &&
@EXECUTABLE@ -ini @EXECUTABLE@.ctd
-in
'in/${re.sub("[^\w\-_]", "_", $in.element_identifier)}.$gxy2omsext($in.ext)'
-out
'out/output.${gxy2omsext("idxml")}'

## Postprocessing
&& mv 'out/output.${gxy2omsext("idxml")}' '$out'
#if "ctd_out_FLAG" in $OPTIONAL_OUTPUTS
  && mv '@EXECUTABLE@.ctd' '$ctd_out'
#end if]]></command>
  <configfiles>
    <inputs name="args_json" data_style="paths"/>
    <configfile name="hardcoded_json"><![CDATA[{"log": "log.txt", "threads": "\${GALAXY_SLOTS:-1}", "no_progress": true}]]></configfile>
  </configfiles>
  <inputs>
    <param argument="-in" type="data" format="idxml" label="Identifications from searching a target-decoy database" help=" select idxml data sets(s)"/>
    <param argument="-PSM" type="boolean" truevalue="true" falsevalue="false" checked="true" label="Perform FDR calculation on PSM level" help=""/>
    <param argument="-peptide" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Perform FDR calculation on peptide level and annotates it as meta value" help="(Note: if set, also calculates FDR/q-value on PSM level.)"/>
    <param argument="-protein" type="boolean" truevalue="true" falsevalue="false" checked="true" label="Perform FDR calculation on protein level" help=""/>
    <section name="FDR" title="FDR control" help="" expanded="false">
      <param name="PSM" argument="-FDR:PSM" type="float" min="0.0" max="1.0" value="1.0" label="Filter PSMs based on q-value" help="(e.g., 0.05 = 5% FDR, disabled for 1)"/>
      <param name="protein" argument="-FDR:protein" type="float" min="0.0" max="1.0" value="1.0" label="Filter proteins based on q-value" help="(e.g., 0.05 = 5% FDR, disabled for 1)"/>
      <section name="cleanup" title="Cleanup references after FDR control" help="" expanded="false">
        <param name="remove_proteins_without_psms" argument="-FDR:cleanup:remove_proteins_without_psms" type="boolean" truevalue="true" falsevalue="false" checked="true" label="Remove proteins without PSMs (due to being decoy or below PSM FDR threshold)" help=""/>
        <param name="remove_psms_without_proteins" argument="-FDR:cleanup:remove_psms_without_proteins" type="boolean" truevalue="true" falsevalue="false" checked="true" label="Remove PSMs without proteins (due to being decoy or below protein FDR threshold)" help=""/>
        <param name="remove_spectra_without_psms" argument="-FDR:cleanup:remove_spectra_without_psms" type="boolean" truevalue="true" falsevalue="false" checked="true" label="Remove spectra without PSMs (due to being decoy or below protein FDR threshold)" help="Caution: if remove_psms_without_proteins is false, protein level filtering does not propagate"/>
      </section>
    </section>
    <section name="algorithm" title="Parameter section for the FDR calculation algorithm" help="" expanded="false">
      <param name="no_qvalues" argument="-algorithm:no_qvalues" type="boolean" truevalue="true" falsevalue="false" checked="false" label="If 'true' strict FDRs will be calculated instead of q-values (the default)" help=""/>
      <param name="use_all_hits" argument="-algorithm:use_all_hits" type="boolean" truevalue="true" falsevalue="false" checked="false" label="If 'true' not only the first hit, but all are used (peptides only)" help=""/>
      <param name="split_charge_variants" argument="-algorithm:split_charge_variants" type="boolean" truevalue="true" falsevalue="false" checked="false" label="If 'true' charge variants are treated separately (for peptides of combined target/decoy searches only)" help=""/>
      <param name="treat_runs_separately" argument="-algorithm:treat_runs_separately" type="boolean" truevalue="true" falsevalue="false" checked="false" label="If 'true' different search runs are treated separately (for peptides of combined target/decoy searches only)" help=""/>
      <param name="add_decoy_peptides" argument="-algorithm:add_decoy_peptides" type="boolean" truevalue="true" falsevalue="false" checked="false" label="If 'true' decoy peptides will be written to output file, too" help="The q-value is set to the closest target score"/>
      <param name="add_decoy_proteins" argument="-algorithm:add_decoy_proteins" type="boolean" truevalue="true" falsevalue="false" checked="false" label="If 'true' decoy proteins will be written to output file, too" help="The q-value is set to the closest target score"/>
      <param name="conservative" argument="-algorithm:conservative" type="boolean" truevalue="true" falsevalue="false" checked="true" label="If 'true' (D+1)/T instead of (D+1)/(T+D) is used as a formula" help=""/>
    </section>
    <expand macro="adv_opts_macro">
      <param argument="-force" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Overrides tool-specific checks" help=""/>
      <param argument="-test" type="hidden" value="False" label="Enables the test mode (needed for internal use only)" help="" optional="true">
        <expand macro="list_string_san" name="test"/>
      </param>
    </expand>
    <param name="OPTIONAL_OUTPUTS" type="select" optional="true" multiple="true" label="Optional outputs">
      <option value="ctd_out_FLAG">Output used ctd (ini) configuration file</option>
    </param>
  </inputs>
  <outputs>
    <data name="out" label="${tool.name} on ${on_string}: out" format="idxml"/>
    <data name="ctd_out" format="xml" label="${tool.name} on ${on_string}: ctd">
      <filter>OPTIONAL_OUTPUTS is not None and "ctd_out_FLAG" in OPTIONAL_OUTPUTS</filter>
    </data>
  </outputs>
  <tests>
    <!-- TOPP_FalseDiscoveryRate_1 -->
    <test expect_num_outputs="2">
      <section name="adv_opts">
        <param name="force" value="false"/>
        <param name="test" value="true"/>
      </section>
      <param name="in" value="FalseDiscoveryRate_OMSSA.idXML"/>
      <output name="out" value="FalseDiscoveryRate_output_1.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
      <param name="PSM" value="true"/>
      <param name="peptide" value="false"/>
      <param name="protein" value="false"/>
      <section name="FDR">
        <param name="PSM" value="1.0"/>
        <param name="protein" value="1.0"/>
        <section name="cleanup">
          <param name="remove_proteins_without_psms" value="true"/>
          <param name="remove_psms_without_proteins" value="true"/>
          <param name="remove_spectra_without_psms" value="true"/>
        </section>
      </section>
      <section name="algorithm">
        <param name="no_qvalues" value="false"/>
        <param name="use_all_hits" value="false"/>
        <param name="split_charge_variants" value="false"/>
        <param name="treat_runs_separately" value="false"/>
        <param name="add_decoy_peptides" value="false"/>
        <param name="add_decoy_proteins" value="false"/>
        <param name="conservative" value="true"/>
      </section>
      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>
      <output name="ctd_out" ftype="xml">
        <assert_contents>
          <is_valid_xml/>
        </assert_contents>
      </output>
      <assert_stdout>
        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
      </assert_stdout>
    </test>
    <!-- TOPP_FalseDiscoveryRate_2 -->
    <test expect_num_outputs="2">
      <section name="adv_opts">
        <param name="force" value="false"/>
        <param name="test" value="true"/>
      </section>
      <param name="in" value="FalseDiscoveryRate_OMSSA.idXML"/>
      <output name="out" value="FalseDiscoveryRate_output_2.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
      <param name="PSM" value="true"/>
      <param name="peptide" value="false"/>
      <param name="protein" value="false"/>
      <section name="FDR">
        <param name="PSM" value="1.0"/>
        <param name="protein" value="1.0"/>
        <section name="cleanup">
          <param name="remove_proteins_without_psms" value="true"/>
          <param name="remove_psms_without_proteins" value="true"/>
          <param name="remove_spectra_without_psms" value="true"/>
        </section>
      </section>
      <section name="algorithm">
        <param name="no_qvalues" value="false"/>
        <param name="use_all_hits" value="false"/>
        <param name="split_charge_variants" value="false"/>
        <param name="treat_runs_separately" value="true"/>
        <param name="add_decoy_peptides" value="false"/>
        <param name="add_decoy_proteins" value="false"/>
        <param name="conservative" value="true"/>
      </section>
      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>
      <output name="ctd_out" ftype="xml">
        <assert_contents>
          <is_valid_xml/>
        </assert_contents>
      </output>
      <assert_stdout>
        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
      </assert_stdout>
    </test>
    <!-- TOPP_FalseDiscoveryRate_3 -->
    <test expect_num_outputs="2">
      <section name="adv_opts">
        <param name="force" value="false"/>
        <param name="test" value="true"/>
      </section>
      <param name="in" value="FalseDiscoveryRate_OMSSA.idXML"/>
      <output name="out" value="FalseDiscoveryRate_output_3.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
      <param name="PSM" value="true"/>
      <param name="peptide" value="false"/>
      <param name="protein" value="false"/>
      <section name="FDR">
        <param name="PSM" value="1.0"/>
        <param name="protein" value="1.0"/>
        <section name="cleanup">
          <param name="remove_proteins_without_psms" value="true"/>
          <param name="remove_psms_without_proteins" value="true"/>
          <param name="remove_spectra_without_psms" value="true"/>
        </section>
      </section>
      <section name="algorithm">
        <param name="no_qvalues" value="false"/>
        <param name="use_all_hits" value="false"/>
        <param name="split_charge_variants" value="true"/>
        <param name="treat_runs_separately" value="false"/>
        <param name="add_decoy_peptides" value="false"/>
        <param name="add_decoy_proteins" value="false"/>
        <param name="conservative" value="true"/>
      </section>
      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>
      <output name="ctd_out" ftype="xml">
        <assert_contents>
          <is_valid_xml/>
        </assert_contents>
      </output>
      <assert_stdout>
        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
      </assert_stdout>
    </test>
    <!-- TOPP_FalseDiscoveryRate_4 -->
    <test expect_num_outputs="2">
      <section name="adv_opts">
        <param name="force" value="false"/>
        <param name="test" value="true"/>
      </section>
      <param name="in" value="FalseDiscoveryRate_OMSSA_4.idXML"/>
      <output name="out" value="FalseDiscoveryRate_output_4.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
      <param name="PSM" value="true"/>
      <param name="peptide" value="false"/>
      <param name="protein" value="false"/>
      <section name="FDR">
        <param name="PSM" value="1.0"/>
        <param name="protein" value="1.0"/>
        <section name="cleanup">
          <param name="remove_proteins_without_psms" value="true"/>
          <param name="remove_psms_without_proteins" value="true"/>
          <param name="remove_spectra_without_psms" value="true"/>
        </section>
      </section>
      <section name="algorithm">
        <param name="no_qvalues" value="false"/>
        <param name="use_all_hits" value="false"/>
        <param name="split_charge_variants" value="true"/>
        <param name="treat_runs_separately" value="false"/>
        <param name="add_decoy_peptides" value="false"/>
        <param name="add_decoy_proteins" value="false"/>
        <param name="conservative" value="true"/>
      </section>
      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>
      <output name="ctd_out" ftype="xml">
        <assert_contents>
          <is_valid_xml/>
        </assert_contents>
      </output>
      <assert_stdout>
        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
      </assert_stdout>
    </test>
    <!-- TOPP_FalseDiscoveryRate_5 -->
    <test expect_num_outputs="2">
      <section name="adv_opts">
        <param name="force" value="true"/>
        <param name="test" value="true"/>
      </section>
      <param name="in" value="FalseDiscoveryRate_5_input.idXML"/>
      <output name="out" value="FalseDiscoveryRate_5_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
      <param name="PSM" value="false"/>
      <param name="peptide" value="false"/>
      <param name="protein" value="true"/>
      <section name="FDR">
        <param name="PSM" value="1.0"/>
        <param name="protein" value="1.0"/>
        <section name="cleanup">
          <param name="remove_proteins_without_psms" value="true"/>
          <param name="remove_psms_without_proteins" value="true"/>
          <param name="remove_spectra_without_psms" value="true"/>
        </section>
      </section>
      <section name="algorithm">
        <param name="no_qvalues" value="false"/>
        <param name="use_all_hits" value="false"/>
        <param name="split_charge_variants" value="false"/>
        <param name="treat_runs_separately" value="false"/>
        <param name="add_decoy_peptides" value="false"/>
        <param name="add_decoy_proteins" value="true"/>
        <param name="conservative" value="true"/>
      </section>
      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>
      <output name="ctd_out" ftype="xml">
        <assert_contents>
          <is_valid_xml/>
        </assert_contents>
      </output>
      <assert_stdout>
        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
      </assert_stdout>
    </test>
    <!-- TOPP_FalseDiscoveryRate_6 -->
    <test expect_num_outputs="2">
      <section name="adv_opts">
        <param name="force" value="false"/>
        <param name="test" value="true"/>
      </section>
      <param name="in" value="FalseDiscoveryRate_6_input.idXML"/>
      <output name="out" value="FalseDiscoveryRate_6_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
      <param name="PSM" value="true"/>
      <param name="peptide" value="false"/>
      <param name="protein" value="false"/>
      <section name="FDR">
        <param name="PSM" value="0.05"/>
        <param name="protein" value="1.0"/>
        <section name="cleanup">
          <param name="remove_proteins_without_psms" value="true"/>
          <param name="remove_psms_without_proteins" value="true"/>
          <param name="remove_spectra_without_psms" value="true"/>
        </section>
      </section>
      <section name="algorithm">
        <param name="no_qvalues" value="false"/>
        <param name="use_all_hits" value="false"/>
        <param name="split_charge_variants" value="false"/>
        <param name="treat_runs_separately" value="false"/>
        <param name="add_decoy_peptides" value="false"/>
        <param name="add_decoy_proteins" value="false"/>
        <param name="conservative" value="true"/>
      </section>
      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>
      <output name="ctd_out" ftype="xml">
        <assert_contents>
          <is_valid_xml/>
        </assert_contents>
      </output>
      <assert_stdout>
        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
      </assert_stdout>
    </test>
    <!-- TOPP_FalseDiscoveryRate_7 -->
    <test expect_num_outputs="2">
      <section name="adv_opts">
        <param name="force" value="true"/>
        <param name="test" value="true"/>
      </section>
      <param name="in" value="FalseDiscoveryRate_7_input.idXML"/>
      <output name="out" value="FalseDiscoveryRate_7_output.idXML" compare="sim_size" delta_frac="0.7" ftype="idxml"/>
      <param name="PSM" value="false"/>
      <param name="peptide" value="false"/>
      <param name="protein" value="true"/>
      <section name="FDR">
        <param name="PSM" value="1.0"/>
        <param name="protein" value="0.3"/>
        <section name="cleanup">
          <param name="remove_proteins_without_psms" value="true"/>
          <param name="remove_psms_without_proteins" value="true"/>
          <param name="remove_spectra_without_psms" value="true"/>
        </section>
      </section>
      <section name="algorithm">
        <param name="no_qvalues" value="false"/>
        <param name="use_all_hits" value="false"/>
        <param name="split_charge_variants" value="false"/>
        <param name="treat_runs_separately" value="false"/>
        <param name="add_decoy_peptides" value="false"/>
        <param name="add_decoy_proteins" value="false"/>
        <param name="conservative" value="true"/>
      </section>
      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>
      <output name="ctd_out" ftype="xml">
        <assert_contents>
          <is_valid_xml/>
        </assert_contents>
      </output>
      <assert_stdout>
        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
      </assert_stdout>
    </test>
  </tests>
  <help><![CDATA[Estimates the false discovery rate on peptide and protein level using decoy searches.


For more information, visit https://openms.de/doxygen/release/3.1.0/html/TOPP_FalseDiscoveryRate.html]]></help>
  <expand macro="references"/>
</tool>