RealignerTargetCreator

Define intervals to target for local realignment

Category Sequence Data Processing Tools

Traversal LocusWalker

PartitionBy LOCUS


Overview

The local realignment process is designed to consume one or more BAM files and to locally realign reads such that the number of mismatching bases is minimized across all the reads. In general, a large percent of regions requiring local realignment are due to the presence of an insertion or deletion (indels) in the individual's genome with respect to the reference genome. Such alignment artifacts result in many bases mismatching the reference near the misalignment, which are easily mistaken as SNPs. Moreover, since read mapping algorithms operate on each read independently, it is impossible to place reads on the reference genome such that mismatches are minimized across all reads. Consequently, even when some reads are correctly mapped with indels, reads covering the indel near just the start or end of the read are often incorrectly mapped with respect the true indel, also requiring realignment. Local realignment serves to transform regions with misalignments due to indels into clean reads containing a consensus indel suitable for standard variant discovery approaches.

Note that indel realignment is no longer necessary for variant discovery if you plan to use a variant caller that performs a haplotype assembly step, such as HaplotypeCaller or MuTect2. However it is still required when using legacy callers such as UnifiedGenotyper or the original MuTect.

There are 2 steps to the realignment process:

  1. Determining (small) suspicious intervals which are likely in need of realignment (RealignerTargetCreator)
  2. Running the realigner over those intervals (see the IndelRealigner tool)

For more details, see the indel realignment method documentation.

Inputs

One or more aligned BAM files and optionally, one or more lists of known indels.

Output

A list of target intervals to pass to the IndelRealigner.

Usage example

 java -jar GenomeAnalysisTK.jar \
   -T RealignerTargetCreator \
   -R reference.fasta \
   -I input.bam \
   --known indels.vcf \
   -o forIndelRealigner.intervals
 

Notes

  • The input BAM(s), reference, and known indel file(s) should be the same ones to be used for the IndelRealigner step.
  • When multiple potential indels are found by the tool in the same general region, the tool will choose the most likely one for realignment to the exclusion of the others. This is a known limitation of the tool.
  • Because reads produced from the 454 technology inherently contain false indels, the realigner will not work with them (or with reads from similar technologies).
  • This tool also ignores MQ0 reads and reads with consecutive indel operators in the CIGAR string.

Additional Information

Read filters

These Read Filters are automatically applied to the data by the Engine before processing by RealignerTargetCreator.

Parallelism options

This tool can be run in multi-threaded mode using this option.

Window size

This tool uses a sliding window on the reference.

  • Window start: -1 bp before the locus
  • Window stop: 50 bp after the locus

Command-line Arguments

Engine arguments

All tools inherit arguments from the GATK Engine' "CommandLineGATK" argument collection, which can be used to modify various aspects of the tool's function. For example, the -L argument directs the GATK engine to restrict processing to specific genomic intervals; or the -rf argument allows you to apply certain read filters to exclude some of the data from the analysis.

RealignerTargetCreator specific arguments

This table summarizes the command-line arguments that are specific to this tool. For more details on each argument, see the list further down below the table or click on an argument name to jump directly to that entry in the list.

Argument name(s) Default value Summary
Optional Inputs
--known
[] Input VCF file with known indels
Optional Outputs
--out
 -o
NA An output file created by the walker. Will overwrite contents if file exists
Optional Parameters
--maxIntervalSize
 -maxInterval
500 maximum interval size; any intervals larger than this value will be dropped
--minReadsAtLocus
 -minReads
4 minimum reads at a locus to enable using the entropy calculation
--mismatchFraction
 -mismatch
0.0 fraction of base qualities needing to mismatch for a position to have high entropy
--windowSize
 -window
10 window size for calculating entropy or SNP clusters

Argument details

Arguments in this list are specific to this tool. Keep in mind that other arguments are available that are shared with other tools (e.g. command-line GATK arguments); see Inherited arguments above.


--known / -known

Input VCF file with known indels
Any number of VCF files representing known SNPs and/or indels. Could be e.g. dbSNP and/or official 1000 Genomes indel calls. SNPs in these files will be ignored unless the --mismatchFraction argument is used.

This argument supports reference-ordered data (ROD) files in the following formats: BCF2, VCF, VCF3

List[RodBinding[VariantContext]]  []


--maxIntervalSize / -maxInterval

maximum interval size; any intervals larger than this value will be dropped
Because the realignment algorithm is N^2, allowing too large an interval might take too long to completely realign.

int  500  [ [ -∞  ∞ ] ]


--minReadsAtLocus / -minReads

minimum reads at a locus to enable using the entropy calculation

int  4  [ [ -∞  ∞ ] ]


--mismatchFraction / -mismatch

fraction of base qualities needing to mismatch for a position to have high entropy
To disable this behavior, set this value to <= 0 or > 1. This feature is really only necessary when using an ungapped aligner (e.g. MAQ in the case of single-end read data) and should be used in conjunction with '--model USE_SW' in the IndelRealigner.

double  0.0  [ [ -∞  ∞ ] ]


--out / -o

An output file created by the walker. Will overwrite contents if file exists
The target intervals for realignment.

File  NA


--windowSize / -window

window size for calculating entropy or SNP clusters
Any two SNP calls and/or high entropy positions are considered clustered when they occur no more than this many basepairs apart. Must be > 1.

int  10  [ [ -∞  ∞ ] ]


Return to top


See also GATK Documentation Index | Tool Docs Index | Support Forum

GATK version 3.8-0-ge9d806836 built at 2017/07/29 01:40:22.