view RTModel.xml @ 12:0fc4aa40badb draft default tip

planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/openms commit 3d1e5f37fd16524a415f707772eeb7ead848c5e3
author galaxyp
date Thu, 01 Dec 2022 19:13:44 +0000
parents 654e2bf18e82
children
line wrap: on
line source

<?xml version='1.0' encoding='UTF-8'?>
<!--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: [Peptide property prediction]-->
<tool id="RTModel" name="RTModel" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="21.05">
  <description>Trains a model for the retention time prediction of peptides from a training set.</description>
  <macros>
    <token name="@EXECUTABLE@">RTModel</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
#if $in:
  mkdir in &&
  ln -s '$in' 'in/${re.sub("[^\w\-_]", "_", $in.element_identifier)}.$gxy2omsext($in.ext)' &&
#end if
#if $in_positive:
  mkdir in_positive &&
  ln -s '$in_positive' 'in_positive/${re.sub("[^\w\-_]", "_", $in_positive.element_identifier)}.$gxy2omsext($in_positive.ext)' &&
#end if
#if $in_negative:
  mkdir in_negative &&
  ln -s '$in_negative' 'in_negative/${re.sub("[^\w\-_]", "_", $in_negative.element_identifier)}.$gxy2omsext($in_negative.ext)' &&
#end if
mkdir out &&
#if "out_oligo_params_FLAG" in str($OPTIONAL_OUTPUTS).split(',')
  mkdir out_oligo_params &&
#end if
#if "out_oligo_trainset_FLAG" in str($OPTIONAL_OUTPUTS).split(',')
  mkdir out_oligo_trainset &&
#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
#if $in:
  -in
  'in/${re.sub("[^\w\-_]", "_", $in.element_identifier)}.$gxy2omsext($in.ext)'
#end if
#if $in_positive:
  -in_positive
  'in_positive/${re.sub("[^\w\-_]", "_", $in_positive.element_identifier)}.$gxy2omsext($in_positive.ext)'
#end if
#if $in_negative:
  -in_negative
  'in_negative/${re.sub("[^\w\-_]", "_", $in_negative.element_identifier)}.$gxy2omsext($in_negative.ext)'
#end if
-out
'out/output.${gxy2omsext("txt")}'
#if "out_oligo_params_FLAG" in str($OPTIONAL_OUTPUTS).split(',')
  -out_oligo_params
  'out_oligo_params/output.${gxy2omsext("paramxml")}'
#end if
#if "out_oligo_trainset_FLAG" in str($OPTIONAL_OUTPUTS).split(',')
  -out_oligo_trainset
  'out_oligo_trainset/output.${gxy2omsext("txt")}'
#end if
#if len(str($OPTIONAL_OUTPUTS).split(',')) == 0
  | tee '$stdout'
#end if

## Postprocessing
&& mv 'out/output.${gxy2omsext("txt")}' '$out'
#if "out_oligo_params_FLAG" in str($OPTIONAL_OUTPUTS).split(',')
  && mv 'out_oligo_params/output.${gxy2omsext("paramxml")}' '$out_oligo_params'
#end if
#if "out_oligo_trainset_FLAG" in str($OPTIONAL_OUTPUTS).split(',')
  && mv 'out_oligo_trainset/output.${gxy2omsext("txt")}' '$out_oligo_trainset'
#end if
#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,txt" optional="true" label="This is the name of the input file (RT prediction)" help="It is assumed that the file type is idXML. Alternatively you can provide a .txt file having a sequence and the corresponding rt per line..  select idxml,txt data sets(s)"/>
    <param argument="-in_positive" type="data" format="idxml" optional="true" label="input file with positive examples (peptide separation prediction)" help=" select idxml data sets(s)"/>
    <param argument="-in_negative" type="data" format="idxml" optional="true" label="input file with negative examples (peptide separation prediction)" help=" select idxml data sets(s)"/>
    <param argument="-svm_type" type="select" optional="true" label="the type of the svm (NU_SVR or EPSILON_SVR for RT prediction, automatically set" help="to C_SVC for separation prediction). ">
      <option value="NU_SVR" selected="true">NU_SVR</option>
      <option value="NU_SVC">NU_SVC</option>
      <option value="EPSILON_SVR">EPSILON_SVR</option>
      <option value="C_SVC">C_SVC</option>
      <expand macro="list_string_san" name="svm_type"/>
    </param>
    <param argument="-nu" type="float" optional="true" min="0.0" max="1.0" value="0.5" label="the nu parameter [0..1] of the svm (for nu-SVR)" help=""/>
    <param argument="-p" type="float" optional="true" value="0.1" label="the epsilon parameter of the svm (for epsilon-SVR)" help=""/>
    <param argument="-c" type="float" optional="true" value="1.0" label="the penalty parameter of the svm" help=""/>
    <param argument="-kernel_type" type="select" optional="true" label="the kernel type of the svm" help="">
      <option value="LINEAR">LINEAR</option>
      <option value="RBF">RBF</option>
      <option value="POLY">POLY</option>
      <option value="OLIGO" selected="true">OLIGO</option>
      <expand macro="list_string_san" name="kernel_type"/>
    </param>
    <param argument="-degree" type="integer" optional="true" min="1" value="1" label="the degree parameter of the kernel function of the svm (POLY kernel)" help=""/>
    <param argument="-border_length" type="integer" optional="true" min="1" value="22" label="length of the POBK" help=""/>
    <param argument="-max_std" type="float" optional="true" min="0.0" value="10.0" label="max standard deviation for a peptide to be included (if there are several ones for one peptide string)(median is taken)" help=""/>
    <param argument="-k_mer_length" type="integer" optional="true" min="1" value="1" label="k_mer length of the POBK" help=""/>
    <param argument="-sigma" type="float" optional="true" value="5.0" label="sigma of the POBK" help=""/>
    <param argument="-total_gradient_time" type="float" optional="true" min="1e-05" value="1.0" label="the time (in seconds) of the gradient (only for RT prediction)" help=""/>
    <param argument="-first_dim_rt" type="boolean" truevalue="true" falsevalue="false" checked="false" label="if set the model will be built for first_dim_rt" help=""/>
    <param argument="-additive_cv" type="boolean" truevalue="true" falsevalue="false" checked="false" label="if the step sizes should be interpreted additively (otherwise the actual value is multiplied" help="with the step size to get the new value"/>
    <section name="cv" title="Parameters for the grid search / cross validation:" help="" expanded="false">
      <param name="skip_cv" argument="-cv:skip_cv" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Set to enable Cross-Validation or set to true if the model should just be trained with 1 set of specified parameters" help=""/>
      <param name="number_of_runs" argument="-cv:number_of_runs" type="integer" optional="true" min="1" value="1" label="number of runs for the CV (each run creates a new random partition of the data)" help=""/>
      <param name="number_of_partitions" argument="-cv:number_of_partitions" type="integer" optional="true" min="2" value="10" label="number of CV partitions" help=""/>
      <param name="degree_start" argument="-cv:degree_start" type="integer" optional="true" min="1" value="1" label="starting point of degree" help=""/>
      <param name="degree_step_size" argument="-cv:degree_step_size" type="integer" optional="true" value="2" label="step size point of degree" help=""/>
      <param name="degree_stop" argument="-cv:degree_stop" type="integer" optional="true" value="4" label="stopping point of degree" help=""/>
      <param name="p_start" argument="-cv:p_start" type="float" optional="true" value="1.0" label="starting point of p" help=""/>
      <param name="p_step_size" argument="-cv:p_step_size" type="float" optional="true" value="10.0" label="step size point of p" help=""/>
      <param name="p_stop" argument="-cv:p_stop" type="float" optional="true" value="1000.0" label="stopping point of p" help=""/>
      <param name="c_start" argument="-cv:c_start" type="float" optional="true" value="1.0" label="starting point of c" help=""/>
      <param name="c_step_size" argument="-cv:c_step_size" type="float" optional="true" value="10.0" label="step size of c" help=""/>
      <param name="c_stop" argument="-cv:c_stop" type="float" optional="true" value="1000.0" label="stopping point of c" help=""/>
      <param name="nu_start" argument="-cv:nu_start" type="float" optional="true" min="0.0" max="1.0" value="0.3" label="starting point of nu" help=""/>
      <param name="nu_step_size" argument="-cv:nu_step_size" type="float" optional="true" value="1.2" label="step size of nu" help=""/>
      <param name="nu_stop" argument="-cv:nu_stop" type="float" optional="true" min="0.0" max="1.0" value="0.7" label="stopping point of nu" help=""/>
      <param name="sigma_start" argument="-cv:sigma_start" type="float" optional="true" value="1.0" label="starting point of sigma" help=""/>
      <param name="sigma_step_size" argument="-cv:sigma_step_size" type="float" optional="true" value="1.3" label="step size of sigma" help=""/>
      <param name="sigma_stop" argument="-cv:sigma_stop" type="float" optional="true" value="15.0" label="stopping point of sigma" 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" optional="true" value="False" label="Enables the test mode (needed for internal use only)" help="">
        <expand macro="list_string_san" name="test"/>
      </param>
    </expand>
    <param name="OPTIONAL_OUTPUTS" type="select" optional="true" multiple="true" label="Optional outputs">
      <option value="out_oligo_params_FLAG">out_oligo_params (output file with additional model parameters when using the OLIGO kernel)</option>
      <option value="out_oligo_trainset_FLAG">out_oligo_trainset (output file with the used training dataset when using the OLIGO kernel)</option>
      <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="txt"/>
    <data name="out_oligo_params" label="${tool.name} on ${on_string}: out_oligo_params" format="paramxml">
      <filter>OPTIONAL_OUTPUTS is not None and "out_oligo_params_FLAG" in OPTIONAL_OUTPUTS</filter>
    </data>
    <data name="out_oligo_trainset" label="${tool.name} on ${on_string}: out_oligo_trainset" format="txt">
      <filter>OPTIONAL_OUTPUTS is not None and "out_oligo_trainset_FLAG" in OPTIONAL_OUTPUTS</filter>
    </data>
    <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_RTModel_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="RTModel_1_input.idXML"/>
      <output name="out" file="RTModel_1_output.model" compare="sim_size" delta_frac="0.7" ftype="txt"/>
      <param name="svm_type" value="NU_SVR"/>
      <param name="nu" value="0.5"/>
      <param name="p" value="0.1"/>
      <param name="c" value="0.1"/>
      <param name="kernel_type" value="POLY"/>
      <param name="degree" value="1"/>
      <param name="border_length" value="22"/>
      <param name="max_std" value="10.0"/>
      <param name="k_mer_length" value="1"/>
      <param name="sigma" value="5.0"/>
      <param name="total_gradient_time" value="3000.0"/>
      <param name="first_dim_rt" value="false"/>
      <param name="additive_cv" value="false"/>
      <section name="cv">
        <param name="skip_cv" value="true"/>
        <param name="number_of_runs" value="10"/>
        <param name="number_of_partitions" value="10"/>
        <param name="degree_start" value="1"/>
        <param name="degree_step_size" value="2"/>
        <param name="degree_stop" value="4"/>
        <param name="p_start" value="1.0"/>
        <param name="p_step_size" value="10.0"/>
        <param name="p_stop" value="1000.0"/>
        <param name="c_start" value="1.0"/>
        <param name="c_step_size" value="10.0"/>
        <param name="c_stop" value="1000.0"/>
        <param name="nu_start" value="0.3"/>
        <param name="nu_step_size" value="1.2"/>
        <param name="nu_stop" value="0.7"/>
        <param name="sigma_start" value="1.0"/>
        <param name="sigma_step_size" value="1.3"/>
        <param name="sigma_stop" value="15.0"/>
      </section>
      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>
      <output name="ctd_out" ftype="xml">
        <assert_contents>
          <is_valid_xml/>
        </assert_contents>
      </output>
    </test>
    <!-- TOPP_RTModel_2 -->
    <test expect_num_outputs="2">
      <section name="adv_opts">
        <param name="force" value="false"/>
        <param name="test" value="true"/>
      </section>
      <param name="in_positive" value="RTModel_2_input_positive.idXML"/>
      <param name="in_negative" value="RTModel_2_input_negative.idXML"/>
      <output name="out" file="RTModel_2_output.tmp" compare="sim_size" delta_frac="0.7" ftype="txt"/>
      <param name="svm_type" value="NU_SVR"/>
      <param name="nu" value="0.5"/>
      <param name="p" value="0.1"/>
      <param name="c" value="0.5"/>
      <param name="kernel_type" value="OLIGO"/>
      <param name="degree" value="1"/>
      <param name="border_length" value="22"/>
      <param name="max_std" value="10.0"/>
      <param name="k_mer_length" value="1"/>
      <param name="sigma" value="5.0"/>
      <param name="total_gradient_time" value="1.0"/>
      <param name="first_dim_rt" value="false"/>
      <param name="additive_cv" value="false"/>
      <section name="cv">
        <param name="skip_cv" value="true"/>
        <param name="number_of_runs" value="10"/>
        <param name="number_of_partitions" value="10"/>
        <param name="degree_start" value="1"/>
        <param name="degree_step_size" value="2"/>
        <param name="degree_stop" value="4"/>
        <param name="p_start" value="1.0"/>
        <param name="p_step_size" value="10.0"/>
        <param name="p_stop" value="1000.0"/>
        <param name="c_start" value="1.0"/>
        <param name="c_step_size" value="10.0"/>
        <param name="c_stop" value="1000.0"/>
        <param name="nu_start" value="0.3"/>
        <param name="nu_step_size" value="1.2"/>
        <param name="nu_stop" value="0.7"/>
        <param name="sigma_start" value="1.0"/>
        <param name="sigma_step_size" value="1.3"/>
        <param name="sigma_stop" value="15.0"/>
      </section>
      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>
      <output name="ctd_out" ftype="xml">
        <assert_contents>
          <is_valid_xml/>
        </assert_contents>
      </output>
    </test>
    <!-- TOPP_RTModel_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="RTModel_3_input.idXML"/>
      <output name="out" file="RTModel_3_output.tmp" compare="sim_size" delta_frac="0.7" ftype="txt"/>
      <param name="svm_type" value="NU_SVR"/>
      <param name="nu" value="0.5"/>
      <param name="p" value="0.1"/>
      <param name="c" value="0.001953125"/>
      <param name="kernel_type" value="OLIGO"/>
      <param name="degree" value="1"/>
      <param name="border_length" value="22"/>
      <param name="max_std" value="10.0"/>
      <param name="k_mer_length" value="1"/>
      <param name="sigma" value="1.0"/>
      <param name="total_gradient_time" value="1.0"/>
      <param name="first_dim_rt" value="false"/>
      <param name="additive_cv" value="false"/>
      <section name="cv">
        <param name="skip_cv" value="false"/>
        <param name="number_of_runs" value="1"/>
        <param name="number_of_partitions" value="5"/>
        <param name="degree_start" value="1"/>
        <param name="degree_step_size" value="2"/>
        <param name="degree_stop" value="4"/>
        <param name="p_start" value="1.0"/>
        <param name="p_step_size" value="10.0"/>
        <param name="p_stop" value="1000.0"/>
        <param name="c_start" value="0.001953125"/>
        <param name="c_step_size" value="2.0"/>
        <param name="c_stop" value="0.001953125"/>
        <param name="nu_start" value="0.4"/>
        <param name="nu_step_size" value="1.2"/>
        <param name="nu_stop" value="0.4"/>
        <param name="sigma_start" value="5.0"/>
        <param name="sigma_step_size" value="1.221055"/>
        <param name="sigma_stop" value="5.0"/>
      </section>
      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>
      <output name="ctd_out" ftype="xml">
        <assert_contents>
          <is_valid_xml/>
        </assert_contents>
      </output>
    </test>
    <!-- TOPP_RTModel_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="RTModel_4_input.txt" ftype="txt"/>
      <output name="out" file="RTModel_4_output.tmp" compare="sim_size" delta_frac="0.7" ftype="txt"/>
      <param name="svm_type" value="NU_SVR"/>
      <param name="nu" value="0.5"/>
      <param name="p" value="0.1"/>
      <param name="c" value="0.001953125"/>
      <param name="kernel_type" value="OLIGO"/>
      <param name="degree" value="1"/>
      <param name="border_length" value="22"/>
      <param name="max_std" value="10.0"/>
      <param name="k_mer_length" value="1"/>
      <param name="sigma" value="1.0"/>
      <param name="total_gradient_time" value="1.0"/>
      <param name="first_dim_rt" value="false"/>
      <param name="additive_cv" value="false"/>
      <section name="cv">
        <param name="skip_cv" value="false"/>
        <param name="number_of_runs" value="1"/>
        <param name="number_of_partitions" value="5"/>
        <param name="degree_start" value="1"/>
        <param name="degree_step_size" value="2"/>
        <param name="degree_stop" value="4"/>
        <param name="p_start" value="1.0"/>
        <param name="p_step_size" value="10.0"/>
        <param name="p_stop" value="1000.0"/>
        <param name="c_start" value="0.001953125"/>
        <param name="c_step_size" value="2.0"/>
        <param name="c_stop" value="0.001953125"/>
        <param name="nu_start" value="0.4"/>
        <param name="nu_step_size" value="1.2"/>
        <param name="nu_stop" value="0.4"/>
        <param name="sigma_start" value="5.0"/>
        <param name="sigma_step_size" value="1.221055"/>
        <param name="sigma_stop" value="5.0"/>
      </section>
      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>
      <output name="ctd_out" ftype="xml">
        <assert_contents>
          <is_valid_xml/>
        </assert_contents>
      </output>
    </test>
  </tests>
  <help><![CDATA[Trains a model for the retention time prediction of peptides from a training set.


For more information, visit http://www.openms.de/doxygen/release/2.8.0/html/TOPP_RTModel.html]]></help>
  <expand macro="references"/>
</tool>