diff SvmTheoreticalSpectrumGeneratorTrainer.xml @ 9:94b81345543d draft

"planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/openms commit 020906fb54bde7fc143c356f41975c378a741315"
author galaxyp
date Wed, 09 Sep 2020 19:57:32 +0000
parents e98ae1229a67
children b1a8601e2ea0
line wrap: on
line diff
--- a/SvmTheoreticalSpectrumGeneratorTrainer.xml	Fri May 17 10:07:55 2019 -0400
+++ b/SvmTheoreticalSpectrumGeneratorTrainer.xml	Wed Sep 09 19:57:32 2020 +0000
@@ -1,324 +1,145 @@
 <?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: [Utilities]-->
-<tool id="SvmTheoreticalSpectrumGeneratorTrainer" name="SvmTheoreticalSpectrumGeneratorTrainer" version="2.3.0">
+<tool id="SvmTheoreticalSpectrumGeneratorTrainer" name="SvmTheoreticalSpectrumGeneratorTrainer" version="@TOOL_VERSION@+galaxy@GALAXY_VERSION@" profile="20.05">
   <description>Trainer for SVM models as input for SvmTheoreticalSpectrumGenerator</description>
   <macros>
     <token name="@EXECUTABLE@">SvmTheoreticalSpectrumGeneratorTrainer</token>
     <import>macros.xml</import>
+    <import>macros_autotest.xml</import>
+    <import>macros_test.xml</import>
   </macros>
-  <expand macro="references"/>
+  <expand macro="requirements"/>
   <expand macro="stdio"/>
-  <expand macro="requirements"/>
-  <command detect_errors="aggressive"><![CDATA[SvmTheoreticalSpectrumGeneratorTrainer
+  <command detect_errors="exit_code"><![CDATA[@QUOTE_FOO@
+@EXT_FOO@
+#import re
+
+## Preprocessing
+mkdir in_spectra &&
+ln -s '$in_spectra' 'in_spectra/${re.sub("[^\w\-_]", "_", $in_spectra.element_identifier)}.$gxy2omsext($in_spectra.ext)' &&
+mkdir in_identifications &&
+ln -s '$in_identifications' 'in_identifications/${re.sub("[^\w\-_]", "_", $in_identifications.element_identifier)}.$gxy2omsext($in_identifications.ext)' &&
+mkdir model_output_file &&
+
+## 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_spectra
+'in_spectra/${re.sub("[^\w\-_]", "_", $in_spectra.element_identifier)}.$gxy2omsext($in_spectra.ext)'
+-in_identifications
+'in_identifications/${re.sub("[^\w\-_]", "_", $in_identifications.element_identifier)}.$gxy2omsext($in_identifications.ext)'
+-model_output_file
+'model_output_file/output.${gxy2omsext("txt")}'
 
-#if $param_in_spectra:
-  -in_spectra $param_in_spectra
-#end if
-#if $param_in_identifications:
-  -in_identifications $param_in_identifications
-#end if
-#if $param_model_output_file:
-  -model_output_file $param_model_output_file
-#end if
-#if $param_precursor_charge:
-  -precursor_charge $param_precursor_charge
-#end if
-#if $param_write_training_files:
-  -write_training_files
-#end if
-#if $param_algorithm_number_intensity_levels:
-  -algorithm:number_intensity_levels $param_algorithm_number_intensity_levels
-#end if
-#if $param_algorithm_number_regions:
-  -algorithm:number_regions $param_algorithm_number_regions
-#end if
-#if $param_algorithm_parent_tolerance:
-  -algorithm:parent_tolerance $param_algorithm_parent_tolerance
-#end if
-#if $param_algorithm_peak_tolerance:
-  -algorithm:peak_tolerance $param_algorithm_peak_tolerance
-#end if
-#if $param_algorithm_add_b_ions:
-  -algorithm:add_b_ions
-  #if " " in str($param_algorithm_add_b_ions):
-    "$param_algorithm_add_b_ions"
-  #else
-    $param_algorithm_add_b_ions
-  #end if
-#end if
-#if $param_algorithm_add_y_ions:
-  -algorithm:add_y_ions
-  #if " " in str($param_algorithm_add_y_ions):
-    "$param_algorithm_add_y_ions"
-  #else
-    $param_algorithm_add_y_ions
-  #end if
-#end if
-#if $param_algorithm_add_a_ions:
-  -algorithm:add_a_ions
-#end if
-#if $param_algorithm_add_c_ions:
-  -algorithm:add_c_ions
-#end if
-#if $param_algorithm_add_x_ions:
-  -algorithm:add_x_ions
-#end if
-#if $param_algorithm_add_z_ions:
-  -algorithm:add_z_ions
-#end if
-#if $param_algorithm_add_losses:
-  -algorithm:add_losses
-#end if
-#if $param_algorithm_add_b2_ions:
-  -algorithm:add_b2_ions
-#end if
-#if $param_algorithm_add_y2_ions:
-  -algorithm:add_y2_ions
-#end if
-#if $param_algorithm_svm_svc_type:
-  -algorithm:svm:svc_type $param_algorithm_svm_svc_type
-#end if
-#if $param_algorithm_svm_svr_type:
-  -algorithm:svm:svr_type $param_algorithm_svm_svr_type
-#end if
-#if $param_algorithm_svm_scaling:
-  -algorithm:svm:scaling
-  #if " " in str($param_algorithm_svm_scaling):
-    "$param_algorithm_svm_scaling"
-  #else
-    $param_algorithm_svm_scaling
-  #end if
-#end if
-#if $param_algorithm_svm_scaling_lower:
-  -algorithm:svm:scaling_lower $param_algorithm_svm_scaling_lower
-#end if
-#if $param_algorithm_svm_scaling_upper:
-  -algorithm:svm:scaling_upper $param_algorithm_svm_scaling_upper
-#end if
-#if $param_algorithm_svm_n_fold:
-  -algorithm:svm:n_fold $param_algorithm_svm_n_fold
-#end if
-#if $param_algorithm_svm_grid:
-  -algorithm:svm:grid
-#end if
-#if $param_algorithm_svm_additive_cv:
-  -algorithm:svm:additive_cv
-#end if
-#if $param_algorithm_svm_svc_kernel_type:
-  -algorithm:svm:svc:kernel_type $param_algorithm_svm_svc_kernel_type
-#end if
-#if $param_algorithm_svm_svc_degree:
-  -algorithm:svm:svc:degree $param_algorithm_svm_svc_degree
-#end if
-#if $param_algorithm_svm_svc_gamma:
-  -algorithm:svm:svc:gamma $param_algorithm_svm_svc_gamma
-#end if
-#if $param_algorithm_svm_svc_C:
-  -algorithm:svm:svc:C $param_algorithm_svm_svc_C
-#end if
-#if $param_algorithm_svm_svc_nu:
-  -algorithm:svm:svc:nu $param_algorithm_svm_svc_nu
-#end if
-#if $param_algorithm_svm_svc_balancing:
-  -algorithm:svm:svc:balancing
-  #if " " in str($param_algorithm_svm_svc_balancing):
-    "$param_algorithm_svm_svc_balancing"
-  #else
-    $param_algorithm_svm_svc_balancing
-  #end if
-#end if
-#if $param_algorithm_svm_svc_degree_start:
-  -algorithm:svm:svc:degree_start $param_algorithm_svm_svc_degree_start
-#end if
-#if $param_algorithm_svm_svc_degree_step_size:
-  -algorithm:svm:svc:degree_step_size $param_algorithm_svm_svc_degree_step_size
-#end if
-#if $param_algorithm_svm_svc_degree_stop:
-  -algorithm:svm:svc:degree_stop $param_algorithm_svm_svc_degree_stop
-#end if
-#if $param_algorithm_svm_svc_gamma_start:
-  -algorithm:svm:svc:gamma_start $param_algorithm_svm_svc_gamma_start
-#end if
-#if $param_algorithm_svm_svc_gamma_step_size:
-  -algorithm:svm:svc:gamma_step_size $param_algorithm_svm_svc_gamma_step_size
-#end if
-#if $param_algorithm_svm_svc_gamma_stop:
-  -algorithm:svm:svc:gamma_stop $param_algorithm_svm_svc_gamma_stop
-#end if
-#if $param_algorithm_svm_svc_c_start:
-  -algorithm:svm:svc:c_start $param_algorithm_svm_svc_c_start
-#end if
-#if $param_algorithm_svm_svc_c_step_size:
-  -algorithm:svm:svc:c_step_size $param_algorithm_svm_svc_c_step_size
-#end if
-#if $param_algorithm_svm_svc_c_stop:
-  -algorithm:svm:svc:c_stop $param_algorithm_svm_svc_c_stop
-#end if
-#if $param_algorithm_svm_svc_nu_start:
-  -algorithm:svm:svc:nu_start $param_algorithm_svm_svc_nu_start
-#end if
-#if $param_algorithm_svm_svc_nu_step_size:
-  -algorithm:svm:svc:nu_step_size $param_algorithm_svm_svc_nu_step_size
-#end if
-#if $param_algorithm_svm_svc_nu_stop:
-  -algorithm:svm:svc:nu_stop $param_algorithm_svm_svc_nu_stop
-#end if
-#if $param_algorithm_svm_svr_kernel_type:
-  -algorithm:svm:svr:kernel_type $param_algorithm_svm_svr_kernel_type
-#end if
-#if $param_algorithm_svm_svr_degree:
-  -algorithm:svm:svr:degree $param_algorithm_svm_svr_degree
-#end if
-#if $param_algorithm_svm_svr_gamma:
-  -algorithm:svm:svr:gamma $param_algorithm_svm_svr_gamma
-#end if
-#if $param_algorithm_svm_svr_C:
-  -algorithm:svm:svr:C $param_algorithm_svm_svr_C
-#end if
-#if $param_algorithm_svm_svr_p:
-  -algorithm:svm:svr:p $param_algorithm_svm_svr_p
-#end if
-#if $param_algorithm_svm_svr_nu:
-  -algorithm:svm:svr:nu $param_algorithm_svm_svr_nu
-#end if
-#if $param_algorithm_svm_svr_degree_start:
-  -algorithm:svm:svr:degree_start $param_algorithm_svm_svr_degree_start
-#end if
-#if $param_algorithm_svm_svr_degree_step_size:
-  -algorithm:svm:svr:degree_step_size $param_algorithm_svm_svr_degree_step_size
-#end if
-#if $param_algorithm_svm_svr_degree_stop:
-  -algorithm:svm:svr:degree_stop $param_algorithm_svm_svr_degree_stop
-#end if
-#if $param_algorithm_svm_svr_gamma_start:
-  -algorithm:svm:svr:gamma_start $param_algorithm_svm_svr_gamma_start
-#end if
-#if $param_algorithm_svm_svr_gamma_step_size:
-  -algorithm:svm:svr:gamma_step_size $param_algorithm_svm_svr_gamma_step_size
-#end if
-#if $param_algorithm_svm_svr_gamma_stop:
-  -algorithm:svm:svr:gamma_stop $param_algorithm_svm_svr_gamma_stop
-#end if
-#if $param_algorithm_svm_svr_p_start:
-  -algorithm:svm:svr:p_start $param_algorithm_svm_svr_p_start
-#end if
-#if $param_algorithm_svm_svr_p_step_size:
-  -algorithm:svm:svr:p_step_size $param_algorithm_svm_svr_p_step_size
-#end if
-#if $param_algorithm_svm_svr_p_stop:
-  -algorithm:svm:svr:p_stop $param_algorithm_svm_svr_p_stop
-#end if
-#if $param_algorithm_svm_svr_c_start:
-  -algorithm:svm:svr:c_start $param_algorithm_svm_svr_c_start
-#end if
-#if $param_algorithm_svm_svr_c_step_size:
-  -algorithm:svm:svr:c_step_size $param_algorithm_svm_svr_c_step_size
-#end if
-#if $param_algorithm_svm_svr_c_stop:
-  -algorithm:svm:svr:c_stop $param_algorithm_svm_svr_c_stop
-#end if
-#if $param_algorithm_svm_svr_nu_start:
-  -algorithm:svm:svr:nu_start $param_algorithm_svm_svr_nu_start
-#end if
-#if $param_algorithm_svm_svr_nu_step_size:
-  -algorithm:svm:svr:nu_step_size $param_algorithm_svm_svr_nu_step_size
-#end if
-#if $param_algorithm_svm_svr_nu_stop:
-  -algorithm:svm:svr:nu_stop $param_algorithm_svm_svr_nu_stop
-#end if
-#if $adv_opts.adv_opts_selector=='advanced':
-    #if $adv_opts.param_force:
-  -force
-#end if
-#end if
-]]></command>
+## Postprocessing
+&& mv 'model_output_file/output.${gxy2omsext("txt")}' '$model_output_file'
+#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 name="param_in_spectra" type="data" format="mzml" optional="False" label="Input Training Spectra in mzML" help="(-in_spectra) "/>
-    <param name="param_in_identifications" type="data" format="idxml" optional="False" label="Input file with corresponding sequences in idXML" help="(-in_identifications) "/>
-    <param name="param_precursor_charge" type="integer" min="1" max="3" optional="True" value="2" label="Precursor charge state used for model training" help="(-precursor_charge) "/>
-    <param name="param_write_training_files" display="radio" type="boolean" truevalue="-write_training_files" falsevalue="" checked="false" optional="True" label="No models are trained but input training files for libSVM command line tools are produced" help="(-write_training_files) "/>
-    <param name="param_algorithm_number_intensity_levels" type="integer" value="7" label="The number of intensity bins (for secondary type models)" help="(-number_intensity_levels) "/>
-    <param name="param_algorithm_number_regions" type="integer" value="3" label="The number of regions each spectrum is split to (for secondary type models)" help="(-number_regions) "/>
-    <param name="param_algorithm_parent_tolerance" type="float" value="2.5" label="The maximum difference between theoretical and experimental parent mass to accept training spectrum" help="(-parent_tolerance) "/>
-    <param name="param_algorithm_peak_tolerance" type="float" value="0.5" label="The maximum mass error for a peak to the expected mass of some ion type" help="(-peak_tolerance) "/>
-    <param name="param_algorithm_add_b_ions" display="radio" type="select" optional="False" value="true" label="Train simulator for b-ions" help="(-add_b_ions) ">
-      <option value="true" selected="true">true</option>
-      <option value="false">false</option>
-    </param>
-    <param name="param_algorithm_add_y_ions" display="radio" type="select" optional="False" value="true" label="Train simulator for y-ions" help="(-add_y_ions) ">
-      <option value="true" selected="true">true</option>
-      <option value="false">false</option>
-    </param>
-    <param name="param_algorithm_add_a_ions" display="radio" type="boolean" truevalue="-algorithm:add_a_ions" falsevalue="" checked="false" optional="True" label="Train simulator for a-ions" help="(-add_a_ions) "/>
-    <param name="param_algorithm_add_c_ions" display="radio" type="boolean" truevalue="-algorithm:add_c_ions" falsevalue="" checked="false" optional="True" label="Train simulator for c-ions" help="(-add_c_ions) "/>
-    <param name="param_algorithm_add_x_ions" display="radio" type="boolean" truevalue="-algorithm:add_x_ions" falsevalue="" checked="false" optional="True" label="Train simulator for x-ions" help="(-add_x_ions) "/>
-    <param name="param_algorithm_add_z_ions" display="radio" type="boolean" truevalue="-algorithm:add_z_ions" falsevalue="" checked="false" optional="True" label="Train simulator for z-ions" help="(-add_z_ions) "/>
-    <param name="param_algorithm_add_losses" display="radio" type="boolean" truevalue="-algorithm:add_losses" falsevalue="" checked="false" optional="True" label="Train simulator for neutral losses of H2O and NH3 for b-ions and y-ions" help="(-add_losses) "/>
-    <param name="param_algorithm_add_b2_ions" display="radio" type="boolean" truevalue="-algorithm:add_b2_ions" falsevalue="" checked="false" optional="True" label="Train simulator for doubly charged b-ions" help="(-add_b2_ions) "/>
-    <param name="param_algorithm_add_y2_ions" display="radio" type="boolean" truevalue="-algorithm:add_y2_ions" falsevalue="" checked="false" optional="True" label="Train simulator for double charged y-ions" help="(-add_y2_ions) "/>
-    <param name="param_algorithm_svm_svc_type" type="integer" min="0" max="1" optional="True" value="0" label="Type of the SVC: 0=C_SVC 1=NU_SVC" help="(-svc_type) "/>
-    <param name="param_algorithm_svm_svr_type" type="integer" min="0" max="1" optional="True" value="1" label="Type of the SVR: 0=EPSILON_SVR 1=NU_SVR" help="(-svr_type) "/>
-    <param name="param_algorithm_svm_scaling" display="radio" type="select" optional="False" value="true" label="Apply scaling of feature values" help="(-scaling) ">
-      <option value="true" selected="true">true</option>
-      <option value="false">false</option>
+    <param name="in_spectra" argument="-in_spectra" type="data" format="mzml" optional="false" label="Input Training Spectra in mzML" help=" select mzml data sets(s)"/>
+    <param name="in_identifications" argument="-in_identifications" type="data" format="idxml" optional="false" label="Input file with corresponding sequences in idXML" help=" select idxml data sets(s)"/>
+    <param name="precursor_charge" argument="-precursor_charge" type="integer" optional="true" min="1" max="3" value="2" label="Precursor charge state used for model training" help=""/>
+    <param name="write_training_files" argument="-write_training_files" type="boolean" truevalue="true" falsevalue="false" checked="false" label="No models are trained but input training files for libSVM command line tools are produced" help=""/>
+    <section name="algorithm" title="" help="" expanded="false">
+      <param name="number_intensity_levels" argument="-algorithm:number_intensity_levels" type="integer" optional="true" value="7" label="The number of intensity bins (for secondary type models)" help=""/>
+      <param name="number_regions" argument="-algorithm:number_regions" type="integer" optional="true" value="3" label="The number of regions each spectrum is split to (for secondary type models)" help=""/>
+      <param name="parent_tolerance" argument="-algorithm:parent_tolerance" type="float" optional="true" value="2.5" label="The maximum difference between theoretical and experimental parent mass to accept training spectrum" help=""/>
+      <param name="peak_tolerance" argument="-algorithm:peak_tolerance" type="float" optional="true" value="0.5" label="The maximum mass error for a peak to the expected mass of some ion type" help=""/>
+      <param name="add_b_ions" argument="-algorithm:add_b_ions" type="boolean" truevalue="true" falsevalue="false" checked="true" label="Train simulator for b-ions" help=""/>
+      <param name="add_y_ions" argument="-algorithm:add_y_ions" type="boolean" truevalue="true" falsevalue="false" checked="true" label="Train simulator for y-ions" help=""/>
+      <param name="add_a_ions" argument="-algorithm:add_a_ions" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Train simulator for a-ions" help=""/>
+      <param name="add_c_ions" argument="-algorithm:add_c_ions" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Train simulator for c-ions" help=""/>
+      <param name="add_x_ions" argument="-algorithm:add_x_ions" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Train simulator for x-ions" help=""/>
+      <param name="add_z_ions" argument="-algorithm:add_z_ions" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Train simulator for z-ions" help=""/>
+      <param name="add_losses" argument="-algorithm:add_losses" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Train simulator for neutral losses of H2O and NH3 for b-ions and y-ions" help=""/>
+      <param name="add_b2_ions" argument="-algorithm:add_b2_ions" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Train simulator for doubly charged b-ions" help=""/>
+      <param name="add_y2_ions" argument="-algorithm:add_y2_ions" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Train simulator for double charged y-ions" help=""/>
+      <section name="svm" title="Parameters controlling SVM trainig behaviou" help="All parameter names are chosen as in the libSVM library. Please refer to libSVM documentation for explanation" expanded="false">
+        <param name="svc_type" argument="-algorithm:svm:svc_type" type="integer" optional="true" min="0" max="1" value="0" label="Type of the SVC: 0=C_SVC 1=NU_SVC" help=""/>
+        <param name="svr_type" argument="-algorithm:svm:svr_type" type="integer" optional="true" min="0" max="1" value="1" label="Type of the SVR: 0=EPSILON_SVR 1=NU_SVR" help=""/>
+        <param name="scaling" argument="-algorithm:svm:scaling" type="boolean" truevalue="true" falsevalue="false" checked="true" label="Apply scaling of feature values" help=""/>
+        <param name="scaling_lower" argument="-algorithm:svm:scaling_lower" type="float" optional="true" value="0.0" label="Lower bound for scaling" help=""/>
+        <param name="scaling_upper" argument="-algorithm:svm:scaling_upper" type="float" optional="true" value="1.0" label="Upper bound for scaling" help=""/>
+        <param name="n_fold" argument="-algorithm:svm:n_fold" type="integer" optional="true" min="1" value="5" label="n_fold cross validation is performed" help=""/>
+        <param name="grid" argument="-algorithm:svm:grid" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Perform grid search" help=""/>
+        <param name="additive_cv" argument="-algorithm:svm:additive_cv" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Additive step size (if false multiplicative)" help=""/>
+        <section name="svc" title="Parameters for svm - classification of missing/abundant" help="" expanded="false">
+          <param name="kernel_type" argument="-algorithm:svm:svc:kernel_type" type="integer" optional="true" min="0" max="3" value="2" label="Type of the kernel:  0=LINEAR 1=POLY 2=RBF 3=SIGMOID" help=""/>
+          <param name="degree" argument="-algorithm:svm:svc:degree" type="integer" optional="true" min="1" value="3" label="For POLY" help=""/>
+          <param name="gamma" argument="-algorithm:svm:svc:gamma" type="float" optional="true" min="0.0" value="0.0" label="For POLY/RBF/SIGMOID" help=""/>
+          <param name="C" argument="-algorithm:svm:svc:C" type="float" optional="true" value="1.0" label="Cost of constraint violation" help=""/>
+          <param name="nu" argument="-algorithm:svm:svc:nu" type="float" optional="true" value="0.5" label="For NU_SVC, ONE_CLASS and NU_SVR" help=""/>
+          <param name="balancing" argument="-algorithm:svm:svc:balancing" type="boolean" truevalue="true" falsevalue="false" checked="true" label="Use class balanced SVC training" help=""/>
+          <param name="degree_start" argument="-algorithm:svm:svc:degree_start" type="integer" optional="true" min="1" value="1" label="starting point of degree" help=""/>
+          <param name="degree_step_size" argument="-algorithm:svm:svc:degree_step_size" type="integer" optional="true" value="2" label="step size point of degree" help=""/>
+          <param name="degree_stop" argument="-algorithm:svm:svc:degree_stop" type="integer" optional="true" value="4" label="stopping point of degree" help=""/>
+          <param name="gamma_start" argument="-algorithm:svm:svc:gamma_start" type="float" optional="true" min="0.0" max="1.0" value="1e-05" label="starting point of gamma" help=""/>
+          <param name="gamma_step_size" argument="-algorithm:svm:svc:gamma_step_size" type="integer" optional="true" value="100" label="step size point of gamma" help=""/>
+          <param name="gamma_stop" argument="-algorithm:svm:svc:gamma_stop" type="float" optional="true" value="0.1" label="stopping point of gamma" help=""/>
+          <param name="c_start" argument="-algorithm:svm:svc:c_start" type="float" optional="true" value="0.1" label="starting point of c" help=""/>
+          <param name="c_step_size" argument="-algorithm:svm:svc:c_step_size" type="integer" optional="true" value="100" label="step size of c" help=""/>
+          <param name="c_stop" argument="-algorithm:svm:svc:c_stop" type="integer" optional="true" value="1000" label="stopping point of c" help=""/>
+          <param name="nu_start" argument="-algorithm:svm:svc: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="-algorithm:svm:svc:nu_step_size" type="integer" optional="true" value="2" label="step size of nu" help=""/>
+          <param name="nu_stop" argument="-algorithm:svm:svc:nu_stop" type="float" optional="true" min="0.0" max="1.0" value="0.6" label="stopping point of nu" help=""/>
+        </section>
+        <section name="svr" title="Parameters for svm - regression of peak intensities" help="" expanded="false">
+          <param name="kernel_type" argument="-algorithm:svm:svr:kernel_type" type="integer" optional="true" min="0" max="3" value="2" label="Type of the kernel:  0=LINEAR 1=POLY 2=RBF 3=SIGMOID" help=""/>
+          <param name="degree" argument="-algorithm:svm:svr:degree" type="integer" optional="true" min="1" value="3" label="For POLY" help=""/>
+          <param name="gamma" argument="-algorithm:svm:svr:gamma" type="float" optional="true" min="0.0" value="0.0" label="For POLY/RBF/SIGMOID" help=""/>
+          <param name="C" argument="-algorithm:svm:svr:C" type="float" optional="true" value="1.0" label="Cost of constraint violation" help=""/>
+          <param name="p" argument="-algorithm:svm:svr:p" type="float" optional="true" value="0.1" label="The epsilon for the loss function in epsilon-SVR" help=""/>
+          <param name="nu" argument="-algorithm:svm:svr:nu" type="float" optional="true" value="0.5" label="For NU_SVC, ONE_CLASS and NU_SVR" help=""/>
+          <param name="degree_start" argument="-algorithm:svm:svr:degree_start" type="integer" optional="true" min="1" value="1" label="starting point of degree" help=""/>
+          <param name="degree_step_size" argument="-algorithm:svm:svr:degree_step_size" type="integer" optional="true" value="2" label="step size point of degree" help=""/>
+          <param name="degree_stop" argument="-algorithm:svm:svr:degree_stop" type="integer" optional="true" value="4" label="stopping point of degree" help=""/>
+          <param name="gamma_start" argument="-algorithm:svm:svr:gamma_start" type="float" optional="true" min="0.0" max="1.0" value="1e-05" label="starting point of gamma" help=""/>
+          <param name="gamma_step_size" argument="-algorithm:svm:svr:gamma_step_size" type="integer" optional="true" value="100" label="step size point of gamma" help=""/>
+          <param name="gamma_stop" argument="-algorithm:svm:svr:gamma_stop" type="float" optional="true" value="0.1" label="stopping point of gamma" help=""/>
+          <param name="p_start" argument="-algorithm:svm:svr:p_start" type="float" optional="true" value="1e-05" label="starting point of p" help=""/>
+          <param name="p_step_size" argument="-algorithm:svm:svr:p_step_size" type="integer" optional="true" value="100" label="step size point of p" help=""/>
+          <param name="p_stop" argument="-algorithm:svm:svr:p_stop" type="float" optional="true" value="0.1" label="stopping point of p" help=""/>
+          <param name="c_start" argument="-algorithm:svm:svr:c_start" type="float" optional="true" value="0.1" label="starting point of c" help=""/>
+          <param name="c_step_size" argument="-algorithm:svm:svr:c_step_size" type="integer" optional="true" value="100" label="step size of c" help=""/>
+          <param name="c_stop" argument="-algorithm:svm:svr:c_stop" type="integer" optional="true" value="1000" label="stopping point of c" help=""/>
+          <param name="nu_start" argument="-algorithm:svm:svr: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="-algorithm:svm:svr:nu_step_size" type="integer" optional="true" value="2" label="step size of nu" help=""/>
+          <param name="nu_stop" argument="-algorithm:svm:svr:nu_stop" type="float" optional="true" min="0.0" max="1.0" value="0.6" label="stopping point of nu" help=""/>
+        </section>
+      </section>
+    </section>
+    <expand macro="adv_opts_macro">
+      <param name="force" argument="-force" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Overwrite tool specific checks" help=""/>
+      <param name="test" argument="-test" type="hidden" optional="true" value="False" label="Enables the test mode (needed for internal use only)" help="">
+        <expand macro="list_string_san"/>
+      </param>
+    </expand>
+    <param name="OPTIONAL_OUTPUTS" type="select" multiple="true" label="Optional outputs" optional="true">
+      <option value="ctd_out_FLAG">Output used ctd (ini) configuration file</option>
     </param>
-    <param name="param_algorithm_svm_scaling_lower" type="float" value="0.0" label="Lower bound for scaling" help="(-scaling_lower) "/>
-    <param name="param_algorithm_svm_scaling_upper" type="float" value="1.0" label="Upper bound for scaling" help="(-scaling_upper) "/>
-    <param name="param_algorithm_svm_n_fold" type="integer" min="1" optional="True" value="5" label="n_fold cross validation is performed" help="(-n_fold) "/>
-    <param name="param_algorithm_svm_grid" display="radio" type="boolean" truevalue="-algorithm:svm:grid" falsevalue="" checked="false" optional="True" label="Perform grid search" help="(-grid) "/>
-    <param name="param_algorithm_svm_additive_cv" display="radio" type="boolean" truevalue="-algorithm:svm:additive_cv" falsevalue="" checked="false" optional="True" label="Additive step size (if false multiplicative)" help="(-additive_cv) "/>
-    <param name="param_algorithm_svm_svc_kernel_type" type="integer" min="0" max="3" optional="True" value="2" label="Type of the kernel:  0=LINEAR 1=POLY 2=RBF 3=SIGMOID" help="(-kernel_type) "/>
-    <param name="param_algorithm_svm_svc_degree" type="integer" min="1" optional="True" value="3" label="For POLY" help="(-degree) "/>
-    <param name="param_algorithm_svm_svc_gamma" type="float" min="0.0" optional="True" value="0.0" label="For POLY/RBF/SIGMOID" help="(-gamma) "/>
-    <param name="param_algorithm_svm_svc_C" type="float" value="1.0" label="Cost of constraint violation" help="(-C) "/>
-    <param name="param_algorithm_svm_svc_nu" type="float" value="0.5" label="For NU_SVC, ONE_CLASS and NU_SVR" help="(-nu) "/>
-    <param name="param_algorithm_svm_svc_balancing" display="radio" type="select" optional="False" value="true" label="Use class balanced SVC training" help="(-balancing) ">
-      <option value="true" selected="true">true</option>
-      <option value="false">false</option>
-    </param>
-    <param name="param_algorithm_svm_svc_degree_start" type="integer" min="1" optional="True" value="1" label="starting point of degree" help="(-degree_start) "/>
-    <param name="param_algorithm_svm_svc_degree_step_size" type="integer" value="2" label="step size point of degree" help="(-degree_step_size) "/>
-    <param name="param_algorithm_svm_svc_degree_stop" type="integer" value="4" label="stopping point of degree" help="(-degree_stop) "/>
-    <param name="param_algorithm_svm_svc_gamma_start" type="float" min="0.0" max="1.0" optional="True" value="1e-05" label="starting point of gamma" help="(-gamma_start) "/>
-    <param name="param_algorithm_svm_svc_gamma_step_size" type="integer" value="100" label="step size point of gamma" help="(-gamma_step_size) "/>
-    <param name="param_algorithm_svm_svc_gamma_stop" type="float" value="0.1" label="stopping point of gamma" help="(-gamma_stop) "/>
-    <param name="param_algorithm_svm_svc_c_start" type="float" value="0.1" label="starting point of c" help="(-c_start) "/>
-    <param name="param_algorithm_svm_svc_c_step_size" type="integer" value="100" label="step size of c" help="(-c_step_size) "/>
-    <param name="param_algorithm_svm_svc_c_stop" type="integer" value="1000" label="stopping point of c" help="(-c_stop) "/>
-    <param name="param_algorithm_svm_svc_nu_start" type="float" min="0.0" max="1.0" optional="True" value="0.3" label="starting point of nu" help="(-nu_start) "/>
-    <param name="param_algorithm_svm_svc_nu_step_size" type="integer" value="2" label="step size of nu" help="(-nu_step_size) "/>
-    <param name="param_algorithm_svm_svc_nu_stop" type="float" min="0.0" max="1.0" optional="True" value="0.6" label="stopping point of nu" help="(-nu_stop) "/>
-    <param name="param_algorithm_svm_svr_kernel_type" type="integer" min="0" max="3" optional="True" value="2" label="Type of the kernel:  0=LINEAR 1=POLY 2=RBF 3=SIGMOID" help="(-kernel_type) "/>
-    <param name="param_algorithm_svm_svr_degree" type="integer" min="1" optional="True" value="3" label="For POLY" help="(-degree) "/>
-    <param name="param_algorithm_svm_svr_gamma" type="float" min="0.0" optional="True" value="0.0" label="For POLY/RBF/SIGMOID" help="(-gamma) "/>
-    <param name="param_algorithm_svm_svr_C" type="float" value="1.0" label="Cost of constraint violation" help="(-C) "/>
-    <param name="param_algorithm_svm_svr_p" type="float" value="0.1" label="The epsilon for the loss function in epsilon-SVR" help="(-p) "/>
-    <param name="param_algorithm_svm_svr_nu" type="float" value="0.5" label="For NU_SVC, ONE_CLASS and NU_SVR" help="(-nu) "/>
-    <param name="param_algorithm_svm_svr_degree_start" type="integer" min="1" optional="True" value="1" label="starting point of degree" help="(-degree_start) "/>
-    <param name="param_algorithm_svm_svr_degree_step_size" type="integer" value="2" label="step size point of degree" help="(-degree_step_size) "/>
-    <param name="param_algorithm_svm_svr_degree_stop" type="integer" value="4" label="stopping point of degree" help="(-degree_stop) "/>
-    <param name="param_algorithm_svm_svr_gamma_start" type="float" min="0.0" max="1.0" optional="True" value="1e-05" label="starting point of gamma" help="(-gamma_start) "/>
-    <param name="param_algorithm_svm_svr_gamma_step_size" type="integer" value="100" label="step size point of gamma" help="(-gamma_step_size) "/>
-    <param name="param_algorithm_svm_svr_gamma_stop" type="float" value="0.1" label="stopping point of gamma" help="(-gamma_stop) "/>
-    <param name="param_algorithm_svm_svr_p_start" type="float" value="1e-05" label="starting point of p" help="(-p_start) "/>
-    <param name="param_algorithm_svm_svr_p_step_size" type="integer" value="100" label="step size point of p" help="(-p_step_size) "/>
-    <param name="param_algorithm_svm_svr_p_stop" type="float" value="0.1" label="stopping point of p" help="(-p_stop) "/>
-    <param name="param_algorithm_svm_svr_c_start" type="float" value="0.1" label="starting point of c" help="(-c_start) "/>
-    <param name="param_algorithm_svm_svr_c_step_size" type="integer" value="100" label="step size of c" help="(-c_step_size) "/>
-    <param name="param_algorithm_svm_svr_c_stop" type="integer" value="1000" label="stopping point of c" help="(-c_stop) "/>
-    <param name="param_algorithm_svm_svr_nu_start" type="float" min="0.0" max="1.0" optional="True" value="0.3" label="starting point of nu" help="(-nu_start) "/>
-    <param name="param_algorithm_svm_svr_nu_step_size" type="integer" value="2" label="step size of nu" help="(-nu_step_size) "/>
-    <param name="param_algorithm_svm_svr_nu_stop" type="float" min="0.0" max="1.0" optional="True" value="0.6" label="stopping point of nu" help="(-nu_stop) "/>
-    <expand macro="advanced_options">
-      <param name="param_force" display="radio" type="boolean" truevalue="-force" falsevalue="" checked="false" optional="True" label="Overwrite tool specific checks" help="(-force) "/>
-    </expand>
   </inputs>
   <outputs>
-    <data name="param_model_output_file" format="data"/>
+    <data name="model_output_file" label="${tool.name} on ${on_string}: model_output_file" format="txt"/>
+    <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>
-  <help>Trainer for SVM models as input for SvmTheoreticalSpectrumGenerator
+  <tests>
+    <expand macro="autotest_SvmTheoreticalSpectrumGeneratorTrainer"/>
+    <expand macro="manutest_SvmTheoreticalSpectrumGeneratorTrainer"/>
+  </tests>
+  <help><![CDATA[Trainer for SVM models as input for SvmTheoreticalSpectrumGenerator
 
 
-For more information, visit https://abibuilder.informatik.uni-tuebingen.de/archive/openms/Documentation/release/2.3.0/html/UTILS_SvmTheoreticalSpectrumGeneratorTrainer.html</help>
+For more information, visit http://www.openms.de/documentation/UTILS_SvmTheoreticalSpectrumGeneratorTrainer.html]]></help>
+  <expand macro="references"/>
 </tool>