view PeakPickerIterative.xml @ 14:025261d4bd60 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:32:08 +0000
parents 9547baeca6a1
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: [Spectrum processing: Centroiding]-->
<tool id="PeakPickerIterative" name="PeakPickerIterative" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="21.05">
  <description>Finds mass spectrometric peaks in profile mass spectra</description>
  <macros>
    <token name="@EXECUTABLE@">PeakPickerIterative</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("mzml")}'

## Postprocessing
&& mv 'out/output.${gxy2omsext("mzml")}' '$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="mzml" label="input file" help=" select mzml data sets(s)"/>
    <section name="algorithm" title="Algorithm parameters section" help="" expanded="false">
      <param name="signal_to_noise_" argument="-algorithm:signal_to_noise_" type="float" value="1.0" label="Signal to noise value, each peak is required to be above this value (turn off by setting it to 0.0)" help=""/>
      <param name="peak_width" argument="-algorithm:peak_width" type="float" value="0.0" label="Expected peak width half width in Dalton - peaks will be extended until this half width is reached (even if the intensitity is increasing)" help="In conjunction with check_width_internally it will also be used to remove peaks whose spacing is larger than this value"/>
      <param name="spacing_difference" argument="-algorithm:spacing_difference" type="float" value="1.5" label="Difference between peaks in multiples of the minimal difference to continue" help="The higher this value is set, the further apart peaks are allowed to be to still extend a peak. E.g. if the value is set to 1.5 and in a current peak the minimal spacing between peaks is 10 mDa, then only peaks at most 15 mDa apart will be added to the peak"/>
      <param name="sn_bin_count_" argument="-algorithm:sn_bin_count_" type="integer" value="30" label="Bin count for the Signal to Noise estimation" help=""/>
      <param name="nr_iterations_" argument="-algorithm:nr_iterations_" type="integer" min="1" value="5" label="Nr of iterations to perform (how many times the peaks are re-centered)" help=""/>
      <param name="sn_win_len_" argument="-algorithm:sn_win_len_" type="float" value="20.0" label="Window length for the Signal to Noise estimation" help=""/>
      <param name="check_width_internally" argument="-algorithm:check_width_internally" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Delete peaks where the spacing is larger than the peak width (should be set to true to avoid artefacts)" help=""/>
      <param name="ms1_only" argument="-algorithm:ms1_only" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Only do MS1" help=""/>
      <param name="clear_meta_data" argument="-algorithm:clear_meta_data" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Delete meta data about peak width" 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="mzml"/>
    <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_PeakPickerIterative_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="PeakPickerIterative_1_input.mzML"/>
      <output name="out" value="PeakPickerIterative_1_output.mzML" compare="sim_size" delta_frac="0.7" ftype="mzml"/>
      <section name="algorithm">
        <param name="signal_to_noise_" value="1.0"/>
        <param name="peak_width" value="0.04"/>
        <param name="spacing_difference" value="1.5"/>
        <param name="sn_bin_count_" value="30"/>
        <param name="nr_iterations_" value="5"/>
        <param name="sn_win_len_" value="20.0"/>
        <param name="check_width_internally" value="false"/>
        <param name="ms1_only" value="false"/>
        <param name="clear_meta_data" value="false"/>
      </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_PeakPickerIterative_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="PeakPickerIterative_2_input.mzML"/>
      <output name="out" value="PeakPickerIterative_2_output.mzML" compare="sim_size" delta_frac="0.7" ftype="mzml"/>
      <section name="algorithm">
        <param name="signal_to_noise_" value="0.0"/>
        <param name="peak_width" value="0.04"/>
        <param name="spacing_difference" value="2.5"/>
        <param name="sn_bin_count_" value="30"/>
        <param name="nr_iterations_" value="5"/>
        <param name="sn_win_len_" value="20.0"/>
        <param name="check_width_internally" value="true"/>
        <param name="ms1_only" value="false"/>
        <param name="clear_meta_data" value="false"/>
      </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[Finds mass spectrometric peaks in profile mass spectra.


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