view FeatureFinderIdentification.xml @ 16:65bdfab68571 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:44:29 +0000
parents 5dc928c83939
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: [Quantitation]-->
<tool id="FeatureFinderIdentification" name="FeatureFinderIdentification" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="21.05">
  <description>Detects features in MS1 data based on peptide identifications</description>
  <macros>
    <token name="@EXECUTABLE@">FeatureFinderIdentification</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 id &&
cp '$id' 'id/${re.sub("[^\w\-_]", "_", $id.element_identifier)}.$gxy2omsext($id.ext)' &&
#if $id_ext:
  mkdir id_ext &&
  cp '$id_ext' 'id_ext/${re.sub("[^\w\-_]", "_", $id_ext.element_identifier)}.$gxy2omsext($id_ext.ext)' &&
#end if
mkdir out &&
#if "lib_out_FLAG" in str($OPTIONAL_OUTPUTS).split(',')
  mkdir lib_out &&
#end if
#if "chrom_out_FLAG" in str($OPTIONAL_OUTPUTS).split(',')
  mkdir chrom_out &&
#end if
#if "candidates_out_FLAG" in str($OPTIONAL_OUTPUTS).split(',')
  mkdir candidates_out &&
#end if
#if "xval_out_FLAG" in str($OPTIONAL_OUTPUTS).split(',')
  mkdir svm_xval_out &&
#end if
## advanced options
  #if $adv_opts.candidates_in:
    mkdir adv_opts.candidates_in &&
    cp '$adv_opts.candidates_in' 'adv_opts.candidates_in/${re.sub("[^\w\-_]", "_", $adv_opts.candidates_in.element_identifier)}.$gxy2omsext($adv_opts.candidates_in.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
'in/${re.sub("[^\w\-_]", "_", $in.element_identifier)}.$gxy2omsext($in.ext)'
-id
'id/${re.sub("[^\w\-_]", "_", $id.element_identifier)}.$gxy2omsext($id.ext)'
#if $id_ext:
  -id_ext
  'id_ext/${re.sub("[^\w\-_]", "_", $id_ext.element_identifier)}.$gxy2omsext($id_ext.ext)'
#end if
-out
'out/output.${gxy2omsext("featurexml")}'
#if "lib_out_FLAG" in str($OPTIONAL_OUTPUTS).split(',')
  -lib_out
  'lib_out/output.${gxy2omsext("traml")}'
#end if
#if "chrom_out_FLAG" in str($OPTIONAL_OUTPUTS).split(',')
  -chrom_out
  'chrom_out/output.${gxy2omsext("mzml")}'
#end if
#if "candidates_out_FLAG" in str($OPTIONAL_OUTPUTS).split(',')
  -candidates_out
  'candidates_out/output.${gxy2omsext("featurexml")}'
#end if
#if "xval_out_FLAG" in str($OPTIONAL_OUTPUTS).split(',')
  -svm:xval_out
  'svm_xval_out/output.${gxy2omsext("csv")}'
#end if
## advanced options
  #if $adv_opts.candidates_in:
    -candidates_in
    'adv_opts.candidates_in/${re.sub("[^\w\-_]", "_", $adv_opts.candidates_in.element_identifier)}.$gxy2omsext($adv_opts.candidates_in.ext)'
  #end if

#if len(str($OPTIONAL_OUTPUTS).split(',')) == 0
  | tee '$stdout'
#end if

## Postprocessing
&& mv 'out/output.${gxy2omsext("featurexml")}' '$out'
#if "lib_out_FLAG" in str($OPTIONAL_OUTPUTS).split(',')
  && mv 'lib_out/output.${gxy2omsext("traml")}' '$lib_out'
#end if
#if "chrom_out_FLAG" in str($OPTIONAL_OUTPUTS).split(',')
  && mv 'chrom_out/output.${gxy2omsext("mzml")}' '$chrom_out'
#end if
#if "candidates_out_FLAG" in str($OPTIONAL_OUTPUTS).split(',')
  && mv 'candidates_out/output.${gxy2omsext("featurexml")}' '$candidates_out'
#end if
#if "xval_out_FLAG" in str($OPTIONAL_OUTPUTS).split(',')
  && mv 'svm_xval_out/output.${gxy2omsext("csv")}' '$svm_xval_out'
#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="mzml" label="Input file: LC-MS raw data" help=" select mzml data sets(s)"/>
    <param argument="-id" type="data" format="idxml" label="Input file: Peptide identifications derived directly from 'in'" help=" select idxml data sets(s)"/>
    <param argument="-id_ext" type="data" format="idxml" optional="true" label="Input file: 'External' peptide identifications" help="(e.g. from aligned runs) select idxml data sets(s)"/>
    <param argument="-quantify_decoys" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Whether decoy peptides should be quantified (true) or skipped (false)" help=""/>
    <param argument="-min_psm_cutoff" type="text" value="none" label="Minimum score for the best PSM of a spectrum to be used as seed" help="Use 'none' for no cutoff">
      <expand macro="list_string_san" name="min_psm_cutoff"/>
    </param>
    <param argument="-add_mass_offset_peptides" type="float" min="0.0" value="0.0" label="If for every peptide (or seed) also an offset peptide is extracted (true)" help="Can be used to downstream to determine MBR false transfer rates. (0.0 = disabled)"/>
    <section name="extract" title="Parameters for ion chromatogram extraction" help="" expanded="false">
      <param name="batch_size" argument="-extract:batch_size" type="integer" min="1" value="5000" label="Nr of peptides used in each batch of chromatogram extraction" help="Smaller values decrease memory usage but increase runtime"/>
      <param name="mz_window" argument="-extract:mz_window" type="float" min="0.0" value="10.0" label="m/z window size for chromatogram extraction (unit: ppm if 1 or greater, else Da/Th)" help=""/>
      <param name="n_isotopes" argument="-extract:n_isotopes" type="integer" min="2" value="2" label="Number of isotopes to include in each peptide assay" help=""/>
      <param name="isotope_pmin" argument="-extract:isotope_pmin" type="float" min="0.0" max="1.0" value="0.0" label="Minimum probability for an isotope to be included in the assay for a peptide" help="If set, this parameter takes precedence over 'extract:n_isotopes'"/>
      <param name="rt_quantile" argument="-extract:rt_quantile" type="float" min="0.0" max="1.0" value="0.95" label="Quantile of the RT deviations between aligned internal and external IDs to use for scaling the RT extraction window" help=""/>
      <param name="rt_window" argument="-extract:rt_window" type="float" min="0.0" value="0.0" label="RT window size (in sec.) for chromatogram extraction" help="If set, this parameter takes precedence over 'extract:rt_quantile'"/>
    </section>
    <section name="detect" title="Parameters for detecting features in extracted ion chromatograms" help="" expanded="false">
      <param name="peak_width" argument="-detect:peak_width" type="float" min="0.0" value="60.0" label="Expected elution peak width in seconds, for smoothing (Gauss filter)" help="Also determines the RT extration window, unless set explicitly via 'extract:rt_window'"/>
      <param name="min_peak_width" argument="-detect:min_peak_width" type="float" min="0.0" value="0.2" label="Minimum elution peak width" help="Absolute value in seconds if 1 or greater, else relative to 'peak_width'"/>
      <param name="signal_to_noise" argument="-detect:signal_to_noise" type="float" min="0.1" value="0.8" label="Signal-to-noise threshold for OpenSWATH feature detection" help=""/>
      <param name="mapping_tolerance" argument="-detect:mapping_tolerance" type="float" min="0.0" value="0.0" label="RT tolerance (plus/minus) for mapping peptide IDs to features" help="Absolute value in seconds if 1 or greater, else relative to the RT span of the feature"/>
    </section>
    <section name="svm" title="Parameters for scoring features using a support vector machine (SVM)" help="" expanded="false">
      <param name="samples" argument="-svm:samples" type="integer" min="0" value="0" label="Number of observations to use for training ('0' for all)" help=""/>
      <param name="no_selection" argument="-svm:no_selection" type="boolean" truevalue="true" falsevalue="false" checked="false" label="By default, roughly the same number of positive and negative observations, with the same intensity distribution, are selected for training" help="This aims to reduce biases, but also reduces the amount of training data. Set this flag to skip this procedure and consider all available observations (subject to 'svm:samples')"/>
      <param name="kernel" argument="-svm:kernel" type="select" label="SVM kernel" help="">
        <option value="RBF" selected="true">RBF</option>
        <option value="linear">linear</option>
        <expand macro="list_string_san" name="kernel"/>
      </param>
      <param name="xval" argument="-svm:xval" type="integer" min="1" value="5" label="Number of partitions for cross-validation (parameter optimization)" help=""/>
      <param name="log2_C" argument="-svm:log2_C" type="text" value="-5.0 -3.0 -1.0 1.0 3.0 5.0 7.0 9.0 11.0 13.0 15.0" label="Values to try for the SVM parameter 'C' during parameter optimization" help="A value 'x' is used as 'C = 2^x' (space separated list, in order to allow for spaces in list items surround them by single quotes)">
        <expand macro="list_float_valsan" name="log2_C"/>
      </param>
      <param name="log2_gamma" argument="-svm:log2_gamma" type="text" value="-15.0 -13.0 -11.0 -9.0 -7.0 -5.0 -3.0 -1.0 1.0 3.0" label="Values to try for the SVM parameter 'gamma' during parameter optimization (RBF kernel only)" help="A value 'x' is used as 'gamma = 2^x' (space separated list, in order to allow for spaces in list items surround them by single quotes)">
        <expand macro="list_float_valsan" name="log2_gamma"/>
      </param>
      <param name="log2_p" argument="-svm:log2_p" type="text" value="-15.0 -12.0 -9.0 -6.0 -3.32192809489 0.0 3.32192809489 6.0 9.0 12.0 15.0" label="Values to try for the SVM parameter 'epsilon' during parameter optimization (epsilon-SVR only)" help="A value 'x' is used as 'epsilon = 2^x' (space separated list, in order to allow for spaces in list items surround them by single quotes)">
        <expand macro="list_float_valsan" name="log2_p"/>
      </param>
      <param name="epsilon" argument="-svm:epsilon" type="float" min="0.0" value="0.001" label="Stopping criterion" help=""/>
      <param name="cache_size" argument="-svm:cache_size" type="float" min="1.0" value="100.0" label="Size of the kernel cache (in MB)" help=""/>
      <param name="no_shrinking" argument="-svm:no_shrinking" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Disable the shrinking heuristics" help=""/>
      <param name="predictors" argument="-svm:predictors" type="text" value="peak_apices_sum,var_xcorr_coelution,var_xcorr_shape,var_library_sangle,var_intensity_score,sn_ratio,var_log_sn_score,var_elution_model_fit_score,xx_lda_prelim_score,var_ms1_isotope_correlation_score,var_ms1_isotope_overlap_score,var_massdev_score,main_var_xx_swath_prelim_score" label="Names of OpenSWATH scores to use as predictors for the SVM (comma-separated list)" help="">
        <expand macro="list_string_san" name="predictors"/>
      </param>
      <param name="min_prob" argument="-svm:min_prob" type="float" min="0.0" max="1.0" value="0.0" label="Minimum probability of correctness, as predicted by the SVM, required to retain a feature candidate" help=""/>
    </section>
    <section name="model" title="Parameters for fitting elution models to features" help="" expanded="false">
      <param name="type" argument="-model:type" type="select" label="Type of elution model to fit to features" help="">
        <option value="symmetric" selected="true">symmetric</option>
        <option value="asymmetric">asymmetric</option>
        <option value="none">none</option>
        <expand macro="list_string_san" name="type"/>
      </param>
      <param name="add_zeros" argument="-model:add_zeros" type="float" min="0.0" value="0.2" label="Add zero-intensity points outside the feature range to constrain the model fit" help="This parameter sets the weight given to these points during model fitting; '0' to disable"/>
      <param name="unweighted_fit" argument="-model:unweighted_fit" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Suppress weighting of mass traces according to theoretical intensities when fitting elution models" help=""/>
      <param name="no_imputation" argument="-model:no_imputation" type="boolean" truevalue="true" falsevalue="false" checked="false" label="If fitting the elution model fails for a feature, set its intensity to zero instead of imputing a value from the initial intensity estimate" help=""/>
      <param name="each_trace" argument="-model:each_trace" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Fit elution model to each individual mass trace" help=""/>
      <section name="check" title="Parameters for checking the validity of elution models (and rejecting them if necessary)" help="" expanded="false">
        <param name="min_area" argument="-model:check:min_area" type="float" min="0.0" value="1.0" label="Lower bound for the area under the curve of a valid elution model" help=""/>
        <param name="boundaries" argument="-model:check:boundaries" type="float" min="0.0" max="1.0" value="0.5" label="Time points corresponding to this fraction of the elution model height have to be within the data region used for model fitting" help=""/>
        <param name="width" argument="-model:check:width" type="float" min="0.0" value="10.0" label="Upper limit for acceptable widths of elution models (Gaussian or EGH), expressed in terms of modified (median-based) z-scores" help="'0' to disable. Not applied to individual mass traces (parameter 'each_trace')"/>
        <param name="asymmetry" argument="-model:check:asymmetry" type="float" min="0.0" value="10.0" label="Upper limit for acceptable asymmetry of elution models (EGH only), expressed in terms of modified (median-based) z-scores" help="'0' to disable. Not applied to individual mass traces (parameter 'each_trace')"/>
      </section>
    </section>
    <section name="EMGScoring" title="Parameters for fitting exp" help="mod. Gaussians to mass traces" expanded="false">
      <param name="max_iteration" argument="-EMGScoring:max_iteration" type="integer" min="1" value="100" label="Maximum number of iterations for EMG fitting" help=""/>
      <param name="init_mom" argument="-EMGScoring:init_mom" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Alternative initial parameters for fitting through method of moments" help=""/>
    </section>
    <expand macro="adv_opts_macro">
      <param argument="-candidates_in" type="data" format="featurexml" optional="true" label="Input file: Feature candidates from a previous run" help="If set, only feature classification and elution model fitting are carried out, if enabled. Many parameters are ignored select featurexml data sets(s)"/>
      <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="lib_out_FLAG">lib_out (Output file: Assay library)</option>
      <option value="chrom_out_FLAG">chrom_out (Output file: Chromatograms)</option>
      <option value="candidates_out_FLAG">candidates_out (Output file: Feature candidates (before filtering and model fitting))</option>
      <option value="xval_out_FLAG">xval_out (Output file: SVM cross-validation (parameter optimization) results)</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="featurexml"/>
    <data name="lib_out" label="${tool.name} on ${on_string}: lib_out" format="traml">
      <filter>OPTIONAL_OUTPUTS is not None and "lib_out_FLAG" in OPTIONAL_OUTPUTS</filter>
    </data>
    <data name="chrom_out" label="${tool.name} on ${on_string}: chrom_out" format="mzml">
      <filter>OPTIONAL_OUTPUTS is not None and "chrom_out_FLAG" in OPTIONAL_OUTPUTS</filter>
    </data>
    <data name="candidates_out" label="${tool.name} on ${on_string}: candidates_out" format="featurexml">
      <filter>OPTIONAL_OUTPUTS is not None and "candidates_out_FLAG" in OPTIONAL_OUTPUTS</filter>
    </data>
    <data name="svm_xval_out" label="${tool.name} on ${on_string}: svm:xval_out" format="csv">
      <filter>OPTIONAL_OUTPUTS is not None and "xval_out_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_FeatureFinderIdentification_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="FeatureFinderIdentification_1_input.mzML"/>
      <param name="id" value="FeatureFinderIdentification_1_input.idXML"/>
      <output name="out" value="FeatureFinderIdentification_1_output.featureXML" compare="sim_size" delta_frac="0.7" ftype="featurexml"/>
      <param name="quantify_decoys" value="false"/>
      <param name="min_psm_cutoff" value="none"/>
      <param name="add_mass_offset_peptides" value="0.0"/>
      <section name="extract">
        <param name="batch_size" value="5000"/>
        <param name="mz_window" value="0.1"/>
        <param name="n_isotopes" value="2"/>
        <param name="isotope_pmin" value="0.0"/>
        <param name="rt_quantile" value="0.95"/>
        <param name="rt_window" value="0.0"/>
      </section>
      <section name="detect">
        <param name="peak_width" value="60.0"/>
        <param name="min_peak_width" value="0.2"/>
        <param name="signal_to_noise" value="0.8"/>
        <param name="mapping_tolerance" value="0.0"/>
      </section>
      <section name="svm">
        <param name="samples" value="0"/>
        <param name="no_selection" value="false"/>
        <param name="kernel" value="RBF"/>
        <param name="xval" value="5"/>
        <param name="log2_C" value="-5.0 -3.0 -1.0 1.0 3.0 5.0 7.0 9.0 11.0 13.0 15.0"/>
        <param name="log2_gamma" value="-15.0 -13.0 -11.0 -9.0 -7.0 -5.0 -3.0 -1.0 1.0 3.0"/>
        <param name="log2_p" value="-15.0 -12.0 -9.0 -6.0 -3.32192809489 0.0 3.32192809489 6.0 9.0 12.0 15.0"/>
        <param name="epsilon" value="0.001"/>
        <param name="cache_size" value="100.0"/>
        <param name="no_shrinking" value="false"/>
        <param name="predictors" value="peak_apices_sum,var_xcorr_coelution,var_xcorr_shape,var_library_sangle,var_intensity_score,sn_ratio,var_log_sn_score,var_elution_model_fit_score,xx_lda_prelim_score,var_ms1_isotope_correlation_score,var_ms1_isotope_overlap_score,var_massdev_score,main_var_xx_swath_prelim_score"/>
        <param name="min_prob" value="0.0"/>
      </section>
      <section name="model">
        <param name="type" value="none"/>
        <param name="add_zeros" value="0.2"/>
        <param name="unweighted_fit" value="false"/>
        <param name="no_imputation" value="false"/>
        <param name="each_trace" value="false"/>
        <section name="check">
          <param name="min_area" value="1.0"/>
          <param name="boundaries" value="0.5"/>
          <param name="width" value="10.0"/>
          <param name="asymmetry" value="10.0"/>
        </section>
      </section>
      <section name="EMGScoring">
        <param name="max_iteration" value="100"/>
        <param name="init_mom" 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_FeatureFinderIdentification_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="FeatureFinderIdentification_1_input.mzML"/>
      <param name="id" value="FeatureFinderIdentification_1_input.idXML"/>
      <output name="out" value="FeatureFinderIdentification_3_output.featureXML" compare="sim_size" delta_frac="0.7" ftype="featurexml"/>
      <param name="quantify_decoys" value="false"/>
      <param name="min_psm_cutoff" value="none"/>
      <param name="add_mass_offset_peptides" value="0.0"/>
      <section name="extract">
        <param name="batch_size" value="5000"/>
        <param name="mz_window" value="0.1"/>
        <param name="n_isotopes" value="2"/>
        <param name="isotope_pmin" value="0.0"/>
        <param name="rt_quantile" value="0.95"/>
        <param name="rt_window" value="0.0"/>
      </section>
      <section name="detect">
        <param name="peak_width" value="60.0"/>
        <param name="min_peak_width" value="0.2"/>
        <param name="signal_to_noise" value="0.8"/>
        <param name="mapping_tolerance" value="0.0"/>
      </section>
      <section name="svm">
        <param name="samples" value="0"/>
        <param name="no_selection" value="false"/>
        <param name="kernel" value="RBF"/>
        <param name="xval" value="5"/>
        <param name="log2_C" value="-5.0 -3.0 -1.0 1.0 3.0 5.0 7.0 9.0 11.0 13.0 15.0"/>
        <param name="log2_gamma" value="-15.0 -13.0 -11.0 -9.0 -7.0 -5.0 -3.0 -1.0 1.0 3.0"/>
        <param name="log2_p" value="-15.0 -12.0 -9.0 -6.0 -3.32192809489 0.0 3.32192809489 6.0 9.0 12.0 15.0"/>
        <param name="epsilon" value="0.001"/>
        <param name="cache_size" value="100.0"/>
        <param name="no_shrinking" value="false"/>
        <param name="predictors" value="peak_apices_sum,var_xcorr_coelution,var_xcorr_shape,var_library_sangle,var_intensity_score,sn_ratio,var_log_sn_score,var_elution_model_fit_score,xx_lda_prelim_score,var_ms1_isotope_correlation_score,var_ms1_isotope_overlap_score,var_massdev_score,main_var_xx_swath_prelim_score"/>
        <param name="min_prob" value="0.0"/>
      </section>
      <section name="model">
        <param name="type" value="symmetric"/>
        <param name="add_zeros" value="0.2"/>
        <param name="unweighted_fit" value="false"/>
        <param name="no_imputation" value="false"/>
        <param name="each_trace" value="false"/>
        <section name="check">
          <param name="min_area" value="1.0"/>
          <param name="boundaries" value="0.5"/>
          <param name="width" value="10.0"/>
          <param name="asymmetry" value="10.0"/>
        </section>
      </section>
      <section name="EMGScoring">
        <param name="max_iteration" value="100"/>
        <param name="init_mom" 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_FeatureFinderIdentification_5 -->
    <test expect_num_outputs="3">
      <section name="adv_opts">
        <param name="force" value="false"/>
        <param name="test" value="true"/>
      </section>
      <param name="in" value="FeatureFinderIdentification_1_input.mzML"/>
      <param name="id" value="FeatureFinderIdentification_1_input.idXML"/>
      <output name="out" value="FeatureFinderIdentification_1_output.featureXML" compare="sim_size" delta_frac="0.7" ftype="featurexml"/>
      <output name="candidates_out" value="FeatureFinderIdentification_5_candidates.featureXML" compare="sim_size" delta_frac="0.7" ftype="featurexml"/>
      <param name="quantify_decoys" value="false"/>
      <param name="min_psm_cutoff" value="none"/>
      <param name="add_mass_offset_peptides" value="0.0"/>
      <section name="extract">
        <param name="batch_size" value="10"/>
        <param name="mz_window" value="0.1"/>
        <param name="n_isotopes" value="2"/>
        <param name="isotope_pmin" value="0.0"/>
        <param name="rt_quantile" value="0.95"/>
        <param name="rt_window" value="0.0"/>
      </section>
      <section name="detect">
        <param name="peak_width" value="60.0"/>
        <param name="min_peak_width" value="0.2"/>
        <param name="signal_to_noise" value="0.8"/>
        <param name="mapping_tolerance" value="0.0"/>
      </section>
      <section name="svm">
        <param name="samples" value="0"/>
        <param name="no_selection" value="false"/>
        <param name="kernel" value="RBF"/>
        <param name="xval" value="5"/>
        <param name="log2_C" value="-5.0 -3.0 -1.0 1.0 3.0 5.0 7.0 9.0 11.0 13.0 15.0"/>
        <param name="log2_gamma" value="-15.0 -13.0 -11.0 -9.0 -7.0 -5.0 -3.0 -1.0 1.0 3.0"/>
        <param name="log2_p" value="-15.0 -12.0 -9.0 -6.0 -3.32192809489 0.0 3.32192809489 6.0 9.0 12.0 15.0"/>
        <param name="epsilon" value="0.001"/>
        <param name="cache_size" value="100.0"/>
        <param name="no_shrinking" value="false"/>
        <param name="predictors" value="peak_apices_sum,var_xcorr_coelution,var_xcorr_shape,var_library_sangle,var_intensity_score,sn_ratio,var_log_sn_score,var_elution_model_fit_score,xx_lda_prelim_score,var_ms1_isotope_correlation_score,var_ms1_isotope_overlap_score,var_massdev_score,main_var_xx_swath_prelim_score"/>
        <param name="min_prob" value="0.0"/>
      </section>
      <section name="model">
        <param name="type" value="none"/>
        <param name="add_zeros" value="0.2"/>
        <param name="unweighted_fit" value="false"/>
        <param name="no_imputation" value="false"/>
        <param name="each_trace" value="false"/>
        <section name="check">
          <param name="min_area" value="1.0"/>
          <param name="boundaries" value="0.5"/>
          <param name="width" value="10.0"/>
          <param name="asymmetry" value="10.0"/>
        </section>
      </section>
      <section name="EMGScoring">
        <param name="max_iteration" value="100"/>
        <param name="init_mom" value="false"/>
      </section>
      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG,candidates_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[Detects features in MS1 data based on peptide identifications.


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