view FeatureLinkerUnlabeledQT.xml @ 16:8394bcb2b0ca 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:36:52 +0000
parents aa8658367608
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: [Feature Linking]-->
<tool id="FeatureLinkerUnlabeledQT" name="FeatureLinkerUnlabeledQT" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="21.05">
  <description>Groups corresponding features from multiple maps</description>
  <macros>
    <token name="@EXECUTABLE@">FeatureLinkerUnlabeledQT</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_cond.in &&
#if $in_cond.in_select == "no"
mkdir ${' '.join(["'in_cond.in/%s'" % (i) for i, f in enumerate($in_cond.in) if f])} && 
${' '.join(["cp '%s' 'in_cond.in/%s/%s.%s' && " % (f, i, re.sub('[^\w\-_]', '_', f.element_identifier), $gxy2omsext(f.ext)) for i, f in enumerate($in_cond.in) if f])}
#else
cp '$in_cond.in' 'in_cond.in/${re.sub("[^\w\-_]", "_", $in_cond.in.element_identifier)}.$gxy2omsext($in_cond.in.ext)' &&
#end if
mkdir out &&
#if $design:
  mkdir design &&
  cp '$design' 'design/${re.sub("[^\w\-_]", "_", $design.element_identifier)}.$gxy2omsext($design.ext)' &&
#end if

## 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
#if $in_cond.in_select == "no"
${' '.join(["'in_cond.in/%s/%s.%s'"%(i, re.sub('[^\w\-_]', '_', f.element_identifier), $gxy2omsext(f.ext)) for i, f in enumerate($in_cond.in) if f])}
#else
'in_cond.in/${re.sub("[^\w\-_]", "_", $in_cond.in.element_identifier)}.$gxy2omsext($in_cond.in.ext)'
#end if
-out
'out/output.${gxy2omsext("consensusxml")}'
#if $design:
  -design
  'design/${re.sub("[^\w\-_]", "_", $design.element_identifier)}.$gxy2omsext($design.ext)'
#end if

## Postprocessing
&& mv 'out/output.${gxy2omsext("consensusxml")}' '$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>
    <conditional name="in_cond">
      <param name="in_select" type="select" label="Run tool in batch mode for -in">
        <option value="no">No: process all datasets jointly</option>
        <option value="yes">Yes: process each dataset in an independent job</option>
      </param>
      <when value="no">
        <param argument="-in" type="data" format="consensusxml,featurexml" multiple="true" label="input files separated by blanks" help=" select consensusxml,featurexml data sets(s)"/>
      </when>
      <when value="yes">
        <param argument="-in" type="data" format="consensusxml,featurexml" label="input files separated by blanks" help=" select consensusxml,featurexml data sets(s)"/>
      </when>
    </conditional>
    <param argument="-design" type="data" format="tabular" optional="true" label="input file containing the experimental design" help=" select tabular data sets(s)"/>
    <param argument="-keep_subelements" type="boolean" truevalue="true" falsevalue="false" checked="false" label="For consensusXML input only: If set, the sub-features of the inputs are transferred to the output" help=""/>
    <section name="algorithm" title="Algorithm parameters section" help="" expanded="false">
      <param name="use_identifications" argument="-algorithm:use_identifications" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Never link features that are annotated with different peptides (only the best hit per peptide identification is taken into account)" help=""/>
      <param name="nr_partitions" argument="-algorithm:nr_partitions" type="integer" min="1" value="100" label="How many partitions in m/z space should be used for the algorithm (more partitions means faster runtime and more memory efficient execution)" help=""/>
      <param name="min_nr_diffs_per_bin" argument="-algorithm:min_nr_diffs_per_bin" type="integer" min="5" value="50" label="If IDs are used: How many differences from matching IDs should be used to calculate a linking tolerance for unIDed features in an RT region" help="RT regions will be extended until that number is reached"/>
      <param name="min_IDscore_forTolCalc" argument="-algorithm:min_IDscore_forTolCalc" type="float" value="1.0" label="If IDs are used: What is the minimum score of an ID to assume a reliable match for tolerance calculation" help="Check your current score type!"/>
      <param name="noID_penalty" argument="-algorithm:noID_penalty" type="float" min="0.0" max="1.0" value="0.0" label="If IDs are used: For the normalized distances, how high should the penalty for missing IDs be" help="0 = no bias, 1 = IDs inside the max tolerances always preferred (even if much further away)"/>
      <param name="ignore_charge" argument="-algorithm:ignore_charge" type="boolean" truevalue="true" falsevalue="false" checked="false" label="false [default]: pairing requires equal charge state (or at least one unknown charge '0'); true: Pairing irrespective of charge state" help=""/>
      <param name="ignore_adduct" argument="-algorithm:ignore_adduct" type="boolean" truevalue="true" falsevalue="false" checked="true" label="true [default]: pairing requires equal adducts (or at least one without adduct annotation); true: Pairing irrespective of adducts" help=""/>
      <section name="distance_RT" title="Distance component based on RT differences" help="" expanded="false">
        <param name="max_difference" argument="-algorithm:distance_RT:max_difference" type="float" min="0.0" value="100.0" label="Never pair features with a larger RT distance (in seconds)" help=""/>
        <param name="exponent" argument="-algorithm:distance_RT:exponent" type="float" min="0.0" value="1.0" label="Normalized RT differences ([0-1], relative to 'max_difference') are raised to this power (using 1 or 2 will be fast, everything else is REALLY slow)" help=""/>
        <param name="weight" argument="-algorithm:distance_RT:weight" type="float" min="0.0" value="1.0" label="Final RT distances are weighted by this facto" help=""/>
      </section>
      <section name="distance_MZ" title="Distance component based on m/z differences" help="" expanded="false">
        <param name="max_difference" argument="-algorithm:distance_MZ:max_difference" type="float" min="0.0" value="0.3" label="Never pair features with larger m/z distance (unit defined by 'unit')" help=""/>
        <param name="unit" argument="-algorithm:distance_MZ:unit" type="select" label="Unit of the 'max_difference' paramete" help="">
          <option value="Da" selected="true">Da</option>
          <option value="ppm">ppm</option>
          <expand macro="list_string_san" name="unit"/>
        </param>
        <param name="exponent" argument="-algorithm:distance_MZ:exponent" type="float" min="0.0" value="2.0" label="Normalized ([0-1], relative to 'max_difference') m/z differences are raised to this power (using 1 or 2 will be fast, everything else is REALLY slow)" help=""/>
        <param name="weight" argument="-algorithm:distance_MZ:weight" type="float" min="0.0" value="1.0" label="Final m/z distances are weighted by this facto" help=""/>
      </section>
      <section name="distance_intensity" title="Distance component based on differences in relative intensity (usually relative to highest peak in the whole data set)" help="" expanded="false">
        <param name="exponent" argument="-algorithm:distance_intensity:exponent" type="float" min="0.0" value="1.0" label="Differences in relative intensity ([0-1]) are raised to this power (using 1 or 2 will be fast, everything else is REALLY slow)" help=""/>
        <param name="weight" argument="-algorithm:distance_intensity:weight" type="float" min="0.0" value="0.0" label="Final intensity distances are weighted by this facto" help=""/>
        <param name="log_transform" argument="-algorithm:distance_intensity:log_transform" type="select" label="Log-transform intensities" help="If disabled, d = |int_f2 - int_f1| / int_max. If enabled, d = |log(int_f2 + 1) - log(int_f1 + 1)| / log(int_max + 1))">
          <option value="enabled">enabled</option>
          <option value="disabled" selected="true">disabled</option>
          <expand macro="list_string_san" name="log_transform"/>
        </param>
      </section>
    </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="consensusxml"/>
    <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_FeatureLinkerUnlabeledQT_1 -->
    <test expect_num_outputs="2">
      <section name="adv_opts">
        <param name="force" value="false"/>
        <param name="test" value="true"/>
      </section>
      <conditional name="in_cond">
        <param name="in" value="FeatureLinkerUnlabeled_1_input1.featureXML,FeatureLinkerUnlabeled_1_input2.featureXML,FeatureLinkerUnlabeled_1_input3.featureXML"/>
      </conditional>
      <output name="out" value="FeatureLinkerUnlabeledQT_1_output.consensusXML" compare="sim_size" delta_frac="0.7" ftype="consensusxml"/>
      <param name="keep_subelements" value="false"/>
      <section name="algorithm">
        <param name="use_identifications" value="false"/>
        <param name="nr_partitions" value="100"/>
        <param name="min_nr_diffs_per_bin" value="50"/>
        <param name="min_IDscore_forTolCalc" value="1.0"/>
        <param name="noID_penalty" value="0.0"/>
        <param name="ignore_charge" value="false"/>
        <param name="ignore_adduct" value="true"/>
        <section name="distance_RT">
          <param name="max_difference" value="100.0"/>
          <param name="exponent" value="1.0"/>
          <param name="weight" value="1.0"/>
        </section>
        <section name="distance_MZ">
          <param name="max_difference" value="0.3"/>
          <param name="unit" value="Da"/>
          <param name="exponent" value="2.0"/>
          <param name="weight" value="1.0"/>
        </section>
        <section name="distance_intensity">
          <param name="exponent" value="1.0"/>
          <param name="weight" value="0.0"/>
          <param name="log_transform" value="disabled"/>
        </section>
      </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_FeatureLinkerUnlabeledQT_2 -->
    <test expect_num_outputs="2">
      <section name="adv_opts">
        <param name="force" value="false"/>
        <param name="test" value="true"/>
      </section>
      <conditional name="in_cond">
        <param name="in" value="FeatureLinkerUnlabeledQT_1_output_0.consensusXML,FeatureLinkerUnlabeledQT_1_output_1.consensusXML"/>
      </conditional>
      <output name="out" value="FeatureLinkerUnlabeledQT_2_output.consensusXML" compare="sim_size" delta_frac="0.7" ftype="consensusxml"/>
      <param name="keep_subelements" value="true"/>
      <section name="algorithm">
        <param name="use_identifications" value="false"/>
        <param name="nr_partitions" value="100"/>
        <param name="min_nr_diffs_per_bin" value="50"/>
        <param name="min_IDscore_forTolCalc" value="1.0"/>
        <param name="noID_penalty" value="0.0"/>
        <param name="ignore_charge" value="false"/>
        <param name="ignore_adduct" value="true"/>
        <section name="distance_RT">
          <param name="max_difference" value="100.0"/>
          <param name="exponent" value="1.0"/>
          <param name="weight" value="1.0"/>
        </section>
        <section name="distance_MZ">
          <param name="max_difference" value="0.3"/>
          <param name="unit" value="Da"/>
          <param name="exponent" value="2.0"/>
          <param name="weight" value="1.0"/>
        </section>
        <section name="distance_intensity">
          <param name="exponent" value="1.0"/>
          <param name="weight" value="0.0"/>
          <param name="log_transform" value="disabled"/>
        </section>
      </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_FeatureLinkerUnlabeledQT_3 -->
    <test expect_num_outputs="2">
      <section name="adv_opts">
        <param name="force" value="false"/>
        <param name="test" value="true"/>
      </section>
      <conditional name="in_cond">
        <param name="in" value="FeatureLinkerUnlabeledQT_3_input1.featureXML,FeatureLinkerUnlabeledQT_3_input2.featureXML"/>
      </conditional>
      <output name="out" value="FeatureLinkerUnlabeledQT_3_output.consensusXML" compare="sim_size" delta_frac="0.7" ftype="consensusxml"/>
      <param name="keep_subelements" value="false"/>
      <section name="algorithm">
        <param name="use_identifications" value="false"/>
        <param name="nr_partitions" value="99999"/>
        <param name="min_nr_diffs_per_bin" value="50"/>
        <param name="min_IDscore_forTolCalc" value="1.0"/>
        <param name="noID_penalty" value="0.0"/>
        <param name="ignore_charge" value="false"/>
        <param name="ignore_adduct" value="true"/>
        <section name="distance_RT">
          <param name="max_difference" value="100.0"/>
          <param name="exponent" value="1.0"/>
          <param name="weight" value="1.0"/>
        </section>
        <section name="distance_MZ">
          <param name="max_difference" value="0.3"/>
          <param name="unit" value="Da"/>
          <param name="exponent" value="2.0"/>
          <param name="weight" value="1.0"/>
        </section>
        <section name="distance_intensity">
          <param name="exponent" value="1.0"/>
          <param name="weight" value="0.0"/>
          <param name="log_transform" value="disabled"/>
        </section>
      </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_FeatureLinkerUnlabeledQT_4 -->
    <test expect_num_outputs="2">
      <section name="adv_opts">
        <param name="force" value="false"/>
        <param name="test" value="true"/>
      </section>
      <conditional name="in_cond">
        <param name="in" value="FeatureLinkerUnlabeled_1_input1.featureXML,FeatureLinkerUnlabeled_1_input2.featureXML,FeatureLinkerUnlabeled_1_input3.featureXML"/>
      </conditional>
      <output name="out" value="FeatureLinkerUnlabeledQT_4_output.consensusXML" compare="sim_size" delta_frac="0.7" ftype="consensusxml"/>
      <param name="keep_subelements" value="false"/>
      <section name="algorithm">
        <param name="use_identifications" value="true"/>
        <param name="nr_partitions" value="100"/>
        <param name="min_nr_diffs_per_bin" value="50"/>
        <param name="min_IDscore_forTolCalc" value="1.0"/>
        <param name="noID_penalty" value="0.0"/>
        <param name="ignore_charge" value="false"/>
        <param name="ignore_adduct" value="true"/>
        <section name="distance_RT">
          <param name="max_difference" value="100.0"/>
          <param name="exponent" value="1.0"/>
          <param name="weight" value="1.0"/>
        </section>
        <section name="distance_MZ">
          <param name="max_difference" value="0.3"/>
          <param name="unit" value="Da"/>
          <param name="exponent" value="2.0"/>
          <param name="weight" value="1.0"/>
        </section>
        <section name="distance_intensity">
          <param name="exponent" value="1.0"/>
          <param name="weight" value="0.0"/>
          <param name="log_transform" value="disabled"/>
        </section>
      </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_FeatureLinkerUnlabeledQT_5 -->
    <test expect_num_outputs="2">
      <section name="adv_opts">
        <param name="force" value="false"/>
        <param name="test" value="true"/>
      </section>
      <conditional name="in_cond">
        <param name="in" value="FeatureLinkerUnlabeledQT_5_input1.featureXML,FeatureLinkerUnlabeledQT_5_input2.featureXML,FeatureLinkerUnlabeledQT_5_input3.featureXML"/>
      </conditional>
      <output name="out" value="FeatureLinkerUnlabeledQT_5_output.consensusXML" compare="sim_size" delta_frac="0.7" ftype="consensusxml"/>
      <param name="keep_subelements" value="false"/>
      <section name="algorithm">
        <param name="use_identifications" value="false"/>
        <param name="nr_partitions" value="100"/>
        <param name="min_nr_diffs_per_bin" value="50"/>
        <param name="min_IDscore_forTolCalc" value="1.0"/>
        <param name="noID_penalty" value="0.0"/>
        <param name="ignore_charge" value="false"/>
        <param name="ignore_adduct" value="true"/>
        <section name="distance_RT">
          <param name="max_difference" value="200.0"/>
          <param name="exponent" value="1.0"/>
          <param name="weight" value="1.0"/>
        </section>
        <section name="distance_MZ">
          <param name="max_difference" value="0.3"/>
          <param name="unit" value="Da"/>
          <param name="exponent" value="2.0"/>
          <param name="weight" value="1.0"/>
        </section>
        <section name="distance_intensity">
          <param name="exponent" value="1.0"/>
          <param name="weight" value="0.0"/>
          <param name="log_transform" value="disabled"/>
        </section>
      </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_FeatureLinkerUnlabeledQT_6 -->
    <test expect_num_outputs="2">
      <section name="adv_opts">
        <param name="force" value="false"/>
        <param name="test" value="true"/>
      </section>
      <conditional name="in_cond">
        <param name="in" value="FeatureLinkerUnlabeledQT_5_input1.featureXML,FeatureLinkerUnlabeledQT_5_input2.featureXML,FeatureLinkerUnlabeledQT_5_input3.featureXML"/>
      </conditional>
      <output name="out" value="FeatureLinkerUnlabeledQT_6_output.consensusXML" compare="sim_size" delta_frac="0.7" ftype="consensusxml"/>
      <param name="keep_subelements" value="false"/>
      <section name="algorithm">
        <param name="use_identifications" value="true"/>
        <param name="nr_partitions" value="100"/>
        <param name="min_nr_diffs_per_bin" value="50"/>
        <param name="min_IDscore_forTolCalc" value="1.0"/>
        <param name="noID_penalty" value="0.0"/>
        <param name="ignore_charge" value="false"/>
        <param name="ignore_adduct" value="true"/>
        <section name="distance_RT">
          <param name="max_difference" value="200.0"/>
          <param name="exponent" value="1.0"/>
          <param name="weight" value="1.0"/>
        </section>
        <section name="distance_MZ">
          <param name="max_difference" value="0.3"/>
          <param name="unit" value="Da"/>
          <param name="exponent" value="2.0"/>
          <param name="weight" value="1.0"/>
        </section>
        <section name="distance_intensity">
          <param name="exponent" value="1.0"/>
          <param name="weight" value="0.0"/>
          <param name="log_transform" value="disabled"/>
        </section>
      </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[Groups corresponding features from multiple maps.


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