Repository revision
11:e527a8a430dd

Repository 'openms_mapalignerposeclustering'
hg clone https://toolshed.g2.bx.psu.edu/repos/galaxyp/openms_mapalignerposeclustering

MapAlignerPoseClustering tool metadata
Miscellaneous
Corrects retention time distortions between maps using a pose clustering approach
MapAlignerPoseClustering
toolshed.g2.bx.psu.edu/repos/galaxyp/openms_mapalignerposeclustering/MapAlignerPoseClustering/3.1+galaxy0
3.1+galaxy0
None
True
Version lineage of this tool (guids ordered most recent to oldest)
toolshed.g2.bx.psu.edu/repos/galaxyp/openms_mapalignerposeclustering/MapAlignerPoseClustering/3.1+galaxy0 (this tool)
toolshed.g2.bx.psu.edu/repos/galaxyp/openms_mapalignerposeclustering/MapAlignerPoseClustering/2.8+galaxy0
toolshed.g2.bx.psu.edu/repos/galaxyp/openms_mapalignerposeclustering/MapAlignerPoseClustering/2.6+galaxy0
toolshed.g2.bx.psu.edu/repos/galaxyp/openms_mapalignerposeclustering/MapAlignerPoseClustering/2.5+galaxy0
toolshed.g2.bx.psu.edu/repos/galaxyp/openms_mapalignerposeclustering/MapAlignerPoseClustering/2.3.0
toolshed.g2.bx.psu.edu/repos/galaxyp/openms_mapalignerposeclustering/MapAlignerPoseClustering/2.2.0
MapAlignerPoseClustering
Requirements (dependencies defined in the <requirements> tag set)
name version type
openms 3.1 package
openms-thirdparty 3.1 package
blast 2.14.1 package
ctdopts 1.5 package
Additional information about this tool
#def quote(s):
    #set $s = [ _ for _ in $s.split(" ") if _ != "" ]
    #set $q = False
    #for $i, $p in enumerate($s):
        #if $p == "":
            #continue
        #end if
        #if $p.startswith('"'):
            #set $q = True
        #end if
##        #if p.startswith('-'):
##            #set p = "\\" + p
##        #elif p.startswith('"-'):
##            #set p = "\\" + p[1:]
##        #end if
        #if not $q:
            #set $s[i] = '"%s"' % p
        #end if
        #if $p.endswith('"'):
            #set $q = False
        #end if
    #end for
    #return " ".join($s)
#end def
  
#def oms2gxyext(o)
    #set m={'txt': 'txt', 'tsv': 'tabular', 'bioml': 'xml', 'consensusXML': 'consensusxml', 'csv': 'csv', 'dta': 'dta', 'dta2d': 'dta2d', 'edta': 'edta', 'fa': 'fasta', 'fas': 'fasta', 'fasta': 'fasta', 'FASTA': 'fasta', 'featureXML': 'featurexml', 'featurexml': 'featurexml', 'html': 'html', 'HTML': 'html', 'idXML': 'idxml', 'json': 'json', 'kroenik': 'kroenik', 'mascotXML': 'mascotxml', 'mgf': 'mgf', 'mrm': 'mrm', 'ms': 'sirius.ms', 'ms2': 'ms2', 'msp': 'msp', 'mzData': 'mzdata', 'mzid': 'mzid', 'mzML': 'mzml', 'mzml': 'mzml', 'mzq': 'mzq', 'mzQC': 'mzqc', 'mzTab': 'mztab', 'mzXML': 'mzxml', 'novor': 'txt', 'obo': 'obo', 'oms': 'sqlite', 'omssaXML': 'idxml', 'osw': 'osw', 'OSW': 'osw', 'params': 'txt', 'paramXML': 'paramxml', 'peplist': 'peplist', 'pep.xml': 'pepxml', 'pepXML': 'pepxml', 'png': 'png', 'PNG': 'png', 'protXML': 'protxml', 'psms': 'psms', 'pqp': 'pqp', 'qcML': 'qcml', 'spec.xml': 'spec.xml', 'splib': 'splib', 'sqMass': 'sqmass', 'tandem.xml': 'tandem', 'trafoXML': 'trafoxml', 'traML': 'traml', 'TraML': 'traml', 'tab': 'tabular', 'raw': 'thermo.raw', 'xls': 'tsv', 'XML': 'xml', 'xml': 'xml', 'xquest.xml': 'xquest.xml', 'xsd': 'xsd', 'zip': 'zip'}
    #return m[o]
#end def
#def gxy2omsext(g)
    #set m={'txt': 'txt', 'tabular': 'tsv', 'xml': 'bioml', 'consensusxml': 'consensusXML', 'csv': 'csv', 'dta': 'dta', 'dta2d': 'dta2d', 'edta': 'edta', 'fasta': 'fa', 'featurexml': 'featureXML', 'html': 'html', 'idxml': 'idXML', 'json': 'json', 'kroenik': 'kroenik', 'mascotxml': 'mascotXML', 'mgf': 'mgf', 'mrm': 'mrm', 'sirius.ms': 'ms', 'ms2': 'ms2', 'msp': 'msp', 'mzdata': 'mzData', 'mzid': 'mzid', 'mzml': 'mzML', 'mzq': 'mzq', 'mzqc': 'mzQC', 'mztab': 'mzTab', 'mzxml': 'mzXML', 'obo': 'obo', 'sqlite': 'oms', 'osw': 'osw', 'paramxml': 'paramXML', 'peff': 'fasta', 'peplist': 'peplist', 'pepxml': 'pep.xml', 'png': 'png', 'protxml': 'protXML', 'psms': 'psms', 'pqp': 'pqp', 'qcml': 'qcML', 'spec.xml': 'spec.xml', 'splib': 'splib', 'sqmass': 'sqMass', 'tandem': 'tandem.xml', 'trafoxml': 'trafoXML', 'traml': 'traML', 'thermo.raw': 'raw', 'tsv': 'xls', 'xquest.xml': 'xquest.xml', 'xsd': 'xsd', 'zip': 'zip'}
    #return m[g]
#end def

#import re

## Preprocessing
mkdir in_cond.in &&
#if $in_cond.in_select == "no"
mkdir ${' '.join(["'in_cond.in/%s'" % (i) for i, f in enumerate($in_cond.in) if f])} && 
${' '.join(["cp '%s' 'in_cond.in/%s/%s.%s' && " % (f, i, re.sub('[^\w\-_]', '_', f.element_identifier), $gxy2omsext(f.ext)) for i, f in enumerate($in_cond.in) if f])}
#else
cp '$in_cond.in' 'in_cond.in/${re.sub("[^\w\-_]", "_", $in_cond.in.element_identifier)}.$gxy2omsext($in_cond.in.ext)' &&
#end if
#if "out_FLAG" in str($OPTIONAL_OUTPUTS).split(',')
  mkdir out &&
  mkdir ${' '.join(["'out/%s'" % (i) for i, f in enumerate($in_cond.in) if f])} && 
#end if
#if "trafo_out_FLAG" in str($OPTIONAL_OUTPUTS).split(',')
  mkdir trafo_out &&
  mkdir ${' '.join(["'trafo_out/%s'" % (i) for i, f in enumerate($in_cond.in) if f])} && 
#end if
#if $reference.file:
  mkdir reference.file &&
  cp '$reference.file' 'reference.file/${re.sub("[^\w\-_]", "_", $reference.file.element_identifier)}.$gxy2omsext($reference.file.ext)' &&
#end if

## Main program call

set -o pipefail &&
MapAlignerPoseClustering -write_ctd ./ &&
python3 '$__tool_directory__/fill_ctd.py' 'MapAlignerPoseClustering.ctd' '$args_json' '$hardcoded_json' &&
MapAlignerPoseClustering -ini MapAlignerPoseClustering.ctd
-in
#if $in_cond.in_select == "no"
${' '.join(["'in_cond.in/%s/%s.%s'"%(i, re.sub('[^\w\-_]', '_', f.element_identifier), $gxy2omsext(f.ext)) for i, f in enumerate($in_cond.in) if f])}
#else
'in_cond.in/${re.sub("[^\w\-_]", "_", $in_cond.in.element_identifier)}.$gxy2omsext($in_cond.in.ext)'
#end if
#if "out_FLAG" in str($OPTIONAL_OUTPUTS).split(',')
  -out
  ${' '.join(["'out/%s/%s.%s'"%(i, re.sub('[^\w\-_]', '_', f.element_identifier), f.ext) for i, f in enumerate($in_cond.in) if f])}
#end if
#if "trafo_out_FLAG" in str($OPTIONAL_OUTPUTS).split(',')
  -trafo_out
  ${' '.join(["'trafo_out/%s/%s.%s'"%(i, re.sub('[^\w\-_]', '_', f.element_identifier), $gxy2omsext("trafoxml")) for i, f in enumerate($in_cond.in) if f])}
#end if
#if $reference.file:
  -reference:file
  'reference.file/${re.sub("[^\w\-_]", "_", $reference.file.element_identifier)}.$gxy2omsext($reference.file.ext)'
#end if
#if len(str($OPTIONAL_OUTPUTS).split(',')) == 0
  | tee '$stdout'
#end if

## Postprocessing
#if "trafo_out_FLAG" in str($OPTIONAL_OUTPUTS).split(',')
  ${' '.join(["&& mv -n 'trafo_out/%(bn)s/%(id)s.%(gext)s' 'trafo_out/%(bn)s/%(id)s'"%{"bn": i, "id": re.sub('[^\w\-_]', '_', f.element_identifier), "gext": $gxy2omsext("trafoxml")} for i, f in enumerate($in_cond.in) if f])}
#end if
#if "ctd_out_FLAG" in $OPTIONAL_OUTPUTS
  && mv 'MapAlignerPoseClustering.ctd' '$ctd_out'
#end if
None
False
Functional tests
name inputs outputs required files
Test-1 in_cond|in: ['MapAlignerPoseClustering_1_input1.featureXML', 'MapAlignerPoseClustering_1_input2.featureXML', 'MapAlignerPoseClustering_1_input3.featureXML']
reference|index: 0
algorithm|max_num_peaks_considered: 400
algorithm|superimposer|mz_pair_max_distance: 0.5
algorithm|superimposer|rt_pair_distance_fraction: 0.1
algorithm|superimposer|num_used_points: 2000
algorithm|superimposer|scaling_bucket_size: 0.005
algorithm|superimposer|shift_bucket_size: 3.0
algorithm|superimposer|max_shift: 1000.0
algorithm|superimposer|max_scaling: 2.0
algorithm|superimposer|dump_buckets:
algorithm|superimposer|dump_pairs:
algorithm|pairfinder|second_nearest_gap: 2.0
algorithm|pairfinder|use_identifications: False
algorithm|pairfinder|ignore_charge: True
algorithm|pairfinder|ignore_adduct: True
algorithm|pairfinder|distance_RT|max_difference: 30.0
algorithm|pairfinder|distance_RT|exponent: 1.0
algorithm|pairfinder|distance_RT|weight: 1.0
algorithm|pairfinder|distance_MZ|max_difference: 0.3
algorithm|pairfinder|distance_MZ|unit: Da
algorithm|pairfinder|distance_MZ|exponent: 2.0
algorithm|pairfinder|distance_MZ|weight: 1.0
algorithm|pairfinder|distance_intensity|exponent: 1.0
algorithm|pairfinder|distance_intensity|weight: 0.0
algorithm|pairfinder|distance_intensity|log_transform: disabled
adv_opts|force: False
adv_opts|test: true
OPTIONAL_OUTPUTS: ['ctd_out_FLAG', 'out_FLAG', 'trafo_out_FLAG']
name: value
MapAlignerPoseClustering_1_input1.featureXML
MapAlignerPoseClustering_1_input2.featureXML
MapAlignerPoseClustering_1_input3.featureXML
value
Test-2 in_cond|in: ['MapAlignerPoseClustering_2_input1.mzML', 'MapAlignerPoseClustering_2_input2.mzML', 'MapAlignerPoseClustering_2_input3.mzML']
reference|index: 0
algorithm|max_num_peaks_considered: 400
algorithm|superimposer|mz_pair_max_distance: 0.5
algorithm|superimposer|rt_pair_distance_fraction: 0.1
algorithm|superimposer|num_used_points: 2000
algorithm|superimposer|scaling_bucket_size: 0.005
algorithm|superimposer|shift_bucket_size: 3.0
algorithm|superimposer|max_shift: 1000.0
algorithm|superimposer|max_scaling: 2.0
algorithm|superimposer|dump_buckets:
algorithm|superimposer|dump_pairs:
algorithm|pairfinder|second_nearest_gap: 2.0
algorithm|pairfinder|use_identifications: False
algorithm|pairfinder|ignore_charge: False
algorithm|pairfinder|ignore_adduct: True
algorithm|pairfinder|distance_RT|max_difference: 100.0
algorithm|pairfinder|distance_RT|exponent: 1.0
algorithm|pairfinder|distance_RT|weight: 1.0
algorithm|pairfinder|distance_MZ|max_difference: 0.3
algorithm|pairfinder|distance_MZ|unit: Da
algorithm|pairfinder|distance_MZ|exponent: 2.0
algorithm|pairfinder|distance_MZ|weight: 1.0
algorithm|pairfinder|distance_intensity|exponent: 1.0
algorithm|pairfinder|distance_intensity|weight: 0.0
algorithm|pairfinder|distance_intensity|log_transform: disabled
adv_opts|force: False
adv_opts|test: true
OPTIONAL_OUTPUTS: ['ctd_out_FLAG', 'out_FLAG']
name: value
MapAlignerPoseClustering_2_input1.mzML
MapAlignerPoseClustering_2_input2.mzML
MapAlignerPoseClustering_2_input3.mzML
value
Test-3 in_cond|in: ['MapAlignerPoseClustering_1_input2.featureXML', 'MapAlignerPoseClustering_1_input3.featureXML']
reference|file: MapAlignerPoseClustering_1_input1.featureXML
reference|index: 0
algorithm|max_num_peaks_considered: 400
algorithm|superimposer|mz_pair_max_distance: 0.5
algorithm|superimposer|rt_pair_distance_fraction: 0.1
algorithm|superimposer|num_used_points: 2000
algorithm|superimposer|scaling_bucket_size: 0.005
algorithm|superimposer|shift_bucket_size: 3.0
algorithm|superimposer|max_shift: 1000.0
algorithm|superimposer|max_scaling: 2.0
algorithm|superimposer|dump_buckets:
algorithm|superimposer|dump_pairs:
algorithm|pairfinder|second_nearest_gap: 2.0
algorithm|pairfinder|use_identifications: False
algorithm|pairfinder|ignore_charge: True
algorithm|pairfinder|ignore_adduct: True
algorithm|pairfinder|distance_RT|max_difference: 30.0
algorithm|pairfinder|distance_RT|exponent: 1.0
algorithm|pairfinder|distance_RT|weight: 1.0
algorithm|pairfinder|distance_MZ|max_difference: 0.3
algorithm|pairfinder|distance_MZ|unit: Da
algorithm|pairfinder|distance_MZ|exponent: 2.0
algorithm|pairfinder|distance_MZ|weight: 1.0
algorithm|pairfinder|distance_intensity|exponent: 1.0
algorithm|pairfinder|distance_intensity|weight: 0.0
algorithm|pairfinder|distance_intensity|log_transform: disabled
adv_opts|force: False
adv_opts|test: true
OPTIONAL_OUTPUTS: ['ctd_out_FLAG', 'out_FLAG']
name: value
MapAlignerPoseClustering_1_input2.featureXML
MapAlignerPoseClustering_1_input3.featureXML
MapAlignerPoseClustering_1_input1.featureXML
value
Test-4 in_cond|in: ['MapAlignerPoseClustering_1_input1.featureXML', 'MapAlignerPoseClustering_1_input2.featureXML']
reference|index: 2
algorithm|max_num_peaks_considered: 400
algorithm|superimposer|mz_pair_max_distance: 0.5
algorithm|superimposer|rt_pair_distance_fraction: 0.1
algorithm|superimposer|num_used_points: 2000
algorithm|superimposer|scaling_bucket_size: 0.005
algorithm|superimposer|shift_bucket_size: 3.0
algorithm|superimposer|max_shift: 1000.0
algorithm|superimposer|max_scaling: 2.0
algorithm|superimposer|dump_buckets:
algorithm|superimposer|dump_pairs:
algorithm|pairfinder|second_nearest_gap: 2.0
algorithm|pairfinder|use_identifications: False
algorithm|pairfinder|ignore_charge: True
algorithm|pairfinder|ignore_adduct: True
algorithm|pairfinder|distance_RT|max_difference: 30.0
algorithm|pairfinder|distance_RT|exponent: 1.0
algorithm|pairfinder|distance_RT|weight: 1.0
algorithm|pairfinder|distance_MZ|max_difference: 0.3
algorithm|pairfinder|distance_MZ|unit: Da
algorithm|pairfinder|distance_MZ|exponent: 2.0
algorithm|pairfinder|distance_MZ|weight: 1.0
algorithm|pairfinder|distance_intensity|exponent: 1.0
algorithm|pairfinder|distance_intensity|weight: 0.0
algorithm|pairfinder|distance_intensity|log_transform: disabled
adv_opts|force: False
adv_opts|test: true
OPTIONAL_OUTPUTS: ['ctd_out_FLAG', 'trafo_out_FLAG']
name: value
MapAlignerPoseClustering_1_input1.featureXML
MapAlignerPoseClustering_1_input2.featureXML
value