view macros.xml @ 5:5dd25cf1ac0a draft

planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/mfassignr commit 1e98df2131b9b5384ca2e4310f93270eae6f517c
author recetox
date Tue, 22 Oct 2024 07:24:37 +0000
parents 3b09c6e3013b
children 9654573e6889
line wrap: on
line source

<macros>
    <token name="@TOOL_VERSION@">1.1.1</token>
    <xml name="requirements">
        <requirements>
            <requirement type="package" version="@TOOL_VERSION@">r-mfassignr</requirement>
        </requirements>
    </xml>

    <xml name="refs">
        <xrefs>
               <xref type="bio.tools">mfassignr</xref>
        </xrefs>
    </xml>

    <xml name="creator">
        <creator>
            <person
                givenName="Kristina"
                familyName="Gomoryova"
                url="https://github.com/KristinaGomoryova"
                identifier="0000-0003-4407-3917" />
            <person
                givenName="Helge"
                familyName="Hecht"
                url="https://github.com/hechth"
                identifier="0000-0001-6744-996X" />
            <person
                givenName="Zargham"
                familyName="Ahmad"
                url="https://github.com/zargham-ahmad"
                identifier="0000-0002-6096-224X" />
            <organization
                url="https://www.recetox.muni.cz/"
                email="GalaxyToolsDevelopmentandDeployment@space.muni.cz"
                name="RECETOX MUNI" />
        </creator>
    </xml>

    <xml name="kmdnoise_param">
        <param name="input_file" type="data" format="tabular" label="Input data"
               help= "Input data frame, first column is mass, second column is intensity"/>
        <param name="upper_y" type="float" label="upper limit for the y intercept" value="0.2"
               help= "The upper y-intercept value to isolate noise peaks in the equation for the KMD plot: y = 0.001123*x + b. Default value is set to 0.2, so that it does not interact with any potentially double-charged peaks."/>
        <param name="lower_y" type="float" label="lower limit for the y intercept" value="0.05"
               help="The lower y-intercept value to isolate noise peaks in the equation for the KMD plot: y = 0.001123*x + b. Default value is set to 0.05 to ensure no analyte peaks are incorporated into the noise estimation."/>
        <param name="upper_x" optional="true" type="float" label="upper limit for the x intercept"
               help="If not set, it defaults to maximum mass in the mass spectrum."/>
        <param name="lower_x" optional="true" type="float" label="lower limit for the x intercept"
               help="If not set, it defaults to minimum mass in the mass spectrum."/>
    </xml>

    <xml name="histnoise_param">
        <param name="input_file" type="data" format="tabular" label="Input data"
               help= "Input data frame, first column is mass, second column is intensity"/>
        <param name="SN" type="float" label="signal-to-noise threshold" value="0"
               help= "A numeric value for situations where a predefined noise value is desired, default is 0"/>
        <param name="bin" type="float" label="bindwidth of the histogram" value="0.01"
               help= "A numeric value determining the binwidth of the histogram, default is 0.01"/>
    </xml>

    <xml name="noise_threshold_params">
       <param name="sn_ratio" type="float" label="SN ratio" value="6"
               help= "Noise multiplier. Recommended value is 6."/>
        <param name="kmdn" type="float" label="Estimated noise" value="0"
               help= "Estimated noise, either from the KMDNoise or HistNoise function."/>
    </xml>

    <xml name="snplot_param">
        <param name="input_file" type="data" format="tabular" label="Input data"
               help= "Input data frame, first column is mass, second column is intensity"/>
        <expand macro="noise_threshold_params" />
        <param name="mass" type="float" label="mass" value="300"
               help= "A numeric value setting a centerpoint to look at the mass spectrum"/>
        <param name="window_x" type="float" label="window.x" value="0.5"
               help= "A numeric value setting the +/- range around the mass centerpoint, default is 0.5"/>
        <param name="window_y" type="float" label="window.y" value="10"  
               help= "A numeric value setting the y axis value for the plot, determined by multiplying the cut by this value"/> 
    </xml>

    <xml name="ionmode_param">
       <param name="ionmode" type="select" display="radio" label="Ion mode" help= "The ionization mode.">
              <option value="neg" >negative</option>
              <option value="pos" selected="true">positive</option> 
        </param>
    </xml>

    <xml name="mfassign_required_shared">
        <param name="ppm_err" type="integer" label="ppm_err"
               help= "Error tolerance (ppm) for formula assignment" value="3"/>
        <expand macro="ionmode_param" />
        <expand macro="noise_threshold_params" />
        <param name="lowMW" type="float" label="Lower limit of molecular mass to be assigned" value="100"
               help= "Lower limit of molecular mass to be assigned."/>
        <param name="highMW" type="float" label="Upper limit of molecular mass to be assigned" value="1000"
               help= "Upper limit of molecular mass to be assigned."/>
    </xml>

    <xml name="mfassign_elements_shared">
        <param name="Mx" type="integer" label="Amount of Sodium adduct" value="0" help= "Sets the amount of Sodium adduct to be used in assignment."/>       
        <param name="NH4x" type="integer" label="Amount of Ammonium adduct" value="0" help= "Sets the amount of Ammonium adduct to be used in assignment."/>       
        <param name="Ox" type="integer" label="Maximum number of oxygen looked for in the CHOFIT core" value="30" help= "Sets the maximum number of oxygen looked for in the CHOFIT core, it limits the number of loops performed."/>  
    </xml>

    <xml name="mfassign_ratios_shared">
       <param name="O_Cmin" type="float" label="Minimum allowed O/C ratio" value="0" help= "Sets the minimum allowed oxygen to carbon ratio."/> 
       <param name="O_Cmax" type="float" label="Upper limit for O/C ratio" value="2.5" help= "Sets the upper limit for oxygen to carbon ratio."/> 
       <param name="H_Cmin" type="float" label="Lower limit for H/C ratio" value="0.1" help= "Sets the lower limit for hydrogen to carbon ratio."/>     
       <param name="H_Cmax" type="float" label="Upper limit for H/C ratio" value="3" help= "Sets the upper limit for hydrogen to carbon ratio for assigned formulas."/>
    </xml>

    <xml name="mfassign_advanced_shared">
       <param name="Zx" type="integer" label="Amount of charge" min="1" max="5" value="1" help= "Sets the amount of charge to be used in assignment."/>  
       <param name="assign_typeof_ions" type="select" display="radio" label="Assign odd electron ions based on the ionization mode?" help="This parameter determines whether to assign either positive mode odd electron ions (if ionMode is positive) or negative mode odd electron ions (if ionMode is negative).">
              <option value="yes">yes</option>
              <option value="no" selected="true">no</option>
       </param>        
       <param name="DBEOmin" type="float" label="Lower limit for DBE minus oxygen QA parameter" value="-13" help= "Sets the lower limit for double bond equivalent (DBE) minus oxygen QA parameter."/>
       <param name="DBEOmax" type="float" label="Upper limit for DBE minus oxygen QA parameter" value="13" help= "Sets the upper limit for double bond equivalent (DBE) minus oxygen QA parameter."/>    
       <param name="Omin" type="integer" min="0" label="Lower limit for number of O in assigned formula" value="0" help= "Sets the lower limit for oxygen number in assigned formula."/>    
       <param name="max_def" type="float" min="0" max="1" label="Upper limit for KMD" value="0.9" help= "Sets the upper limit of mass defect for using floor() instead of round() for KMD."/>      
       <param name="min_def" type="float" min="0" max="1" label="Lower limit for KMD" value="0.5" help= "Sets the lower limit of mass defect for using floor() instead of round() for KMD."/>  
       <param name = "HetCut" type="select" display="radio" label="Turn on the high heteroatom QA parameter?" help= "HetCut turns on or off the high heteroatom QA parameter.">
              <option value="on">yes</option>
              <option value="off" selected="true">no</option> 
       </param>  
       <param name = "NMScut" type="select" display="radio" label="NMScut" help= "Turn on the nominal mass series QA parameter?">
              <option value="on" selected="true">yes</option>
              <option value="off">no</option> 
       </param>  
       <param name="nLoop" type="integer" min="1" label="Number of times the KMD and z* series assignment loops" value="5" help= "Sets the number of times the KMD and z* series assignment loops."/>  
       <param name="ambig_bool" type="select" display="radio" label="Turn on the increased ambiguity for assignment?" help= "Turns on or off increased ambiguity for assignment.">
              <option value="on">yes</option>
              <option value="off" selected="true">no</option> 
       </param> 
       <param name = "MSMS" type="select" display="radio" label="Turn on the CH2 KMD prescreening before initial assignment?" help= "Turns on or off CH2 KMD prescreening before initial assignment.">
              <option value="on" >yes</option>
              <option value="off" selected="true">no</option> 
       </param>
    </xml>

    <xml name="mfassign_valence_param">
          <param name="Sval" type="integer" label="Valence of Sulphur" value="2" help= "Sets the valence of Sulfur."/>
          <param name="Nval" type="integer" label="Valence of Nitrogen" value="3" help= "Sets the valence of Nitrogen."/>
          <param name="S34val" type="integer" label="Valence of Sulphur 34" value="2" help= "Sets the valence of Sulfur 34."/>
          <param name="N15val" type="integer" label="Valence of Nitrogen 15" value="3" help= "Sets the valence of Nitrogen 15."/>
          <param name="Pval" type="integer" label="Valence of Phosphorus" value="5" help= "Sets the valence of Phosphorus."/>
    </xml>

    <xml name="mfassigncho_param">
        <expand macro="mfassign_required_shared" />
        <section name="advanced" title="Advanced" expanded="false">
          <section name="elements_amount" title="Set amount of elements" expanded="false">
              <param name="Ex" type="integer" label="Amount of Chlorine 37" value="0" help= "Sets the amount of Chlorine 37 to be used in assignment."/>  
              <expand macro="mfassign_elements_shared" />
          </section>
          <section name="set_ratios" title="Set the ratios" expanded="false">
              <expand macro="mfassign_ratios_shared" />  
          </section>
          <section name="other_params" title="Other" expanded="false">
              <expand macro="mfassign_advanced_shared" />
              <param name="DeNovo" type="float" label="De novo cut point for the data" value="1000" help= "Sets the de novo cut point for the data."/> 
          </section> 
        </section>
    </xml>
    
    <xml name="mfassign_param">
        <expand macro="mfassign_required_shared" />
        <section name="advanced" title="Advanced" expanded="false">
          <section name="elements_amount" title="Set amount of elements" expanded="false">
              <param name="Nx" type="integer" label="Amount of Nitrogen 14" value="0" help= "Sets the maximum allowable number of Nitrogen 14 to be used in assign"/>  
              <param name="Sx" type="integer" label="Amount of Sulphur 32" value="0" help= "Sets the maximum allowable number of Sulfur 32 to be used in assign"/>  
              <param name="Px" type="integer" label="Amount of Phosphorus 31" value="0" help= "Sets the maximum allowable number of Phosphorus 31 to be used in assign"/>  
              <param name="Ex" type="integer" label="Amount of Carbon 13" value="0" help= "Sets the amount of Carbon 13 to be used in assignment."/>  
              <param name="S34x" type="integer" label="Amount of Sulfur 34" value="0" help= "Sets the amount of Sulfur 34 to be used in assignment."/>  
              <param name="N15x" type="integer" label="Amount of Nitrogen 15" value="0" help= "Sets the amount of Nitrogen 15 to be used in assignment."/>  
              <param name="Dx" type="integer" label="Amount of Deuterium" value="0" help= "Sets the amount of Deuterium to be used in assignment."/>
              <param name="Clx" type="integer" label="Amount of Chlorine" value="0" help= "Sets the amount of Chlorine to be used in assignment."/>
              <param name="Fx" type="integer" label="Amount of Fluorine" value="0" help= "Sets the amount of Fluorine to be used in assignment."/>
              <param name="Cl37x" type="integer" label="Amount of Chlorine 37" value="0" help= "Sets the amount of Chlorine 37 to be used in assignment."/>
              <param name="Br81x" type="integer" label="Amount of Bromine 81" value="0" help= "Sets the amount of Bromine 81 to be used in assignment."/>
              <param name="Ix" type="integer" label="Amount of Iodine 127" value="0" help= "Sets the amount of Iodine 127 to be used in assignment."/>
              <expand macro="mfassign_elements_shared" />
          </section>

          <section name="set_valence" title="Set the valence" expanded="false">
              <expand macro="mfassign_valence_param"/>
          </section>

          <section name="set_ratios" title="Set the ratios" expanded="false">
              <expand macro="mfassign_ratios_shared" />  
              <param name="S34_abund" type="integer" min="0" max="100" label="Maximum 34S/32S isotope ratio" value="30" help= "Sets the maximum 34S/32S isotope ratio (in percent) for isotope matching."/>
              <param name="C13_abund" type="integer" min="0" max="100" label="Maximum 13C/12C isotope ratio" value="60" help= "Sets the maximum 13C/12C isotope ratio (in percent) for isotope matching."/>
          </section>

          <section name="other_params" title="Other" expanded="false">
              <param name="iso_err" type="integer" min="0" max="20" label="Error tolerance (ppm) for polyisotope matching" value="3" help= "Sets the the error tolerance (ppm) for polyisotope matching."/>
              <expand macro="mfassign_advanced_shared" />
               <param name = "SulfCheck" type="select" display="radio" label="Turn on the sulfur isotope check?" help= "Turns on or off the sulfur isotope check QA parameter.c">
                     <option value="on" selected="true">yes</option>
                     <option value="off">no</option> 
              </param>  
              <param name = "N3corr" type="select" display="radio" label="Turn on the correction of N3OS monoisotopic assignments to 13C assignment?" help= "Turns on or off correction of N3OS monoisotopic assignments to 13C assignment.">
                     <option value="on" selected="true">yes</option>
                     <option value="off">no</option> 
               </param>
              <param name="DeNovo" type="float" label="De novo cut point for the data" value="300" help= "Sets the de novo cut point for the data."/>  
          </section>
       </section>
    </xml>

    <xml name="findrecalseries_param">
        <param name="input_file" type="data" format="tabular" label="Input data"
               help= "Recalibration series, output from RecalList"/>
        <param name="global_min" type="float" label="Global min" value="0" min="0"
               help= "A lower bound of the instrument m/z range."/>
        <param name="global_max" type="float" label="Global max" value="1000" min="0"
               help= "A higher bound of the instrument m/z range."/>
        <param name="number_of_combinations" type="integer" label="Number of combinations"
               help= "Combinations of how many series should be computed." value="5"/>
        <param name="abundance_score_threshold" type="float" label="Abundance score threshold" value="100"
               help= "A threshold for filtering abundance score parameter. The series with higher values are better."/>
        <param name="peak_distance_threshold" type="float" label="Peak distance threshold" value="2"
               help= "A threshold for the peak distance parameter. The closer this value is to 1, the better."/>
        <param name="coverage_threshold" type="integer" label="How many % of the m/z range should be covered."
               help= "How many % of the m/z range should be covered." value="90"/>
        <param name="fill_series" type="boolean" truevalue="TRUE" falsevalue="FALSE" label="Whether to return top 10 unique series (TRUE) or series only from the best combination."
               help= "If TRUE, top 10 unique series will be returned, otherwise only the series from the best
               combination will be returned." value="false"/>
    </xml>

    <xml name="recal_param">
        <param name="input_file" type="data" format="tabular" label="Input data (Output from MFAssign)"
               help= "Input data frame, the output from MFAssign or MFAssignCHO"/>
       <param name="series" type="data" format="tabular" label="Calibration series (Output from RecalList)"
               help= "Calibration series (Output from RecalList). At maximum the first 10 rows are used."/>
        <param name="peaks" type="data" format="tabular" label="Peaks dataframe (Mono from IsoFiltR)"
               help= "Peaks data frame, the Mono output from IsoFiltR"/>              
        <param name="isopeaks" type="data" format="tabular" label="Isopeaks dataframe (Iso from IsoFiltR)" 
               help= "Isopeaks data frame, the Mono output from IsoFiltR"/>
        <expand macro="ionmode_param" />
        <expand macro="noise_threshold_params" />
        <param name="mzRange" type="float" label="Mass windows used for the segmented recalibration" value="30"
               help= "Mass windows used for the segmented recalibration"/>
        <param name="step_O" type="float" label="Number of oxygen steps for formula extension" value="3"
               help= "Number of oxygen steps for formula extension"/>
        <param name="step_H2" type="float" label="Number of H2 steps for formula extension" value="5"
               help= "Number of H2 steps for formula extension"/>
         <param name="CalPeak" type="float" label="Maximum allowed recalibrant peaks per mzRange defined segment" value="150" help= "Maximum allowed recalibrant peaks per mzRange defined segment"/>      

    </xml>

    <xml name="isofiltr_param">
        <param name="peaks" type="data" format="tabular" label="Input Peak Data"
        help="The input data frame containing abundance and peak mass."/>
        <expand macro="noise_threshold_params" />
        <param name="Carbrat" type="float" value="60" min="5" label="Maximum 13C/12C Ratio"
        help="Sets the maximum allowed ratio for matching 13C isotopes."/>
        <param name="Sulfrat" type="float" value="30" label="Maximum 34S/32S Ratio"
        help="Sets the maximum allowed ratio for matching 34S isotopes."/>
        <param name="Sulferr" type="float" value="5" label="Maximum Error for 34S Matching (ppm)"
        help="Sets the maximum allowed error (ppm) for 34S mass matching."/>
        <param name="Carberr" type="float" value="5" label="Maximum Error for 13C Matching (ppm)"
        help="Sets the maximum allowed error (ppm) for 13C mass matching."/>
    </xml>

    <xml name="citations">
        <citations>
            <citation type="doi">10.1016/j.envres.2020.110114</citation>
        </citations>        
    </xml>

</macros>