view Epifany.xml @ 4:d14807313a6a draft

"planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/openms commit 3cafa1cc1ea87eb7a0dc0e7aae013780c3565178"
author galaxyp
date Sat, 05 Dec 2020 19:50:42 +0000
parents 01cbcbe21ce8
children eba79505bb65
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: [Utilities]-->
<tool id="Epifany" name="Epifany" version="@TOOL_VERSION@+galaxy0" profile="20.05">
  <description>Runs a Bayesian protein inference.</description>
  <macros>
    <token name="@EXECUTABLE@">Epifany</token>
    <import>macros.xml</import>
    <import>macros_autotest.xml</import>
    <import>macros_test.xml</import>
  </macros>
  <expand macro="requirements"/>
  <expand macro="stdio"/>
  <command detect_errors="exit_code"><![CDATA[@QUOTE_FOO@
@EXT_FOO@
#import re

## Preprocessing
mkdir in &&
${ ' '.join(["ln -s '%s' 'in/%s.%s' &&" % (_, re.sub('[^\w\-_]', '_', _.element_identifier), $gxy2omsext(_.ext)) for _ in $in if _]) }
#if $exp_design:
  mkdir exp_design &&
  ln -s '$exp_design' 'exp_design/${re.sub("[^\w\-_]", "_", $exp_design.element_identifier)}.$gxy2omsext($exp_design.ext)' &&
#end if
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
${' '.join(["'in/%s.%s'"%(re.sub('[^\w\-_]', '_', _.element_identifier), $gxy2omsext(_.ext)) for _ in $in if _])}
#if $exp_design:
  -exp_design
  'exp_design/${re.sub("[^\w\-_]", "_", $exp_design.element_identifier)}.$gxy2omsext($exp_design.ext)'
#end if
-out
'out/output.${out_type}'

## Postprocessing
&& mv 'out/output.${out_type}' '$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 name="in" argument="-in" type="data" format="consensusxml,idxml" multiple="true" optional="false" label="Input: identification results" help=" select consensusxml,idxml data sets(s)"/>
    <param name="exp_design" argument="-exp_design" type="data" format="tabular" optional="true" label="(Currently unused) Input: experimental design" help=" select tabular data sets(s)"/>
    <param name="out_type" argument="-out_type" display="radio" type="select" optional="false" label="Output type: auto detected by file extension but can be overwritten here" help="">
      <option value="consensusXML">consensusxml</option>
      <option value="idXML">idxml</option>
      <expand macro="list_string_san"/>
    </param>
    <param name="protein_fdr" argument="-protein_fdr" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Additionally calculate the target-decoy FDR on protein-level based on the posteriors" help=""/>
    <param name="greedy_group_resolution" argument="-greedy_group_resolution" display="radio" type="select" optional="false" label="Post-process inference output with greedy resolution of shared peptides based on the parent protein probabilities" help="Also adds the resolved ambiguity groups to output">
      <option value="none" selected="true">none</option>
      <option value="remove_associations_only">remove_associations_only</option>
      <option value="remove_proteins_wo_evidence">remove_proteins_wo_evidence</option>
      <expand macro="list_string_san"/>
    </param>
    <param name="max_psms_extreme_probability" argument="-max_psms_extreme_probability" type="float" optional="true" value="1.0" label="Set PSMs with probability higher than this to this maximum probability" help=""/>
    <section name="algorithm" title="Parameters for the Algorithm section" help="" expanded="false">
      <param name="psm_probability_cutoff" argument="-algorithm:psm_probability_cutoff" type="float" optional="true" min="0.0" max="1.0" value="0.001" label="Remove PSMs with probabilities less than this cutoff" help=""/>
      <param name="top_PSMs" argument="-algorithm:top_PSMs" type="integer" optional="true" min="0" value="1" label="Consider only top X PSMs per spectrum" help="0 considers all"/>
      <param name="keep_best_PSM_only" argument="-algorithm:keep_best_PSM_only" type="boolean" truevalue="true" falsevalue="false" checked="true" label="Epifany uses the best PSM per peptide for inference" help="Discard the rest (true) or keepe.g. for quantification/reporting?"/>
      <param name="update_PSM_probabilities" argument="-algorithm:update_PSM_probabilities" type="boolean" truevalue="true" falsevalue="false" checked="true" label="(Experimental:) Update PSM probabilities with their posteriors under consideration of the protein probabilities" help=""/>
      <param name="user_defined_priors" argument="-algorithm:user_defined_priors" type="boolean" truevalue="true" falsevalue="false" checked="false" label="(Experimental:) Uses the current protein scores as user-defined priors" help=""/>
      <param name="annotate_group_probabilities" argument="-algorithm:annotate_group_probabilities" type="boolean" truevalue="true" falsevalue="false" checked="true" label="Annotates group probabilities for indistinguishable protein groups (indistinguishable by experimentally observed PSMs)" help=""/>
      <param name="use_ids_outside_features" argument="-algorithm:use_ids_outside_features" type="boolean" truevalue="true" falsevalue="false" checked="false" label="(Only consensusXML) Also use IDs without associated features for inference?" help=""/>
      <section name="model_parameters" title="Model parameters for the Bayesian network" help="" expanded="false">
        <param name="prot_prior" argument="-algorithm:model_parameters:prot_prior" type="float" optional="true" min="-1.0" max="1.0" value="-1.0" label="Protein prior probability ('gamma' parameter)" help="Negative values enable grid search for this param"/>
        <param name="pep_emission" argument="-algorithm:model_parameters:pep_emission" type="float" optional="true" min="-1.0" max="1.0" value="-1.0" label="Peptide emission probability ('alpha' parameter)" help="Negative values enable grid search for this param"/>
        <param name="pep_spurious_emission" argument="-algorithm:model_parameters:pep_spurious_emission" type="float" optional="true" min="-1.0" max="1.0" value="-1.0" label="Spurious peptide identification probability ('beta' parameter)" help="Usually much smaller than emission from proteins. Negative values enable grid search for this param"/>
        <param name="pep_prior" argument="-algorithm:model_parameters:pep_prior" type="float" optional="true" min="0.0" max="1.0" value="0.1" label="Peptide prior probability (experimental, should be covered by combinations of the other params)" help=""/>
        <param name="regularize" argument="-algorithm:model_parameters:regularize" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Regularize the number of proteins that produce a peptide together (experimental, should be activated when using higher p-norms)" help=""/>
        <param name="extended_model" argument="-algorithm:model_parameters:extended_model" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Uses information from different peptidoforms also across runs (automatically activated if an experimental design is given!)" help=""/>
      </section>
      <section name="loopy_belief_propagation" title="Settings for the loopy belief propagation algorithm" help="" expanded="false">
        <param name="scheduling_type" argument="-algorithm:loopy_belief_propagation:scheduling_type" display="radio" type="select" optional="false" label="(Not used yet) How to pick the next message: priority = based on difference to last message (higher = more important)" help="fifo = first in first out. subtree = message passing follows a random spanning tree in each iteration">
          <option value="priority" selected="true">priority</option>
          <option value="fifo">fifo</option>
          <option value="subtree">subtree</option>
          <expand macro="list_string_san"/>
        </param>
        <param name="convergence_threshold" argument="-algorithm:loopy_belief_propagation:convergence_threshold" type="float" optional="true" min="1e-09" max="1.0" value="1e-05" label="Initial threshold under which MSE difference a message is considered to be converged" help=""/>
        <param name="dampening_lambda" argument="-algorithm:loopy_belief_propagation:dampening_lambda" type="float" optional="true" min="0.0" max="0.49999" value="0.001" label="Initial value for how strongly should messages be updated in each step" help="0 = new message overwrites old completely (no dampening; only recommended for trees),0.5 = equal contribution of old and new message (stay below that),In-between it will be a convex combination of both. Prevents oscillations but hinders convergence"/>
        <param name="max_nr_iterations" argument="-algorithm:loopy_belief_propagation:max_nr_iterations" type="integer" optional="true" value="2147483647" label="(Usually auto-determined by estimated but you can set a hard limit here)" help="If not all messages converge, how many iterations should be done at max per connected component?"/>
        <param name="p_norm_inference" argument="-algorithm:loopy_belief_propagation:p_norm_inference" type="float" optional="true" value="1.0" label="P-norm used for marginalization of multidimensional factors" help="1 == sum-product inference (all configurations vote equally) (default),&lt;= 0 == infinity = max-product inference (only best configurations propagate)The higher the value the more important high probability configurations get"/>
      </section>
      <section name="param_optimize" title="Settings for the parameter optimization" help="" expanded="false">
        <param name="aucweight" argument="-algorithm:param_optimize:aucweight" type="float" optional="true" min="0.0" max="1.0" value="0.3" label="How important is target decoy AUC vs calibration of the posteriors" help="0 = maximize calibration only, 1 = maximize AUC only, between = convex combination"/>
        <param name="conservative_fdr" argument="-algorithm:param_optimize:conservative_fdr" type="boolean" truevalue="true" falsevalue="false" checked="true" label="Use (D+1)/(T) instead of (D+1)/(T+D) for parameter estimation" help=""/>
        <param name="regularized_fdr" argument="-algorithm:param_optimize:regularized_fdr" type="boolean" truevalue="true" falsevalue="false" checked="true" label="Use a regularized FDR for proteins without unique peptides" help=""/>
      </section>
    </section>
    <expand macro="adv_opts_macro">
      <param name="conservative_fdr" argument="-conservative_fdr" type="boolean" truevalue="true" falsevalue="false" checked="true" label="Use (D+1)/(T) instead of (D+1)/(T+D) for reporting protein FDRs" help=""/>
      <param name="min_psms_extreme_probability" argument="-min_psms_extreme_probability" type="float" optional="true" value="0.0" label="Set PSMs with probability lower than this to this minimum probability" help=""/>
      <param name="force" argument="-force" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Overrides 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" 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">
      <change_format>
        <when input="out_type" value="consensusXML" format="consensusxml"/>
        <when input="out_type" value="idXML" format="idxml"/>
      </change_format>
    </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>
    <expand macro="autotest_Epifany"/>
    <expand macro="manutest_Epifany"/>
  </tests>
  <help><![CDATA[Runs a Bayesian protein inference.


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