# HG changeset patch # User devteam # Date 1396363694 14400 # Node ID be6bede2245962768b98b2a169fa60f7d038ba3b Imported from capsule None diff -r 000000000000 -r be6bede22459 analyze_covariates.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/analyze_covariates.xml Tue Apr 01 10:48:14 2014 -0400 @@ -0,0 +1,101 @@ + + - draw plots + + gatk + + + gatk_macros.xml + + gatk_wrapper.py + --max_jvm_heap_fraction "1" + --stdout "${output_log}" + --html_report_from_directory "${output_html}" "${output_html.files_path}" + -p 'java + -jar "${JAVA_JAR_PATH}/AnalyzeCovariates.jar" + -recalFile "${input_recal}" + -outputDir "${output_html.files_path}" + ##--num_threads 4 ##hard coded, for now + ##-log "${output_log}" + ##-Rscript,--path_to_Rscript path_to_Rscript; on path is good enough + #if $analysis_param_type.analysis_param_type_selector == "advanced": + --ignoreQ "${analysis_param_type.ignore_q}" + --numRG "${analysis_param_type.num_read_groups}" + --max_quality_score "${analysis_param_type.max_quality_score}" + --max_histogram_value "${analysis_param_type.max_histogram_value}" + ${analysis_param_type.do_indel_quality} + #end if + ' + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +**What it does** + +Create collapsed versions of the recal csv file and call R scripts to plot residual error versus the various covariates. + +For more information on base quality score recalibration using the GATK, see this `tool specific page <http://www.broadinstitute.org/gsa/wiki/index.php/Base_quality_score_recalibration>`_. + +To learn about best practices for variant detection using GATK, see this `overview <http://www.broadinstitute.org/gsa/wiki/index.php/Best_Practice_Variant_Detection_with_the_GATK_v3>`_. + +If you encounter errors, please view the `GATK FAQ <http://www.broadinstitute.org/gsa/wiki/index.php/Frequently_Asked_Questions>`_. + +------ + +**Inputs** + +GenomeAnalysisTK: AnalyzeCovariates accepts an recal CSV file. + + +**Outputs** + +The output is in CSV and HTML files with links to PDF graphs and a data files. + + +Go `here <http://www.broadinstitute.org/gsa/wiki/index.php/Input_files_for_the_GATK>`_ for details on GATK file formats. + +------- + +**Settings**:: + + recal_file The input recal csv file to analyze + output_dir The directory in which to output all the plots and intermediate data files + path_to_Rscript The path to your implementation of Rscript. For Broad users this is maybe /broad/tools/apps/R-2.6.0/bin/Rscript + path_to_resources Path to resources folder holding the Sting R scripts. + ignoreQ Ignore bases with reported quality less than this number. + numRG Only process N read groups. Default value: -1 (process all read groups) + max_quality_score The integer value at which to cap the quality scores, default is 50 + max_histogram_value If supplied, this value will be the max value of the histogram plots + do_indel_quality If supplied, this value will be the max value of the histogram plots + +@CITATION_SECTION@ + + diff -r 000000000000 -r be6bede22459 gatk_macros.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gatk_macros.xml Tue Apr 01 10:48:14 2014 -0400 @@ -0,0 +1,305 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ------ + +**Citation** + +For the underlying tool, please cite `DePristo MA, Banks E, Poplin R, Garimella KV, Maguire JR, Hartl C, Philippakis AA, del Angel G, Rivas MA, Hanna M, McKenna A, Fennell TJ, Kernytsky AM, Sivachenko AY, Cibulskis K, Gabriel SB, Altshuler D, Daly MJ. A framework for variation discovery and genotyping using next-generation DNA sequencing data. Nat Genet. 2011 May;43(5):491-8. <http://www.ncbi.nlm.nih.gov/pubmed/21478889>`_ + +If you use this tool in Galaxy, please cite Blankenberg D, et al. *In preparation.* + + + \ No newline at end of file diff -r 000000000000 -r be6bede22459 gatk_wrapper.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gatk_wrapper.py Tue Apr 01 10:48:14 2014 -0400 @@ -0,0 +1,126 @@ +#!/usr/bin/env python +#Dan Blankenberg + +""" +A wrapper script for running the GenomeAnalysisTK.jar commands. +""" + +import sys, optparse, os, tempfile, subprocess, shutil +from binascii import unhexlify +from string import Template + +GALAXY_EXT_TO_GATK_EXT = { 'gatk_interval':'intervals', 'bam_index':'bam.bai', 'gatk_dbsnp':'dbSNP', 'picard_interval_list':'interval_list' } #items not listed here will use the galaxy extension as-is +GALAXY_EXT_TO_GATK_FILE_TYPE = GALAXY_EXT_TO_GATK_EXT #for now, these are the same, but could be different if needed +DEFAULT_GATK_PREFIX = "gatk_file" +CHUNK_SIZE = 2**20 #1mb + + +def cleanup_before_exit( tmp_dir ): + if tmp_dir and os.path.exists( tmp_dir ): + shutil.rmtree( tmp_dir ) + +def gatk_filename_from_galaxy( galaxy_filename, galaxy_ext, target_dir = None, prefix = None ): + suffix = GALAXY_EXT_TO_GATK_EXT.get( galaxy_ext, galaxy_ext ) + if prefix is None: + prefix = DEFAULT_GATK_PREFIX + if target_dir is None: + target_dir = os.getcwd() + gatk_filename = os.path.join( target_dir, "%s.%s" % ( prefix, suffix ) ) + os.symlink( galaxy_filename, gatk_filename ) + return gatk_filename + +def gatk_filetype_argument_substitution( argument, galaxy_ext ): + return argument % dict( file_type = GALAXY_EXT_TO_GATK_FILE_TYPE.get( galaxy_ext, galaxy_ext ) ) + +def open_file_from_option( filename, mode = 'rb' ): + if filename: + return open( filename, mode = mode ) + return None + +def html_report_from_directory( html_out, dir ): + html_out.write( '\n\nGalaxy - GATK Output\n\n\n

\n

\n\n\n' ) + +def index_bam_files( bam_filenames, tmp_dir ): + for bam_filename in bam_filenames: + bam_index_filename = "%s.bai" % bam_filename + if not os.path.exists( bam_index_filename ): + #need to index this bam file + stderr_name = tempfile.NamedTemporaryFile( prefix = "bam_index_stderr" ).name + command = 'samtools index %s %s' % ( bam_filename, bam_index_filename ) + proc = subprocess.Popen( args=command, shell=True, stderr=open( stderr_name, 'wb' ) ) + return_code = proc.wait() + if return_code: + for line in open( stderr_name ): + print >> sys.stderr, line + os.unlink( stderr_name ) #clean up + cleanup_before_exit( tmp_dir ) + raise Exception( "Error indexing BAM file" ) + os.unlink( stderr_name ) #clean up + +def __main__(): + #Parse Command Line + parser = optparse.OptionParser() + parser.add_option( '-p', '--pass_through', dest='pass_through_options', action='append', type="string", help='These options are passed through directly to GATK, without any modification.' ) + parser.add_option( '-o', '--pass_through_options', dest='pass_through_options_encoded', action='append', type="string", help='These options are passed through directly to GATK, with decoding from binascii.unhexlify.' ) + parser.add_option( '-d', '--dataset', dest='datasets', action='append', type="string", nargs=4, help='"-argument" "original_filename" "galaxy_filetype" "name_prefix"' ) + parser.add_option( '', '--max_jvm_heap', dest='max_jvm_heap', action='store', type="string", default=None, help='If specified, the maximum java virtual machine heap size will be set to the provide value.' ) + parser.add_option( '', '--max_jvm_heap_fraction', dest='max_jvm_heap_fraction', action='store', type="int", default=None, help='If specified, the maximum java virtual machine heap size will be set to the provide value as a fraction of total physical memory.' ) + parser.add_option( '', '--stdout', dest='stdout', action='store', type="string", default=None, help='If specified, the output of stdout will be written to this file.' ) + parser.add_option( '', '--stderr', dest='stderr', action='store', type="string", default=None, help='If specified, the output of stderr will be written to this file.' ) + parser.add_option( '', '--html_report_from_directory', dest='html_report_from_directory', action='append', type="string", nargs=2, help='"Target HTML File" "Directory"') + (options, args) = parser.parse_args() + + tmp_dir = tempfile.mkdtemp( prefix='tmp-gatk-' ) + if options.pass_through_options: + cmd = ' '.join( options.pass_through_options ) + else: + cmd = '' + if options.pass_through_options_encoded: + cmd = '%s %s' % ( cmd, ' '.join( map( unhexlify, options.pass_through_options_encoded ) ) ) + if options.max_jvm_heap is not None: + cmd = cmd.replace( 'java ', 'java -Xmx%s ' % ( options.max_jvm_heap ), 1 ) + elif options.max_jvm_heap_fraction is not None: + cmd = cmd.replace( 'java ', 'java -XX:DefaultMaxRAMFraction=%s -XX:+UseParallelGC ' % ( options.max_jvm_heap_fraction ), 1 ) + bam_filenames = [] + if options.datasets: + for ( dataset_arg, filename, galaxy_ext, prefix ) in options.datasets: + gatk_filename = gatk_filename_from_galaxy( filename, galaxy_ext, target_dir = tmp_dir, prefix = prefix ) + if dataset_arg: + cmd = '%s %s "%s"' % ( cmd, gatk_filetype_argument_substitution( dataset_arg, galaxy_ext ), gatk_filename ) + if galaxy_ext == "bam": + bam_filenames.append( gatk_filename ) + index_bam_files( bam_filenames, tmp_dir ) + #set up stdout and stderr output options + stdout = open_file_from_option( options.stdout, mode = 'wb' ) + stderr = open_file_from_option( options.stderr, mode = 'wb' ) + #if no stderr file is specified, we'll use our own + if stderr is None: + stderr = tempfile.NamedTemporaryFile( prefix="gatk-stderr-", dir=tmp_dir ) + + proc = subprocess.Popen( args=cmd, stdout=stdout, stderr=stderr, shell=True, cwd=tmp_dir ) + return_code = proc.wait() + + if return_code: + stderr_target = sys.stderr + else: + stderr_target = sys.stdout + stderr.flush() + stderr.seek(0) + while True: + chunk = stderr.read( CHUNK_SIZE ) + if chunk: + stderr_target.write( chunk ) + else: + break + stderr.close() + #generate html reports + if options.html_report_from_directory: + for ( html_filename, html_dir ) in options.html_report_from_directory: + html_report_from_directory( open( html_filename, 'wb' ), html_dir ) + + cleanup_before_exit( tmp_dir ) + +if __name__=="__main__": __main__() diff -r 000000000000 -r be6bede22459 test-data/gatk/gatk_analyze_covariates/gatk_analyze_covariates_out_1.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/gatk/gatk_analyze_covariates/gatk_analyze_covariates_out_1.html Tue Apr 01 10:48:14 2014 -0400 @@ -0,0 +1,34 @@ + + +Galaxy - GATK Output + + +

+

+ + diff -r 000000000000 -r be6bede22459 test-data/gatk/gatk_analyze_covariates/gatk_analyze_covariates_out_1.log.contains --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/gatk/gatk_analyze_covariates/gatk_analyze_covariates_out_1.log.contains Tue Apr 01 10:48:14 2014 -0400 @@ -0,0 +1,9 @@ +Program Name: org.broadinstitute.sting.analyzecovariates.AnalyzeCovariates +Reading in input csv file... +...Done! +Writing out intermediate tables for R... +Writing out data tables for read group: A Fake phiX Sample with 340 observations and aggregate residual error = -9.136 +...Done! +Calling analysis R scripts and writing out figures... +Analyzing read group: A Fake phiX Sample +...Done! diff -r 000000000000 -r be6bede22459 test-data/gatk/gatk_count_covariates/gatk_count_covariates_out_1.csv --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/gatk/gatk_count_covariates/gatk_count_covariates_out_1.csv Tue Apr 01 10:48:14 2014 -0400 @@ -0,0 +1,246 @@ +# Counted Sites 41 +# Counted Bases 340 +# Skipped Sites 2 +# Fraction Skipped 1 / 21 bp +ReadGroup,QualityScore,Cycle,Dinuc,Homopolymer,MinimumNQS,Position,nObservations,nMismatches,Qempirical +A Fake phiX Sample,26,1,NN,0,26,0,9,0,40 +A Fake phiX Sample,26,1,NN,1,26,0,1,0,40 +A Fake phiX Sample,26,2,AG,0,26,1,1,0,40 +A Fake phiX Sample,26,2,CC,0,26,1,1,0,40 +A Fake phiX Sample,26,2,CG,0,26,1,3,0,40 +A Fake phiX Sample,26,2,GC,0,26,1,2,0,40 +A Fake phiX Sample,26,2,GC,1,26,1,1,0,40 +A Fake phiX Sample,26,2,GT,0,26,1,1,0,40 +A Fake phiX Sample,26,2,TG,1,26,1,1,0,40 +A Fake phiX Sample,26,3,CC,0,26,2,1,0,40 +A Fake phiX Sample,26,3,CG,0,26,2,3,0,40 +A Fake phiX Sample,26,3,GC,0,26,2,1,0,40 +A Fake phiX Sample,26,3,GC,1,26,2,2,0,40 +A Fake phiX Sample,26,3,GG,0,26,2,1,0,40 +A Fake phiX Sample,26,3,GT,0,26,2,1,0,40 +A Fake phiX Sample,26,3,TG,1,26,2,1,0,40 +A Fake phiX Sample,26,4,CC,0,26,3,2,0,40 +A Fake phiX Sample,26,4,CG,0,26,3,2,0,40 +A Fake phiX Sample,26,4,GA,0,26,3,1,0,40 +A Fake phiX Sample,26,4,GC,1,26,3,2,0,40 +A Fake phiX Sample,26,4,GG,0,26,3,1,0,40 +A Fake phiX Sample,26,4,GT,0,26,3,1,0,40 +A Fake phiX Sample,26,4,TG,1,26,3,1,0,40 +A Fake phiX Sample,26,5,AT,0,26,4,1,0,40 +A Fake phiX Sample,26,5,CC,0,26,4,2,0,40 +A Fake phiX Sample,26,5,CG,0,26,4,2,0,40 +A Fake phiX Sample,26,5,GA,0,26,4,1,0,40 +A Fake phiX Sample,26,5,GC,1,26,4,1,0,40 +A Fake phiX Sample,26,5,GG,0,26,4,1,0,40 +A Fake phiX Sample,26,5,GT,0,26,4,1,0,40 +A Fake phiX Sample,26,5,TG,1,26,4,1,0,40 +A Fake phiX Sample,26,6,AT,0,26,5,1,0,40 +A Fake phiX Sample,26,6,CC,0,26,5,1,0,40 +A Fake phiX Sample,26,6,CG,0,26,5,2,0,40 +A Fake phiX Sample,26,6,GA,0,26,5,1,0,40 +A Fake phiX Sample,26,6,GG,0,26,5,1,0,40 +A Fake phiX Sample,26,6,GT,0,26,5,2,0,40 +A Fake phiX Sample,26,6,TG,0,26,5,1,0,40 +A Fake phiX Sample,26,6,TG,1,26,5,1,0,40 +A Fake phiX Sample,26,7,AT,0,26,6,1,0,40 +A Fake phiX Sample,26,7,CG,0,26,6,1,0,40 +A Fake phiX Sample,26,7,GA,0,26,6,2,1,3 +A Fake phiX Sample,26,7,GG,0,26,6,1,0,40 +A Fake phiX Sample,26,7,GT,0,26,6,2,0,40 +A Fake phiX Sample,26,7,TG,0,26,6,1,0,40 +A Fake phiX Sample,26,7,TG,1,26,6,2,0,40 +A Fake phiX Sample,26,8,AC,0,26,7,1,0,40 +A Fake phiX Sample,26,8,AT,0,26,7,1,0,40 +A Fake phiX Sample,26,8,GA,0,26,7,2,1,3 +A Fake phiX Sample,26,8,GG,0,26,7,2,0,40 +A Fake phiX Sample,26,8,GT,0,26,7,1,0,40 +A Fake phiX Sample,26,8,TG,0,26,7,1,0,40 +A Fake phiX Sample,26,8,TG,1,26,7,2,0,40 +A Fake phiX Sample,26,9,AC,0,26,8,1,0,40 +A Fake phiX Sample,26,9,AT,0,26,8,1,0,40 +A Fake phiX Sample,26,9,CT,0,26,8,1,0,40 +A Fake phiX Sample,26,9,GA,0,26,8,3,1,5 +A Fake phiX Sample,26,9,GG,0,26,8,2,0,40 +A Fake phiX Sample,26,9,TG,0,26,8,1,0,40 +A Fake phiX Sample,26,9,TG,1,26,8,1,0,40 +A Fake phiX Sample,26,10,AC,0,26,9,1,0,40 +A Fake phiX Sample,26,10,AT,0,26,9,2,0,40 +A Fake phiX Sample,26,10,CT,0,26,9,1,0,40 +A Fake phiX Sample,26,10,GA,0,26,9,3,1,5 +A Fake phiX Sample,26,10,GG,0,26,9,1,0,40 +A Fake phiX Sample,26,10,TG,0,26,9,2,0,40 +A Fake phiX Sample,26,11,AC,0,26,10,1,0,40 +A Fake phiX Sample,26,11,AT,0,26,10,2,0,40 +A Fake phiX Sample,26,11,CT,0,26,10,1,0,40 +A Fake phiX Sample,26,11,GA,0,26,10,3,1,5 +A Fake phiX Sample,26,11,TG,0,26,10,3,0,40 +A Fake phiX Sample,26,12,AC,0,26,11,1,0,40 +A Fake phiX Sample,26,12,AC,1,26,11,1,0,40 +A Fake phiX Sample,26,12,AT,0,26,11,1,0,40 +A Fake phiX Sample,26,12,CT,0,26,11,1,0,40 +A Fake phiX Sample,26,12,GA,0,26,11,2,1,3 +A Fake phiX Sample,26,12,GC,1,26,11,1,0,40 +A Fake phiX Sample,26,12,TG,0,26,11,3,0,40 +A Fake phiX Sample,26,13,AC,0,26,12,1,0,40 +A Fake phiX Sample,26,13,AC,1,26,12,1,0,40 +A Fake phiX Sample,26,13,CC,0,26,12,2,0,40 +A Fake phiX Sample,26,13,CT,0,26,12,1,0,40 +A Fake phiX Sample,26,13,GA,0,26,12,2,1,3 +A Fake phiX Sample,26,13,GC,1,26,12,1,0,40 +A Fake phiX Sample,26,13,TG,0,26,12,2,0,40 +A Fake phiX Sample,26,14,AC,0,26,13,1,0,40 +A Fake phiX Sample,26,14,AC,1,26,13,1,0,40 +A Fake phiX Sample,26,14,CC,0,26,13,2,0,40 +A Fake phiX Sample,26,14,CG,0,26,13,1,0,40 +A Fake phiX Sample,26,14,CT,0,26,13,2,0,40 +A Fake phiX Sample,26,14,GA,0,26,13,1,0,40 +A Fake phiX Sample,26,14,GC,1,26,13,1,0,40 +A Fake phiX Sample,26,14,TG,0,26,13,1,0,40 +A Fake phiX Sample,26,15,AC,1,26,14,1,0,40 +A Fake phiX Sample,26,15,CC,0,26,14,2,0,40 +A Fake phiX Sample,26,15,CG,0,26,14,1,0,40 +A Fake phiX Sample,26,15,CT,0,26,14,2,0,40 +A Fake phiX Sample,26,15,GA,0,26,14,1,0,40 +A Fake phiX Sample,26,15,GT,0,26,14,1,0,40 +A Fake phiX Sample,26,15,TG,0,26,14,2,0,40 +A Fake phiX Sample,26,16,AC,1,26,15,1,0,40 +A Fake phiX Sample,26,16,CC,0,26,15,1,0,40 +A Fake phiX Sample,26,16,CG,0,26,15,1,0,40 +A Fake phiX Sample,26,16,CT,0,26,15,1,0,40 +A Fake phiX Sample,26,16,GA,0,26,15,2,0,40 +A Fake phiX Sample,26,16,GT,0,26,15,1,0,40 +A Fake phiX Sample,26,16,TA,0,26,15,1,0,40 +A Fake phiX Sample,26,16,TG,0,26,15,2,0,40 +A Fake phiX Sample,26,17,AC,1,26,16,3,0,40 +A Fake phiX Sample,26,17,CC,0,26,16,1,0,40 +A Fake phiX Sample,26,17,CG,0,26,16,1,0,40 +A Fake phiX Sample,26,17,GA,0,26,16,2,0,40 +A Fake phiX Sample,26,17,GT,0,26,16,1,0,40 +A Fake phiX Sample,26,17,TA,0,26,16,1,0,40 +A Fake phiX Sample,26,17,TG,0,26,16,1,0,40 +A Fake phiX Sample,26,18,AC,1,26,17,3,0,40 +A Fake phiX Sample,26,18,CC,0,26,17,3,0,40 +A Fake phiX Sample,26,18,CG,0,26,17,1,0,40 +A Fake phiX Sample,26,18,GA,0,26,17,1,0,40 +A Fake phiX Sample,26,18,GT,0,26,17,1,0,40 +A Fake phiX Sample,26,18,TA,0,26,17,1,0,40 +A Fake phiX Sample,26,19,AC,1,26,18,2,0,40 +A Fake phiX Sample,26,19,CC,0,26,18,3,0,40 +A Fake phiX Sample,26,19,CG,0,26,18,3,0,40 +A Fake phiX Sample,26,19,GT,0,26,18,1,0,40 +A Fake phiX Sample,26,19,TA,0,26,18,1,0,40 +A Fake phiX Sample,26,20,AC,1,26,19,1,0,40 +A Fake phiX Sample,26,20,CC,0,26,19,2,0,40 +A Fake phiX Sample,26,20,CG,0,26,19,3,0,40 +A Fake phiX Sample,26,20,GA,0,26,19,1,0,40 +A Fake phiX Sample,26,20,GT,0,26,19,2,0,40 +A Fake phiX Sample,26,20,TA,0,26,19,1,0,40 +A Fake phiX Sample,26,21,AC,1,26,20,1,0,40 +A Fake phiX Sample,26,21,AG,1,26,20,1,0,40 +A Fake phiX Sample,26,21,CC,0,26,20,1,0,40 +A Fake phiX Sample,26,21,CG,0,26,20,2,0,40 +A Fake phiX Sample,26,21,GA,0,26,20,1,0,40 +A Fake phiX Sample,26,21,GT,0,26,20,2,0,40 +A Fake phiX Sample,26,21,TA,0,26,20,2,0,40 +A Fake phiX Sample,26,22,AC,1,26,21,2,0,40 +A Fake phiX Sample,26,22,AG,1,26,21,1,0,40 +A Fake phiX Sample,26,22,CC,0,26,21,1,0,40 +A Fake phiX Sample,26,22,CG,0,26,21,1,0,40 +A Fake phiX Sample,26,22,GA,0,26,21,1,0,40 +A Fake phiX Sample,26,22,GG,0,26,21,1,0,40 +A Fake phiX Sample,26,22,GT,0,26,21,1,0,40 +A Fake phiX Sample,26,22,TA,0,26,21,2,0,40 +A Fake phiX Sample,26,23,AC,1,26,22,2,0,40 +A Fake phiX Sample,26,23,AG,1,26,22,1,0,40 +A Fake phiX Sample,26,23,CC,0,26,22,2,0,40 +A Fake phiX Sample,26,23,CG,0,26,22,1,0,40 +A Fake phiX Sample,26,23,GA,0,26,22,1,0,40 +A Fake phiX Sample,26,23,GC,0,26,22,1,0,40 +A Fake phiX Sample,26,23,GG,0,26,22,1,0,40 +A Fake phiX Sample,26,23,TA,0,26,22,1,0,40 +A Fake phiX Sample,26,24,AC,1,26,23,1,0,40 +A Fake phiX Sample,26,24,AG,1,26,23,1,0,40 +A Fake phiX Sample,26,24,CC,0,26,23,2,0,40 +A Fake phiX Sample,26,24,CG,0,26,23,2,0,40 +A Fake phiX Sample,26,24,CT,0,26,23,1,0,40 +A Fake phiX Sample,26,24,GA,0,26,23,1,0,40 +A Fake phiX Sample,26,24,GC,0,26,23,1,0,40 +A Fake phiX Sample,26,24,GG,0,26,23,1,0,40 +A Fake phiX Sample,26,25,AG,1,26,24,1,0,40 +A Fake phiX Sample,26,25,CC,0,26,24,1,0,40 +A Fake phiX Sample,26,25,CG,0,26,24,2,0,40 +A Fake phiX Sample,26,25,CT,0,26,24,1,0,40 +A Fake phiX Sample,26,25,GA,0,26,24,2,0,40 +A Fake phiX Sample,26,25,GC,0,26,24,1,0,40 +A Fake phiX Sample,26,25,GG,0,26,24,1,0,40 +A Fake phiX Sample,26,25,TA,1,26,24,1,0,40 +A Fake phiX Sample,26,26,AG,1,26,25,2,0,40 +A Fake phiX Sample,26,26,CG,0,26,25,1,0,40 +A Fake phiX Sample,26,26,CT,0,26,25,1,0,40 +A Fake phiX Sample,26,26,GA,0,26,25,2,0,40 +A Fake phiX Sample,26,26,GC,0,26,25,1,0,40 +A Fake phiX Sample,26,26,GG,0,26,25,1,0,40 +A Fake phiX Sample,26,26,TA,1,26,25,1,0,40 +A Fake phiX Sample,26,27,AC,2,26,26,1,0,40 +A Fake phiX Sample,26,27,AG,1,26,26,2,0,40 +A Fake phiX Sample,26,27,CT,0,26,26,1,0,40 +A Fake phiX Sample,26,27,GA,0,26,26,1,0,40 +A Fake phiX Sample,26,27,GC,0,26,26,1,0,40 +A Fake phiX Sample,26,27,GG,0,26,26,2,0,40 +A Fake phiX Sample,26,27,TA,1,26,26,1,0,40 +A Fake phiX Sample,26,28,AC,2,26,27,1,0,40 +A Fake phiX Sample,26,28,AG,1,26,27,1,0,40 +A Fake phiX Sample,26,28,CC,1,26,27,1,0,40 +A Fake phiX Sample,26,28,CT,0,26,27,1,0,40 +A Fake phiX Sample,26,28,GC,0,26,27,2,0,40 +A Fake phiX Sample,26,28,GG,0,26,27,2,0,40 +A Fake phiX Sample,26,28,TA,1,26,27,1,0,40 +A Fake phiX Sample,26,29,AC,2,26,28,1,0,40 +A Fake phiX Sample,26,29,CC,1,26,28,1,0,40 +A Fake phiX Sample,26,29,CT,0,26,28,2,0,40 +A Fake phiX Sample,26,29,GC,0,26,28,2,0,40 +A Fake phiX Sample,26,29,GG,0,26,28,1,0,40 +A Fake phiX Sample,26,29,TA,1,26,28,1,0,40 +A Fake phiX Sample,26,30,AC,2,26,29,1,0,40 +A Fake phiX Sample,26,30,CC,1,26,29,1,0,40 +A Fake phiX Sample,26,30,CT,0,26,29,3,0,40 +A Fake phiX Sample,26,30,GC,0,26,29,1,0,40 +A Fake phiX Sample,26,30,TA,1,26,29,2,0,40 +A Fake phiX Sample,26,31,AC,2,26,30,1,0,40 +A Fake phiX Sample,26,31,CC,1,26,30,1,0,40 +A Fake phiX Sample,26,31,CT,0,26,30,2,0,40 +A Fake phiX Sample,26,31,TA,1,26,30,3,0,40 +A Fake phiX Sample,26,32,AA,0,26,31,1,0,40 +A Fake phiX Sample,26,32,AC,1,26,31,1,0,40 +A Fake phiX Sample,26,32,AC,2,26,31,1,0,40 +A Fake phiX Sample,26,32,CC,1,26,31,1,0,40 +A Fake phiX Sample,26,32,CT,0,26,31,1,0,40 +A Fake phiX Sample,26,32,TA,1,26,31,2,0,40 +A Fake phiX Sample,26,33,AA,0,26,32,1,0,40 +A Fake phiX Sample,26,33,AC,1,26,32,1,0,40 +A Fake phiX Sample,26,33,AC,2,26,32,1,0,40 +A Fake phiX Sample,26,33,AT,0,26,32,1,0,40 +A Fake phiX Sample,26,33,CC,1,26,32,1,0,40 +A Fake phiX Sample,26,33,CT,0,26,32,1,0,40 +A Fake phiX Sample,26,33,TA,1,26,32,1,0,40 +A Fake phiX Sample,26,34,AA,0,26,33,1,0,40 +A Fake phiX Sample,26,34,AC,1,26,33,1,0,40 +A Fake phiX Sample,26,34,AT,0,26,33,1,0,40 +A Fake phiX Sample,26,34,CC,1,26,33,1,0,40 +A Fake phiX Sample,26,34,CT,0,26,33,2,0,40 +A Fake phiX Sample,26,34,TA,1,26,33,1,0,40 +A Fake phiX Sample,26,34,TG,0,26,33,1,0,40 +A Fake phiX Sample,26,35,AA,0,26,34,1,0,40 +A Fake phiX Sample,26,35,AT,0,26,34,1,0,40 +A Fake phiX Sample,26,35,CT,0,26,34,2,0,40 +A Fake phiX Sample,26,35,GA,0,26,34,1,0,40 +A Fake phiX Sample,26,35,TA,1,26,34,2,0,40 +A Fake phiX Sample,26,35,TG,0,26,34,1,0,40 +A Fake phiX Sample,26,36,AA,0,26,35,2,0,40 +A Fake phiX Sample,26,36,AG,0,26,35,1,0,40 +A Fake phiX Sample,26,36,AT,0,26,35,1,0,40 +A Fake phiX Sample,26,36,CT,0,26,35,2,0,40 +A Fake phiX Sample,26,36,GA,0,26,35,1,0,40 +A Fake phiX Sample,26,36,TA,0,26,35,2,0,40 +A Fake phiX Sample,26,36,TG,0,26,35,1,0,40 +EOF diff -r 000000000000 -r be6bede22459 tool_dependencies.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tool_dependencies.xml Tue Apr 01 10:48:14 2014 -0400 @@ -0,0 +1,6 @@ + + + + + +