Mercurial > repos > devteam > table_recalibration
diff table_recalibration.xml @ 1:30e1dd77e99c draft default tip
Uploaded correct tarball.
author | devteam |
---|---|
date | Mon, 14 Apr 2014 08:48:25 -0400 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/table_recalibration.xml Mon Apr 14 08:48:25 2014 -0400 @@ -0,0 +1,232 @@ +<tool id="gatk_table_recalibration" name="Table Recalibration" version="0.0.5"> + <description>on BAM files</description> + <requirements> + <requirement type="package" version="1.4">gatk</requirement> + <requirement type="package" version="0.1.18">samtools</requirement> + </requirements> + <macros> + <import>gatk_macros.xml</import> + </macros> + <command interpreter="python">gatk_wrapper.py + --max_jvm_heap_fraction "1" + --stdout "${output_log}" + -d "-I" "${reference_source.input_bam}" "${reference_source.input_bam.ext}" "gatk_input" + #if str( $reference_source.input_bam.metadata.bam_index ) != "None": + -d "" "${reference_source.input_bam.metadata.bam_index}" "bam_index" "gatk_input" ##hardcode galaxy ext type as bam_index + #end if + -p 'java + -jar "\$JAVA_JAR_PATH/GenomeAnalysisTK.jar" + -T "TableRecalibration" + -o "${output_bam}" + -et "NO_ET" ##ET no phone home + ##--num_threads 4 ##hard coded, for now + ##-log "${output_log}" ##don't use this to log to file, instead directly capture stdout + #if $reference_source.reference_source_selector != "history": + -R "${reference_source.ref_file.fields.path}" + #end if + --recal_file "${input_recal}" + --disable_bam_indexing + ' + #include source=$standard_gatk_options# + + ##start analysis specific options + #if $analysis_param_type.analysis_param_type_selector == "advanced": + -p ' + #if $analysis_param_type.default_read_group_type.default_read_group_type_selector == "set": + --default_read_group "${analysis_param_type.default_read_group_type.default_read_group}" + #end if + #if str( $analysis_param_type.default_platform ) != "default": + --default_platform "${analysis_param_type.default_platform}" + #end if + #if str( $analysis_param_type.force_read_group_type.force_read_group_type_selector ) == "set": + --force_read_group "${analysis_param_type.force_read_group_type.force_read_group}" + #end if + #if str( $analysis_param_type.force_platform ) != "default": + --force_platform "${analysis_param_type.force_platform}" + #end if + ${analysis_param_type.exception_if_no_tile} + #if str( $analysis_param_type.solid_options_type.solid_options_type_selector ) == "set": + #if str( $analysis_param_type.solid_options_type.solid_recal_mode ) != "default": + --solid_recal_mode "${analysis_param_type.solid_options_type.solid_recal_mode}" + #end if + #if str( $analysis_param_type.solid_options_type.solid_nocall_strategy ) != "default": + --solid_nocall_strategy "${analysis_param_type.solid_options_type.solid_nocall_strategy}" + #end if + #end if + ${analysis_param_type.simplify_bam} + --preserve_qscores_less_than "${analysis_param_type.preserve_qscores_less_than}" + --smoothing "${analysis_param_type.smoothing}" + --max_quality_score "${analysis_param_type.max_quality_score}" + --window_size_nqs "${analysis_param_type.window_size_nqs}" + --homopolymer_nback "${analysis_param_type.homopolymer_nback}" + ${analysis_param_type.do_not_write_original_quals} + ' + #end if + </command> + <inputs> + <param name="input_recal" type="data" format="csv" label="Covariates table recalibration file" help="-recalFile,--recal_file &lt;recal_file&gt;" /> + <conditional name="reference_source"> + <expand macro="reference_source_selector_param" /> + <when value="cached"> + <param name="input_bam" type="data" format="bam" label="BAM file" help="-I,--input_file &lt;input_file&gt;"> + <validator type="unspecified_build" /> + <validator type="dataset_metadata_in_data_table" table_name="gatk_picard_indexes" metadata_name="dbkey" metadata_column="dbkey" message="Sequences are not currently available for the specified build." /> <!-- fixme!!! this needs to be a select --> + </param> + <param name="ref_file" type="select" label="Using reference genome" help="-R,--reference_sequence &lt;reference_sequence&gt;" > + <options from_data_table="gatk_picard_indexes"> + <filter type="data_meta" key="dbkey" ref="input_bam" column="dbkey"/> + </options> + <validator type="no_options" message="A built-in reference genome is not available for the build associated with the selected input file"/> + </param> + </when> + <when value="history"> + <param name="input_bam" type="data" format="bam" label="BAM file" help="-I,--input_file &lt;input_file&gt;" /> + <param name="ref_file" type="data" format="fasta" label="Using reference file" help="-R,--reference_sequence &lt;reference_sequence&gt;"> + <options> + <filter type="data_meta" key="dbkey" ref="input_bam" /> + </options> + </param> + </when> + </conditional> + + <expand macro="gatk_param_type_conditional" /> + + + <expand macro="analysis_type_conditional"> + <conditional name="default_read_group_type"> + <param name="default_read_group_type_selector" type="select" label="Set default Read Group" help="--default_read_group"> + <option value="default" selected="True">Don't Set</option> + <option value="set">Set</option> + </param> + <when value="default"> + <!-- do nothing here --> + </when> + <when value="set"> + <param name="default_read_group" type="text" value="Unknown" label="If a read has no read group then default to the provided String"/> + </when> + </conditional> + <param name="default_platform" type="select" label="Set default Platform" help="--default_platform"> + <option value="default" selected="True">Don't Set</option> + <option value="illumina">illumina</option> + <option value="454">454</option> + <option value="solid">solid</option> + </param> + <conditional name="force_read_group_type"> + <param name="force_read_group_type_selector" type="select" label="Force Read Group" help="--force_read_group"> + <option value="default" selected="True">Don't Force</option> + <option value="set">Force</option> + </param> + <when value="default"> + <!-- do nothing here --> + </when> + <when value="set"> + <param name="force_read_group" type="text" value="Unknown" label="If provided, the read group ID of EVERY read will be forced to be the provided String."/> + </when> + </conditional> + <param name="force_platform" type="select" label="Force Platform" help="--force_platform"> + <option value="default" selected="True">Don't Force</option> + <option value="illumina">illumina</option> + <option value="454">454</option> + <option value="solid">solid</option> + </param> + <param name="exception_if_no_tile" type="boolean" checked="False" truevalue="--exception_if_no_tile" falsevalue="" label="Throw an exception when no tile can be found" help="--exception_if_no_tile"/> + <conditional name="solid_options_type"> + <param name="solid_options_type_selector" type="select" label="Set SOLiD specific options"> + <option value="default" selected="True">Don't Set</option> + <option value="set">Set</option> + </param> + <when value="default"> + <!-- do nothing here --> + </when> + <when value="set"> + <param name="solid_recal_mode" type="select" label="How should we recalibrate solid bases in which the reference was inserted" help="-sMode,--solid_recal_mode &lt;solid_recal_mode&gt;"> + <option value="default" selected="True">Don't set</option> + <option value="DO_NOTHING">DO_NOTHING</option> + <option value="SET_Q_ZERO">SET_Q_ZERO</option> + <option value="SET_Q_ZERO_BASE_N">SET_Q_ZERO_BASE_N</option> + <option value="REMOVE_REF_BIAS">REMOVE_REF_BIAS</option> + </param> + <param name="solid_nocall_strategy" type="select" label="Behavior of the recalibrator when it encounters no calls" help="-solid_nocall_strategy,--solid_nocall_strategy &lt;solid_nocall_strategy&gt;"> + <option value="default" selected="True">Don't set</option> + <option value="THROW_EXCEPTION">THROW_EXCEPTION</option> + <option value="LEAVE_READ_UNRECALIBRATED">LEAVE_READ_UNRECALIBRATED</option> + <option value="PURGE_READ">PURGE_READ</option> + </param> + </when> + </conditional> + <param name="simplify_bam" type="boolean" checked="False" truevalue="-simplifyBAM" falsevalue="" label="Simplify BAM" help="-simplifyBAM,--simplifyBAM"/> + <param name="window_size_nqs" type="integer" value="5" label="Window size used by MinimumNQSCovariate" help="--window_size_nqs"/> + <param name="homopolymer_nback" type="integer" value="7" label="Number of previous bases to look at in HomopolymerCovariate" help="-nback,--homopolymer_nback &lt;homopolymer_nback&gt;" /> + <param name="preserve_qscores_less_than" type="integer" value="5" label="Bases with quality scores less than this threshold won't be recalibrated" help="-pQ,--preserve_qscores_less_than &lt;preserve_qscores_less_than&gt;"/> + <param name="smoothing" type="integer" value="1" label="smoothing" help="-sm,--smoothing &lt;smoothing&gt;"/> + <param name="max_quality_score" type="integer" value="50" label="Max quality score" help="-maxQ,--max_quality_score &lt;max_quality_score&gt;"/> + <param name="do_not_write_original_quals" type="boolean" checked="False" truevalue="--doNotWriteOriginalQuals" falsevalue="" label="Do Not Write Original Quality tag" help="-noOQs,--doNotWriteOriginalQuals"/> + </expand> + </inputs> + <outputs> + <data format="bam" name="output_bam" label="${tool.name} on ${on_string} (BAM)" /> + <data format="txt" name="output_log" label="${tool.name} on ${on_string} (log)" /> + </outputs> + <tests> + <test> + <param name="input_recal" value="gatk/gatk_count_covariates/gatk_count_covariates_out_1.csv" ftype="csv" /> + <param name="reference_source_selector" value="history" /> + <param name="ref_file" value="phiX.fasta" ftype="fasta" /> + <param name="input_bam" value="gatk/gatk_indel_realigner/gatk_indel_realigner_out_1.bam" ftype="bam" /> + <param name="gatk_param_type_selector" value="basic" /> + <param name="analysis_param_type_selector" value="basic" /> + <output name="output_bam" file="gatk/gatk_table_recalibration/gatk_table_recalibration_out_1.bam" ftype="bam" lines_diff="4" /> + <output name="output_log" file="gatk/gatk_table_recalibration/gatk_table_recalibration_out_1.log.contains" compare="contains" /> + </test> + </tests> + <help> +**What it does** + +This walker is designed to work as the second pass in a two-pass processing step, doing a by-read traversal. For each base in each read this walker calculates various user-specified covariates (such as read group, reported quality score, cycle, and dinuc) Using these values as a key in a large hashmap the walker calculates an empirical base quality score and overwrites the quality score currently in the read. This walker then outputs a new bam file with these updated (recalibrated) reads. Note: This walker expects as input the recalibration table file generated previously by CovariateCounterWalker. Note: This walker is designed to be used in conjunction with CovariateCounterWalker. + +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: TableRecalibration accepts an aligned BAM and a recalibration CSV input files. + + +**Outputs** + +The output is in BAM format. + + +Go `here <http://www.broadinstitute.org/gsa/wiki/index.php/Input_files_for_the_GATK>`_ for details on GATK file formats. + +------- + +**Settings**:: + + default_read_group If a read has no read group then default to the provided String. + default_platform If a read has no platform then default to the provided String. Valid options are illumina, 454, and solid. + force_read_group If provided, the read group ID of EVERY read will be forced to be the provided String. This is useful to collapse all data into a single read group. + force_platform If provided, the platform of EVERY read will be forced to be the provided String. Valid options are illumina, 454, and solid. + window_size_nqs The window size used by MinimumNQSCovariate for its calculation + homopolymer_nback The number of previous bases to look at in HomopolymerCovariate + exception_if_no_tile If provided, TileCovariate will throw an exception when no tile can be found. The default behavior is to use tile = -1 + solid_recal_mode How should we recalibrate solid bases in whichthe reference was inserted? Options = DO_NOTHING, SET_Q_ZERO, SET_Q_ZERO_BASE_N, or REMOVE_REF_BIAS (DO_NOTHING|SET_Q_ZERO|SET_Q_ZERO_BASE_N|REMOVE_REF_BIAS) + solid_nocall_strategy Defines the behavior of the recalibrator when it encounters no calls in the color space. Options = THROW_EXCEPTION, LEAVE_READ_UNRECALIBRATED, or PURGE_READ (THROW_EXCEPTION|LEAVE_READ_UNRECALIBRATED|PURGE_READ) + recal_file Filename for the input covariates table recalibration .csv file + out The output BAM file + bam_compression Compression level to use for writing BAM files + disable_bam_indexing Turn off on-the-fly creation of indices for output BAM files. + simplifyBAM If provided, output BAM files will be simplified to include just key reads for downstream variation discovery analyses (removing duplicates, PF-, non-primary reads), as well stripping all extended tags from the kept reads except the read group identifier + preserve_qscores_less_than Bases with quality scores less than this threshold won't be recalibrated, default=5. In general it's unsafe to change qualities scores below < 5, since base callers use these values to indicate random or bad bases + smoothing Number of imaginary counts to add to each bin bin order to smooth out bins with few data points, default=1 + max_quality_score The integer value at which to cap the quality scores, default=50 + doNotWriteOriginalQuals If true, we will not write the original quality (OQ) tag for each read + +@CITATION_SECTION@ + </help> +</tool>