# HG changeset patch # User iuc # Date 1479150219 18000 # Node ID 6805e85573b8976b6980c9891b0c6be6193a283f planemo upload for repository https://github.com/stamatak/standard-RAxML commit 174be06d7c7e7789df16ea5d5068f20b21257a2f diff -r 000000000000 -r 6805e85573b8 acknowledgement.md --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/acknowledgement.md Mon Nov 14 14:03:39 2016 -0500 @@ -0,0 +1,10 @@ +RAxML for Galaxy +================ + +95% of this work was made by Oleksandr Moskalenko. Tiago Antao +is trying to update it to a more current version. + +Acknowledgements +---------------- + +Björn Grüning for all the help diff -r 000000000000 -r 6805e85573b8 raxml.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/raxml.py Mon Nov 14 14:03:39 2016 -0500 @@ -0,0 +1,370 @@ +#!/usr/bin/env python +""" +Runs RAxML on a sequence file. +For use with RAxML version 8.2.4 +""" +import fnmatch +import glob +import optparse +import os +import subprocess +import sys + + +def stop_err(msg): + sys.stderr.write("%s\n" % msg) + sys.exit() + + +def getint(name): + basename = name.partition('RUN.') + if basename[2] != '': + num = basename[2] + return int(num) + + +def __main__(): + usage = "usage: %prog -T -s -n -m [optional arguments]" + + # Parse the primary wrapper's command line options + parser = optparse.OptionParser(usage=usage) + # raxml binary name, hardcoded in the xml file + parser.add_option("--binary", action="store", type="string", dest="binary", help="Command to run") + # (-a) + parser.add_option("--weightfile", action="store", type="string", dest="weightfile", help="Column weight file") + # (-A) + parser.add_option("--secondary_structure_model", action="store", type="string", dest="secondary_structure_model", help="Secondary structure model") + # (-b) + parser.add_option("--bootseed", action="store", type="int", dest="bootseed", help="Bootstrap random number seed") + # (-c) + parser.add_option("--numofcats", action="store", type="int", dest="numofcats", help="Number of distinct rate categories") + # (-d) + parser.add_option("--search_complete_random_tree", action="store_true", dest="search_complete_random_tree", help="Search with a complete random starting tree") + # (-D) + parser.add_option("--ml_search_convergence", action="store_true", dest="ml_search_convergence", help="ML search onvergence criterion") + # (-e) + parser.add_option("--model_opt_precision", action="store", type="float", dest="model_opt_precision", help="Model Optimization Precision (-e)") + # (-E) + parser.add_option("--excludefile", action="store", type="string", dest="excludefile", help="Exclude File Name") + # (-f) + parser.add_option("--search_algorithm", action="store", type="string", dest="search_algorithm", help="Search Algorithm") + # (-F) + parser.add_option("--save_memory_cat_model", action="store_true", dest="save_memory_cat_model", help="Save memory under CAT and GTRGAMMA models") + # (-g) + parser.add_option("--groupingfile", action="store", type="string", dest="groupingfile", help="Grouping File Name") + # (-G) + parser.add_option("--enable_evol_heuristics", action="store_true", dest="enable_evol_heuristics", help="Enable evol algo heuristics") + # (-i) + parser.add_option("--initial_rearrangement_setting", action="store", type="int", dest="initial_rearrangement_setting", help="Initial Rearrangement Setting") + # (-I) + parser.add_option("--posterior_bootstopping_analysis", action="store", type="string", dest="posterior_bootstopping_analysis", help="Posterior bootstopping analysis") + # (-J) + parser.add_option("--majority_rule_consensus", action="store", type="string", dest="majority_rule_consensus", help="Majority rule consensus") + # (-k) + parser.add_option("--print_branch_lengths", action="store_true", dest="print_branch_lengths", help="Print branch lengths") + # (-K) + parser.add_option("--multistate_sub_model", action="store", type="string", dest="multistate_sub_model", help="Multistate substitution model") + # (-m) + parser.add_option("--model_type", action="store", type="string", dest="model_type", help="Model Type") + parser.add_option("--base_model", action="store", type="string", dest="base_model", help="Base Model") + parser.add_option("--aa_empirical_freq", action="store_true", dest="aa_empirical_freq", help="Use AA Empirical base frequences") + parser.add_option("--aa_search_matrix", action="store", type="string", dest="aa_search_matrix", help="AA Search Matrix") + # (-n) + parser.add_option("--name", action="store", type="string", dest="name", help="Run Name") + # (-N/#) + parser.add_option("--number_of_runs", action="store", type="int", dest="number_of_runs", help="Number of alternative runs") + parser.add_option("--number_of_runs_bootstop", action="store", type="string", dest="number_of_runs_bootstop", help="Number of alternative runs based on the bootstop criteria") + # (-M) + parser.add_option("--estimate_individual_branch_lengths", action="store_true", dest="estimate_individual_branch_lengths", help="Estimate individual branch lengths") + # (-o) + parser.add_option("--outgroup_name", action="store", type="string", dest="outgroup_name", help="Outgroup Name") + # (-O) + parser.add_option("--disable_undetermined_seq_check", action="store_true", dest="disable_undetermined_seq_check", help="Disable undetermined sequence check") + # (-p) + parser.add_option("--random_seed", action="store", type="int", dest="random_seed", help="Random Number Seed") + # (-P) + parser.add_option("--external_protein_model", action="store", type="string", dest="external_protein_model", help="External Protein Model") + # (-q) + parser.add_option("--multiple_model", action="store", type="string", dest="multiple_model", help="Multiple Model File") + # (-r) + parser.add_option("--constraint_file", action="store", type="string", dest="constraint_file", help="Constraint File") + # (-R) + parser.add_option("--bin_model_parameter_file", action="store", type="string", dest="bin_model_parameter_file", help="Constraint File") + # (-s) + parser.add_option("--source", action="store", type="string", dest="source", help="Input file") + # (-S) + parser.add_option("--secondary_structure_file", action="store", type="string", dest="secondary_structure_file", help="Secondary structure file") + # (-t) + parser.add_option("--starting_tree", action="store", type="string", dest="starting_tree", help="Starting Tree") + # (-T) + parser.add_option("--threads", action="store", type="int", dest="threads", help="Number of threads to use") + # (-u) + parser.add_option("--use_median_approximation", action="store_true", dest="use_median_approximation", help="Use median approximation") + # (-U) + parser.add_option("--save_memory_gappy_alignments", action="store_true", dest="save_memory_gappy_alignments", help="Save memory in large gapped alignments") + # (-V) + parser.add_option("--disable_rate_heterogeneity", action="store_true", dest="disable_rate_heterogeneity", help="Disable rate heterogeneity") + # (-W) + parser.add_option("--sliding_window_size", action="store", type="string", dest="sliding_window_size", help="Sliding window size") + # (-x) + parser.add_option("--rapid_bootstrap_random_seed", action="store", type="int", dest="rapid_bootstrap_random_seed", help="Rapid Boostrap Random Seed") + # (-y) + parser.add_option("--parsimony_starting_tree_only", action="store_true", dest="parsimony_starting_tree_only", help="Generate a parsimony starting tree only") + # (-z) + parser.add_option("--file_multiple_trees", action="store", type="string", dest="file_multiple_trees", help="Multiple Trees File") + + (options, args) = parser.parse_args() + cmd = [] + + # Required parameters + binary = options.binary + cmd.append(binary) + # Threads + if options.threads > 1: + threads = "-T %d" % options.threads + cmd.append(threads) + # Source + source = "-s %s" % options.source + cmd.append(source) + # Hardcode to "galaxy" first to simplify the output part of the wrapper + # name = "-n %s" % options.name + name = "-n galaxy" + cmd.append(name) + # Model + model_type = options.model_type + base_model = options.base_model + aa_search_matrix = options.aa_search_matrix + aa_empirical_freq = options.aa_empirical_freq + if model_type == 'aminoacid': + model = "-m %s%s" % (base_model, aa_search_matrix) + if aa_empirical_freq: + model = "-m %s%s%s" % (base_model, aa_search_matrix, 'F') + # (-P) + if options.external_protein_model: + external_protein_model = "-P %s" % options.external_protein_model + cmd.append(external_protein_model) + else: + model = "-m %s" % base_model + cmd.append(model) + if model == "GTRCAT": + # (-c) + if options.numofcats: + numofcats = "-c %d" % options.numofcats + cmd.append(numofcats) + # Optional parameters + if options.number_of_runs_bootstop: + number_of_runs_bootstop = "-N %s" % options.number_of_runs_bootstop + cmd.append(number_of_runs_bootstop) + else: + number_of_runs_bootstop = '' + if options.number_of_runs: + number_of_runs_opt = "-N %d" % options.number_of_runs + cmd.append(number_of_runs_opt) + else: + number_of_runs_opt = 0 + # (-a) + if options.weightfile: + weightfile = "-a %s" % options.weightfile + cmd.append(weightfile) + # (-A) + if options.secondary_structure_model: + secondary_structure_model = "-A %s" % options.secondary_structure_model + cmd.append(secondary_structure_model ) + # (-b) + if options.bootseed: + bootseed = "-b %d" % options.bootseed + cmd.append(bootseed) + else: + bootseed = 0 + # -C - doesn't work in pthreads version, skipped + if options.search_complete_random_tree: + cmd.append("-d") + if options.ml_search_convergence: + cmd.append("-D" ) + if options.model_opt_precision: + model_opt_precision = "-e %f" % options.model_opt_precision + cmd.append(model_opt_precision) + if options.excludefile: + excludefile = "-E %s" % options.excludefile + cmd.append(excludefile) + if options.search_algorithm: + search_algorithm = "-f %s" % options.search_algorithm + cmd.append(search_algorithm) + if options.save_memory_cat_model: + cmd.append("-F") + if options.groupingfile: + groupingfile = "-g %s" % options.groupingfile + cmd.append(groupingfile) + if options.enable_evol_heuristics: + enable_evol_heuristics = "-G %f" % options.enable_evol_heuristics + cmd.append(enable_evol_heuristics ) + if options.initial_rearrangement_setting: + initial_rearrangement_setting = "-i %s" % options.initial_rearrangement_setting + cmd.append(initial_rearrangement_setting) + if options.posterior_bootstopping_analysis: + posterior_bootstopping_analysis = "-I %s" % options.posterior_bootstopping_analysis + cmd.append(posterior_bootstopping_analysis) + if options.majority_rule_consensus: + majority_rule_consensus = "-J %s" % options.majority_rule_consensus + cmd.append(majority_rule_consensus) + if options.print_branch_lengths: + cmd.append("-k") + if options.multistate_sub_model: + multistate_sub_model = "-K %s" % options.multistate_sub_model + cmd.append(multistate_sub_model) + if options.estimate_individual_branch_lengths: + cmd.append("-M") + if options.outgroup_name: + outgroup_name = "-o %s" % options.outgroup_name + cmd.append(outgroup_name) + if options.disable_undetermined_seq_check: + cmd.append("-O") + if options.random_seed: + random_seed = "-p %d" % options.random_seed + cmd.append(random_seed) + multiple_model = None + if options.multiple_model: + multiple_model = "-q %s" % options.multiple_model + cmd.append(multiple_model) + if options.constraint_file: + constraint_file = "-r %s" % options.constraint_file + cmd.append(constraint_file) + if options.bin_model_parameter_file: + bin_model_parameter_file_name = "RAxML_binaryModelParameters.galaxy" + os.symlink(options.bin_model_parameter_file, bin_model_parameter_file_name ) + bin_model_parameter_file = "-R %s" % options.bin_model_parameter_file + # Needs testing. Is the hardcoded name or the real path needed? + cmd.append(bin_model_parameter_file) + if options.secondary_structure_file: + secondary_structure_file = "-S %s" % options.secondary_structure_file + cmd.append(secondary_structure_file) + if options.starting_tree: + starting_tree = "-t %s" % options.starting_tree + cmd.append(starting_tree) + if options.use_median_approximation: + cmd.append("-u") + if options.save_memory_gappy_alignments: + cmd.append("-U") + if options.disable_rate_heterogeneity: + cmd.append("-V") + if options.sliding_window_size: + sliding_window_size = "-W %d" % options.sliding_window_size + cmd.append(sliding_window_size) + if options.rapid_bootstrap_random_seed: + rapid_bootstrap_random_seed = "-x %d" % options.rapid_bootstrap_random_seed + cmd.append(rapid_bootstrap_random_seed) + else: + rapid_bootstrap_random_seed = 0 + if options.parsimony_starting_tree_only: + cmd.append("-y") + if options.file_multiple_trees: + file_multiple_trees = "-z %s" % options.file_multiple_trees + cmd.append(file_multiple_trees) + + print "cmd list: ", cmd, "\n" + + full_cmd = " ".join(cmd) + print "Command string: %s" % full_cmd + + try: + proc = subprocess.Popen(args=full_cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE) + except Exception as err: + sys.stderr.write("Error invoking command: \n%s\n\n%s\n" % (cmd, err)) + sys.exit(1) + stdout, stderr = proc.communicate() + return_code = proc.returncode + if return_code: + sys.stdout.write(stdout) + sys.stderr.write(stderr) + sys.stderr.write("Return error code %i from command:\n" % return_code) + sys.stderr.write("%s\n" % cmd) + else: + sys.stdout.write(stdout) + sys.stdout.write(stderr) + + # Multiple runs - concatenate + if number_of_runs_opt > 0: + if (bootseed == 0) and (rapid_bootstrap_random_seed == 0 ): + runfiles = glob.glob('RAxML*RUN*') + runfiles.sort(key=getint) + # Logs + outfile = open('RAxML_log.galaxy', 'w') + for filename in runfiles: + if fnmatch.fnmatch(filename, 'RAxML_log.galaxy.RUN.*'): + infile = open(filename, 'r') + filename_line = "%s\n" % filename + outfile.write(filename_line) + for line in infile: + outfile.write(line) + infile.close() + outfile.close() + # Parsimony Trees + outfile = open('RAxML_parsimonyTree.galaxy', 'w') + for filename in runfiles: + if fnmatch.fnmatch(filename, 'RAxML_parsimonyTree.galaxy.RUN.*'): + infile = open(filename, 'r') + filename_line = "%s\n" % filename + outfile.write(filename_line) + for line in infile: + outfile.write(line) + infile.close() + outfile.close() + # Results + outfile = open('RAxML_result.galaxy', 'w') + for filename in runfiles: + if fnmatch.fnmatch(filename, 'RAxML_result.galaxy.RUN.*'): + infile = open(filename, 'r') + filename_line = "%s\n" % filename + outfile.write(filename_line) + for line in infile: + outfile.write(line) + infile.close() + outfile.close() + # Multiple Model Partition Files + if multiple_model: + files = glob.glob('RAxML_bestTree.galaxy.PARTITION.*') + if len(files) > 0: + files.sort(key=getint) + outfile = open('RAxML_bestTreePartitions.galaxy', 'w') + # Best Tree Partitions + for filename in files: + if fnmatch.fnmatch(filename, 'RAxML_bestTree.galaxy.PARTITION.*'): + infile = open(filename, 'r') + filename_line = "%s\n" % filename + outfile.write(filename_line) + for line in infile: + outfile.write(line) + infile.close() + outfile.close() + else: + outfile = open('RAxML_bestTreePartitions.galaxy', 'w') + outfile.write("No partition files were produced.\n") + outfile.close() + + # Result Partitions + files = glob.glob('RAxML_result.galaxy.PARTITION.*') + if len(files) > 0: + files.sort(key=getint) + outfile = open('RAxML_resultPartitions.galaxy', 'w') + for filename in files: + if fnmatch.fnmatch(filename, 'RAxML_result.galaxy.PARTITION.*'): + infile = open(filename, 'r') + filename_line = "%s\n" % filename + outfile.write(filename_line) + for line in infile: + outfile.write(line) + infile.close() + outfile.close() + else: + outfile = open('RAxML_resultPartitions.galaxy', 'w') + outfile.write("No partition files were produced.\n") + outfile.close() + + # DEBUG options + infof = open('RAxML_info.galaxy', 'a') + infof.write('\nOM: CLI options DEBUG START:\n') + infof.write(options.__repr__()) + infof.write('\nOM: CLI options DEBUG END\n') + +if __name__ == "__main__": + __main__() diff -r 000000000000 -r 6805e85573b8 raxml.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/raxml.xml Mon Nov 14 14:03:39 2016 -0500 @@ -0,0 +1,545 @@ + + - Maximum Likelihood based inference of large phylogenetic trees + + raxml + + raxml.py + ## Required parameters + ## binary is hard-coded to the pthreads enabled raxml executable if threads > 1 + ## (-T) + ## Cannot have --threads 1 + #set $slots = $getVar('GALAXY_SLOTS', 1) + #if $slots == 1: + --binary "raxmlHPC" + --threads 1 + #else: + --binary "raxmlHPC-PTHREADS" + --threads $slots + #end if + ## (-s) + --source "$infile" + ## (-m) + --model_type $search_model_selector.model_type + --base_model $search_model_selector.base_model + #if str( $search_model_selector.model_type ) == 'aminoacid': + $search_model_selector.aa_model_empirical_base_frequencies + #if $search_model_selector.aa_search_matrix: + --aa_search_matrix $search_model_selector.aa_search_matrix + #end if + #end if + + ## Optional parameters + + #if str( $selExtraOpts.extraOptions ) == 'full': + ## (-N/#) + #if $selExtraOpts.number_of_runs: + --number_of_runs $selExtraOpts.number_of_runs + #end if + #if $selExtraOpts.number_of_runs_bootstop: + --number_of_runs_bootstop $selExtraOpts.number_of_runs_bootstop + #end if + ## (-a) + #if $selExtraOpts.weightfile: + --weightfile "$selExtraOpts.weightfile" + #end if + ## (-b) + #if str ($selExtraOpts.secondary_structure_model) != "": + --secondary_structure_model $selExtraOpts.secondary_structure_model + #end if + ## (-b) + #if str($selExtraOpts.bootseed): + --bootseed $selExtraOpts.bootseed + #end if + ## (-c) + #if $selExtraOpts.numofcats: + --numofcats $selExtraOpts.numofcats + #end if + ## (-d) + $selExtraOpts.search_complete_random_tree + ## (-D) + $selExtraOpts.ml_search_convergence + ## (-e) + #if $selExtraOpts.model_opt_precision: + --model_opt_precision $selExtraOpts.model_opt_precision + #end if + ## (-E) + #if $selExtraOpts.excludefile: + --excludefile "$selExtraOpts.excludefile" + #end if + ## (-f) + #if $selExtraOpts.search_algorithm: + --search_algorithm $selExtraOpts.search_algorithm + #end if + ## (-F) + $selExtraOpts.save_memory_cat_model + ## (-g) + #if $selExtraOpts.groupingfile: + --groupingfile "$selExtraOpts.groupingfile" + #end if + ## (-G) + #if $selExtraOpts.enable_evol_heuristics: + --enable_evol_heuristics $selExtraOpts.enable_evol_heuristics + #end if + ## (-i) + #if $selExtraOpts.initial_rearrangement_setting: + --initial_rearrangement_setting $selExtraOpts.initial_rearrangement_setting + #end if + ## (-I) + #if $selExtraOpts.posterior_bootstopping_analysis: + --posterior_bootstopping_analysis $selExtraOpts.posterior_bootstopping_analysis + #end if + ## (-J) + #if $selExtraOpts.majority_rule_consensus: + --majority_rule_consensus $selExtraOpts.majority_rule_consensus + #end if + ## (-k) + $selExtraOpts.print_branch_lengths + ## (-K) + #if str ($selExtraOpts.multistate_sub_model) != "": + --multistate_sub_model $selExtraOpts.multistate_sub_model + #end if + ## (-m) - see elsewhere + ## (-M) + $selExtraOpts.estimate_individual_branch_lengths + ## (-n) - see elsewhere + ## (-o) + #if $selExtraOpts.outgroup_name: + --outgroup_name "$selExtraOpts.outgroup_name" + #end if + ## (-O) + $selExtraOpts.disable_undetermined_seq_check + ## (-P) + #if $selExtraOpts.external_protein_model: + --external_protein_model "$selExtraOpts.external_protein_model" + #end if + ## (-q) + #if $selExtraOpts.multiple_model: + --multiple_model "$selExtraOpts.multiple_model" + #end if + ## (-r) + #if $selExtraOpts.constraint_file: + --constraint_file "$selExtraOpts.constraint_file" + #end if + ## (-R) + #if $selExtraOpts.bin_model_parameter_file: + --bin_model_parameter_file "$selExtraOpts.bin_model_parameter_file" + #end if + ## (-S) + #if $selExtraOpts.secondary_structure_file: + --secondary_structure_file "$selExtraOpts.secondary_structure_file" + #end if + ## (-t) + #if $selExtraOpts.start_tree_file: + --starting_tree "$selExtraOpts.start_tree_file" + #end if + ## (-T) see elsewhere + ## (-u) + $selExtraOpts.use_median_approximation + ## (-U) + $selExtraOpts.save_memory_gappy_alignments + ## (-V) + $selExtraOpts.disable_rate_heterogeneity + ## (-W) + #if $selExtraOpts.sliding_window_size: + --sliding_window_size $selExtraOpts.sliding_window_size + #end if + ## (-x) + #if str($selExtraOpts.rapid_bootstrap_random_seed): + --rapid_bootstrap_random_seed $selExtraOpts.rapid_bootstrap_random_seed + #end if + ## (-y) + $selExtraOpts.parsimony_starting_tree_only + ## (-z) + #if $selExtraOpts.file_multiple_trees: + --file_multiple_trees "$selExtraOpts.file_multiple_trees" + #end if + + ## (-p) + #if $selExtraOpts.random_seed: + --random_seed $selExtraOpts.random_seed + #else + --random_seed 1234567890 + #end if + + #else: + --random_seed 1234567890 + #end if + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + (selExtraOpts['extraOptions'] == 'required') + selExtraOpts['search_algorithm'] != 'a' + + + (selExtraOpts['extraOptions'] == 'required') + selExtraOpts['search_algorithm'] != 'a' + + + (selExtraOpts['extraOptions'] == 'required') + selExtraOpts['search_algorithm'] != 'a' + + + + selExtraOpts['search_complete_random_tree'] is True + selExtraOpts['extraOptions'] == "full" + + + + + + + (selExtraOpts['extraOptions'] == "full") + (selExtraOpts['multiple_model'] != '') + + + (selExtraOpts['extraOptions'] == "full") + selExtraOpts['multiple_model'] is not None + + + (selExtraOpts['extraOptions'] == "full") + (selExtraOpts['rapid_bootstrap_random_seed'] == '') + (selExtraOpts['bootseed'] == '') + (selExtraOpts['search_algorithm'] != 'a') + (selExtraOpts['search_algorithm'] != 'b') + (selExtraOpts['majority_rule_consensus'] == '') + + + (selExtraOpts['extraOptions'] == "full") + (selExtraOpts['rapid_bootstrap_random_seed'] == '') + selExtraOpts['bootseed'] == '' + selExtraOpts['search_algorithm'] != 'a' + selExtraOpts['search_algorithm'] != 'b' + (selExtraOpts['majority_rule_consensus'] == '') + + + (selExtraOpts['extraOptions'] == "full") + (selExtraOpts['multiple_model'] is not None) + + + (selExtraOpts['extraOptions'] == "full") + + + + selExtraOpts['extraOptions'] == "full" + selExtraOpts['number_of_runs'] != '' or selExtraOpts['number_of_runs_bootstop'] != '' + selExtraOpts['rapid_bootstrap_random_seed'] != '' or selExtraOpts['bootseed'] != '' + + + (selExtraOpts['search_algorithm'] == 'b') or ((selExtraOpts['search_algorithm'] == 'a') and (selExtraOpts['rapid_bootstrap_random_seed'] != '')) + selExtraOpts['extraOptions'] == "full" + + + selExtraOpts['extraOptions'] == "full" + (selExtraOpts['search_algorithm'] == 'b') or ((selExtraOpts['search_algorithm'] == 'a') and (selExtraOpts['rapid_bootstrap_random_seed'] != '')) + + + selExtraOpts['extraOptions'] == "full" + (selExtraOpts['majority_rule_consensus'] == 'STRICT') + + + selExtraOpts['extraOptions'] == "full" + (selExtraOpts['majority_rule_consensus'] == 'MR') + + + selExtraOpts['extraOptions'] == "full" + (selExtraOpts['majority_rule_consensus'] == 'MRE') + + + selExtraOpts['search_algorithm'] == 'm' + selExtraOpts['extraOptions'] == "full" + + + selExtraOpts['search_algorithm'] == 'g' + selExtraOpts['extraOptions'] == "full" + + + selExtraOpts['search_algorithm'] == 'x' + selExtraOpts['extraOptions'] == "full" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +RAxML_ (Randomized Axelerated Maximum Likelihood) is a program for Maximum Likelihood-based inference of large phylogenetic +trees. The program is explicitly being developed to efficiently infer trees for +extremely large datasets, either in terms of the number of taxa and/or the +sequence length. + + +.. _RAxML: http://www.exelixis-lab.org/ + + +**Tool development**: + +Oleksandr Moskalenko with adaptations from Tiago Antao. + + + + 10.1093/bioinformatics/btu033 + + diff -r 000000000000 -r 6805e85573b8 test-data/RAxML_parsimonyTree.galaxy.basic --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/RAxML_parsimonyTree.galaxy.basic Mon Nov 14 14:03:39 2016 -0500 @@ -0,0 +1,1 @@ +(Whale,((((Mouse,Chicken),Human),Rat),((Frog,(Carp,Loach)),Seal)),Cow); diff -r 000000000000 -r 6805e85573b8 test-data/RAxML_parsimonyTree.galaxy.multi --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/RAxML_parsimonyTree.galaxy.multi Mon Nov 14 14:03:39 2016 -0500 @@ -0,0 +1,87 @@ + + +Using BFGS method to optimize GTR rate parameters, to disable this specify "--no-bfgs" + + + +This is RAxML version 8.2.4 released by Alexandros Stamatakis on October 02 2015. + +With greatly appreciated code contributions by: +Andre Aberer (HITS) +Simon Berger (HITS) +Alexey Kozlov (HITS) +Kassian Kobert (HITS) +David Dao (KIT and HITS) +Nick Pattengale (Sandia) +Wayne Pfeiffer (SDSC) +Akifumi S. Tanabe (NRIFS) + +Alignment has 34 distinct alignment patterns + +Proportion of gaps and completely undetermined characters in this alignment: 0.00% + +RAxML rapid hill-climbing mode + +Using 1 distinct models/data partitions with joint branch length optimization + + +Executing 5 inferences on the original alignment using 5 distinct randomized MP trees + +All free model parameters will be estimated by RAxML +ML estimate of 25 per site rate categories + +Likelihood of final tree will be evaluated and optimized under GAMMA + +GAMMA Model parameters will be estimated up to an accuracy of 0.1000000000 Log Likelihood units + +Partition: 0 +Alignment Patterns: 34 +Name: No Name Provided +DataType: DNA +Substitution Matrix: GTR + + + + +RAxML was called as follows: + +raxmlHPC -s /tmp/tmpS1corm/files/000/dataset_7.dat -n galaxy -m GTRCAT -N 5 -f d -p 1234567890 + + +Partition: 0 with name: No Name Provided +Base frequencies: 0.325 0.288 0.168 0.218 + +Inference[0]: Time 0.216205 CAT-based likelihood -318.296661, best rearrangement setting 5 +alpha[0]: 1.000000 rates[0] ac ag at cg ct gt: 156.924095 909.973305 698.798586 49.826281 1854.008494 1.000000 +Inference[1]: Time 0.156515 CAT-based likelihood -320.216706, best rearrangement setting 5 +alpha[0]: 1.000000 rates[0] ac ag at cg ct gt: 984.611489 1694.475132 1327.909793 133.166551 5344.045057 1.000000 +Inference[2]: Time 0.168518 CAT-based likelihood -317.720618, best rearrangement setting 5 +alpha[0]: 1.000000 rates[0] ac ag at cg ct gt: 467.628294 1755.581565 1080.117186 84.613232 3889.913949 1.000000 +Inference[3]: Time 0.151635 CAT-based likelihood -320.856852, best rearrangement setting 5 +alpha[0]: 1.000000 rates[0] ac ag at cg ct gt: 951.225250 1754.836760 1010.717630 104.250644 4976.305821 1.000000 +Inference[4]: Time 0.148819 CAT-based likelihood -320.068842, best rearrangement setting 5 +alpha[0]: 1.000000 rates[0] ac ag at cg ct gt: 1216.938988 2115.384600 1728.203983 157.161613 6782.996281 1.000000 + + +Conducting final model optimizations on all 5 trees under GAMMA-based models .... + +Inference[0] final GAMMA-based Likelihood: -378.273666 tree written to file /tmp/tmpS1corm/job_working_directory/000/4/RAxML_result.galaxy.RUN.0 +Inference[1] final GAMMA-based Likelihood: -378.202304 tree written to file /tmp/tmpS1corm/job_working_directory/000/4/RAxML_result.galaxy.RUN.1 +Inference[2] final GAMMA-based Likelihood: -377.272824 tree written to file /tmp/tmpS1corm/job_working_directory/000/4/RAxML_result.galaxy.RUN.2 +Inference[3] final GAMMA-based Likelihood: -377.004321 tree written to file /tmp/tmpS1corm/job_working_directory/000/4/RAxML_result.galaxy.RUN.3 +Inference[4] final GAMMA-based Likelihood: -378.202304 tree written to file /tmp/tmpS1corm/job_working_directory/000/4/RAxML_result.galaxy.RUN.4 + + +Starting final GAMMA-based thorough Optimization on tree 3 likelihood -377.004321 .... + +Final GAMMA-based Score of best tree -377.004321 + +Program execution info written to /tmp/tmpS1corm/job_working_directory/000/4/RAxML_info.galaxy +Best-scoring ML tree written to: /tmp/tmpS1corm/job_working_directory/000/4/RAxML_bestTree.galaxy + +Overall execution time: 0.917038 secs or 0.000255 hours or 0.000011 days + + +OM: CLI options DEBUG START: + +OM: CLI options DEBUG END diff -r 000000000000 -r 6805e85573b8 test-data/dna.fasta --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/dna.fasta Mon Nov 14 14:03:39 2016 -0500 @@ -0,0 +1,20 @@ +>Cow +ATGGCATATCCCATACAACTAGGATTCCAAGATGCAACATCACCAATCATAGAAGAACTA +>Carp +ATGGCACACCCAACGCAACTAGGTTTCAAGGACGCGGCCATACCCGTTATAGAGGAACTT +>Chicken +ATGGCCAACCACTCCCAACTAGGCTTTCAAGACGCCTCATCCCCCATCATAGAAGAGCTC +>Human +ATGGCACATGCAGCGCAAGTAGGTCTACAAGACGCTACTTCCCCTATCATAGAAGAGCTT +>Loach +ATGGCACATCCCACACAATTAGGATTCCAAGACGCGGCCTCACCCGTAATAGAAGAACTT +>Mouse +ATGGCCTACCCATTCCAACTTGGTCTACAAGACGCCACATCCCCTATTATAGAAGAGCTA +>Rat +ATGGCTTACCCATTTCAACTTGGCTTACAAGACGCTACATCACCTATCATAGAAGAACTT +>Seal +ATGGCATACCCCCTACAAATAGGCCTACAAGATGCAACCTCTCCCATTATAGAGGAGTTA +>Whale +ATGGCATATCCATTCCAACTAGGTTTCCAAGATGCAGCATCACCCATCATAGAAGAGCTC +>Frog +ATGGCACACCCATCACAATTAGGTTTTCAAGACGCAGCCTCTCCAATTATAGAAGAATTA diff -r 000000000000 -r 6805e85573b8 test-data/dna.phy --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/dna.phy Mon Nov 14 14:03:39 2016 -0500 @@ -0,0 +1,11 @@ +10 60 +Cow ATGGCATATCCCATACAACTAGGATTCCAAGATGCAACATCACCAATCATAGAAGAACTA +Carp ATGGCACACCCAACGCAACTAGGTTTCAAGGACGCGGCCATACCCGTTATAGAGGAACTT +Chicken ATGGCCAACCACTCCCAACTAGGCTTTCAAGACGCCTCATCCCCCATCATAGAAGAGCTC +Human ATGGCACATGCAGCGCAAGTAGGTCTACAAGACGCTACTTCCCCTATCATAGAAGAGCTT +Loach ATGGCACATCCCACACAATTAGGATTCCAAGACGCGGCCTCACCCGTAATAGAAGAACTT +Mouse ATGGCCTACCCATTCCAACTTGGTCTACAAGACGCCACATCCCCTATTATAGAAGAGCTA +Rat ATGGCTTACCCATTTCAACTTGGCTTACAAGACGCTACATCACCTATCATAGAAGAACTT +Seal ATGGCATACCCCCTACAAATAGGCCTACAAGATGCAACCTCTCCCATTATAGAGGAGTTA +Whale ATGGCATATCCATTCCAACTAGGTTTCCAAGATGCAGCATCACCCATCATAGAAGAGCTC +Frog ATGGCACACCCATCACAATTAGGTTTTCAAGACGCAGCCTCTCCAATTATAGAAGAATTA \ No newline at end of file diff -r 000000000000 -r 6805e85573b8 tool_dependencies.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tool_dependencies.xml Mon Nov 14 14:03:39 2016 -0500 @@ -0,0 +1,6 @@ + + + + + +