Call SNPs and indels simultaneously via local de-novo assembly of haplotypes in an active region.
Input bam file(s) from which to make calls
VCF file with raw, unrecalibrated SNP and indel calls.
java -jar GenomeAnalysisTK.jar -T HaplotypeCaller -R reference/human_g1k_v37.fasta -I sample1.bam [-I sample2.bam ...] \ --dbsnp dbSNP.vcf \ -stand_call_conf [50.0] \ -stand_emit_conf 10.0 \ [-L targets.interval_list] -o output.raw.snps.indels.vcf
These Read Filters are automatically applied to the data by the Engine before processing by HaplotypeCaller.
This tool can be run in multi-threaded mode using this option.
This tool applies the following downsampling settings by default.
This tool uses ActiveRegions on the reference.
The arguments described in the entries below can be supplied to this tool to modify its behavior. For example, the -L argument directs the GATK engine restricts processing to specific genomic intervals (this is an Engine capability and is therefore available to all GATK walkers).
This table summarizes the command-line arguments that are specific to this tool. For details, see the list further down below the table.
|--alleles||RodBinding[VariantContext]||none||The set of alleles at which to genotype when --genotyping_mode is GENOTYPE_GIVEN_ALLELES|
|--activeRegionOut||PrintStream||NA||Output the active region to this IGV formatted file|
|--activityProfileOut||PrintStream||NA||Output the raw activity profile results in IGV format|
|--graphOutput||PrintStream||NA||File to which debug assembly graph information should be written|
|--out||VariantContextWriter||stdout||File to which variants should be written|
|-contamination||double||0.0||Fraction of contamination in sequencing data (for all samples) to aggressively remove|
|--genotyping_mode||GENOTYPING_MODE||DISCOVERY||Specifies how to determine the alternate alleles to use for genotyping|
|--group||String||[Standard]||One or more classes/groups of annotations to apply to variant calls|
|--heterozygosity||Double||0.001||Heterozygosity value used to compute prior likelihoods for any locus. See the GATKDocs for full details on the meaning of this population genetics concept|
|--indel_heterozygosity||double||1.25E-4||Heterozygosity for indel calling. See the GATKDocs for heterozygosity for full details on the meaning of this population genetics concept|
|-stand_call_conf||double||30.0||The minimum phred-scaled confidence threshold at which variants should be called|
|-stand_emit_conf||double||30.0||The minimum phred-scaled confidence threshold at which variants should be emitted (and filtered with LowQual if less than the calling threshold)|
|--activeRegionIn||List[IntervalBinding[Feature]]||NA||Use this interval list file as the active regions to process|
|--comp||List[RodBinding[VariantContext]]||||comparison VCF file|
|--bamOutput||StingSAMFileWriter||NA||File to which assembled haplotypes should be written|
|--activeRegionExtension||Integer||NA||The active region extension; if not provided defaults to Walker annotated default|
|--activeRegionMaxSize||Integer||NA||The active region maximum size; if not provided defaults to Walker annotated default|
|--annotation||List[String]||[ClippingRankSumTest, DepthPerSampleHC]||One or more specific annotations to apply to variant calls|
|--bamWriterType||Type||CALLED_HAPLOTYPES||How should haplotypes be written to the BAM?|
|--bandPassSigma||Double||NA||The sigma of the band pass filter Gaussian kernel; if not provided defaults to Walker annotated default|
|-contaminationFile||File||NA||Tab-separated File containing fraction of contamination in sequencing data (per sample) to aggressively remove. Format should be "
|--emitRefConfidence||ReferenceConfidenceMode||NONE||Emit experimental reference confidence scores|
|-ERCIS||int||10||The size of an indel to check for in the reference model|
|--excludeAnnotation||List[String]||[SpanningDeletions, TandemRepeatAnnotator]||One or more specific annotations to exclude|
|--gcpHMM||int||10||Flat gap continuation penalty for use in the Pair HMM|
|-globalMAPQ||int||45||The global assumed mismapping rate for reads|
|--GVCFGQBands||List[Integer]||[5, 20, 60]||Emit experimental reference confidence scores|
|--input_prior||List[Double]||||Input prior for calls|
|--kmerSize||List[Integer]||[10, 25]||Kmer size to use in the read threading assembler|
|--max_alternate_alleles||int||6||Maximum number of alternate alleles to genotype|
|--maxNumHaplotypesInPopulation||int||128||Maximum number of haplotypes to consider for your population. This number will probably need to be increased when calling organisms with high heterozygosity.|
|--minPruning||int||2||The minimum allowed pruning factor in assembly graph. Paths with < X supporting kmers are pruned from the graph|
|--numPruningSamples||int||1||The number of samples that must pass the minPuning factor in order for the path to be kept|
|--pcr_indel_model||PCR_ERROR_MODEL||CONSERVATIVE||The PCR indel model to use|
|--debug||boolean||false||If specified, print out very verbose debug information about each triggering active region|
|-dontIncreaseKmerSizesForCycles||boolean||false||Should we disable the iterating over kmer sizes when graph cycles are detected?|
|--forceActive||boolean||false||If provided, all bases will be tagged as active|
|--mergeVariantsViaLD||boolean||false||If specified, we will merge variants together into block substitutions that are in strong local LD|
|--useAllelesTrigger||boolean||false||If specified, use additional trigger on variants found in an external alleles file|
|-useFilteredReadsForAnnotations||boolean||false||If specified, use the contamination-filtered read maps for the purposes of annotating variants|
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.
The active region extension; if not provided defaults to Walker annotated default.
Use this interval list file as the active regions to process.
The active region maximum size; if not provided defaults to Walker annotated default.
Output the active region to this IGV formatted file. If provided, this walker will write out its active and inactive regions to this file in the IGV formatted TAB deliminated output: http://www.broadinstitute.org/software/igv/IGV Intended to make debugging the active region calculations easier
Output the raw activity profile results in IGV format. If provided, this walker will write out its activity profile (per bp probabilities of being active) to this file in the IGV formatted TAB deliminated output: http://www.broadinstitute.org/software/igv/IGV Intended to make debugging the activity profile calculations easier
The set of alleles at which to genotype when --genotyping_mode is GENOTYPE_GIVEN_ALLELES. When the UnifiedGenotyper is put into GENOTYPE_GIVEN_ALLELES mode it will genotype the samples using only the alleles provide in this rod binding --alleles binds reference ordered data. This argument supports ROD files of the following types: BCF2, VCF, VCF3
One or more specific annotations to apply to variant calls. Which annotations to add to the output VCF file. See the VariantAnnotator -list argument to view available annotations.
File to which assembled haplotypes should be written. The assembled haplotypes will be written as BAM to this file if requested. Really for debugging purposes only. Note that the output here does not include uninformative reads so that not every input read is emitted to the bam. Turning on this mode may result in serious performance cost for the HC. It's really only appropriate to use in specific areas where you want to better understand why the HC is making specific calls. The reads are written out containing a HC tag (integer) that encodes which haplotype each read best matches according to the haplotype caller's likelihood calculation. The use of this tag is primarily intended to allow good coloring of reads in IGV. Simply go to Color Alignments By > Tag and enter HC to more easily see which reads go with these haplotype. Note that the haplotypes (called or all, depending on mode) are emitted as single reads covering the entire active region, coming from read HC and a special read group. Note that only reads that are actually informative about the haplotypes are emitted. By informative we mean that there's a meaningful difference in the likelihood of the read coming from one haplotype compared to its next best haplotype. The best way to visualize the output of this mode is with IGV. Tell IGV to color the alignments by tag, and give it the HC tag, so you can see which reads support each haplotype. Finally, you can tell IGV to group by sample, which will separate the potential haplotypes from the reads. All of this can be seen in the following screenshot: https://www.dropbox.com/s/xvy7sbxpf13x5bp/haplotypecaller%20bamout%20for%20docs.png
How should haplotypes be written to the BAM?. The type of BAM output we want to see.
The --bamWriterType argument is an enumerated type (Type), which can have one of the following values:
The sigma of the band pass filter Gaussian kernel; if not provided defaults to Walker annotated default.
comparison VCF file. If a call overlaps with a record from the provided comp track, the INFO field will be annotated as such in the output with the track name (e.g. -comp:FOO will have 'FOO' in the INFO field). Records that are filtered in the comp track will be ignored. Note that 'dbSNP' has been special-cased (see the --dbsnp argument). --comp binds reference ordered data. This argument supports ROD files of the following types: BCF2, VCF, VCF3
Fraction of contamination in sequencing data (for all samples) to aggressively remove. If this fraction is greater is than zero, the caller will aggressively attempt to remove contamination through biased down-sampling of reads. Basically, it will ignore the contamination fraction of reads for each alternate allele. So if the pileup contains N total bases, then we will try to remove (N * contamination fraction) bases for each alternate allele.
Tab-separated File containing fraction of contamination in sequencing data (per sample) to aggressively remove. Format should be "
dbSNP file. rsIDs from this file are used to populate the ID column of the output. Also, the DB INFO flag will be set when appropriate. dbSNP is not used in any way for the calculations themselves. --dbsnp binds reference ordered data. This argument supports ROD files of the following types: BCF2, VCF, VCF3
If specified, print out very verbose debug information about each triggering active region.
Should we disable the iterating over kmer sizes when graph cycles are detected?.
Emit experimental reference confidence scores.
The --emitRefConfidence argument is an enumerated type (ReferenceConfidenceMode), which can have one of the following values:
The size of an indel to check for in the reference model. This parameter determines the maximum size of an indel considered as potentially segregating in the reference model. It is used to eliminate reads from being indel informative at a site, and determines by that mechanism the certainty in the reference base. Conceptually, setting this parameter to X means that each informative read is consistent with any indel of size < X being present at a specific position in the genome, given its alignment to the reference.
One or more specific annotations to exclude. Which annotations to exclude from output in the VCF file. Note that this argument has higher priority than the -A or -G arguments, so annotations will be excluded even if they are explicitly included with the other options.
If provided, all bases will be tagged as active. For the active region walker to treat all bases as active. Useful for debugging when you want to force something like the HaplotypeCaller to process a specific interval you provide the GATK
Flat gap continuation penalty for use in the Pair HMM.
Specifies how to determine the alternate alleles to use for genotyping.
The --genotyping_mode argument is an enumerated type (GENOTYPING_MODE), which can have one of the following values:
The global assumed mismapping rate for reads. The phredScaledGlobalReadMismappingRate reflects the average global mismapping rate of all reads, regardless of their mapping quality. This term effects the probability that a read originated from the reference haplotype, regardless of its edit distance from the reference, in that the read could have originated from the reference haplotype but from another location in the genome. Suppose a read has many mismatches from the reference, say like 5, but has a very high mapping quality of 60. Without this parameter, the read would contribute 5 * Q30 evidence in favor of its 5 mismatch haplotype compared to reference, potentially enough to make a call off that single read for all of these events. With this parameter set to Q30, though, the maximum evidence against the reference that this (and any) read could contribute against reference is Q30. Set this term to any negative number to turn off the global mapping rate
File to which debug assembly graph information should be written.
One or more classes/groups of annotations to apply to variant calls. Which groups of annotations to add to the output VCF file. See the VariantAnnotator -list argument to view available groups.
Emit experimental reference confidence scores. The GQ partition intervals Should be a non-empty list of boundaries. For example, suppose this variable is [A, B, C] We would partition our hom-ref sites into the following bands: X < A A <= X < B B <= X < C X >= C The default bands with (1, 10, 20, 30, 40, 50) give the following GQ blocks: [0, 0] (0, 10] (10, 20] (20, 30] (30, 40] (40, 50] (50, 99] Note that in the GATK GQ values are capped at 99.
Heterozygosity value used to compute prior likelihoods for any locus. See the GATKDocs for full details on the meaning of this population genetics concept. The expected heterozygosity value used to compute prior probability that a locus is non-reference. The default priors are for provided for humans: het = 1e-3 which means that the probability of N samples being hom-ref at a site is: 1 - sum_i_2N (het / i) Note that heterozygosity as used here is the population genetics concept: http://en.wikipedia.org/wiki/Zygosity#Heterozygosity_in_population_genetics That is, a hets value of 0.01 implies that two randomly chosen chromosomes from the population of organisms would differ from each other (one being A and the other B) at a rate of 1 in 100 bp. Note that this quantity has nothing to do with the likelihood of any given sample having a heterozygous genotype, which in the GATK is purely determined by the probability of the observed data P(D | AB) under the model that there may be a AB het genotype. The posterior probability of this AB genotype would use the het prior, but the GATK only uses this posterior probability in determining the prob. that a site is polymorphic. So changing the het parameters only increases the chance that a site will be called non-reference across all samples, but doesn't actually change the output genotype likelihoods at all, as these aren't posterior probabilities at all. The quantity that changes whether the GATK considers the possibility of a het genotype at all is the ploidy, which determines how many chromosomes each individual in the species carries.
Heterozygosity for indel calling. See the GATKDocs for heterozygosity for full details on the meaning of this population genetics concept. This argument informs the prior probability of having an indel at a site.
Input prior for calls. By default, the prior specified with the argument --heterozygosity/-hets is used for variant discovery at a particular locus, using an infinite sites model, see e.g. Waterson (1975) or Tajima (1996). This model asserts that the probability of having a population of k variant sites in N chromosomes is proportional to theta/k, for 1=1:N There are instances where using this prior might not be desireable, e.g. for population studies where prior might not be appropriate, as for example when the ancestral status of the reference allele is not known. By using this argument, user can manually specify priors to be used for calling as a vector for doubles, with the following restriciotns: a) User must specify 2N values, where N is the number of samples. b) Only diploid calls supported. c) Probability values are specified in double format, in linear space. d) No negative values allowed. e) Values will be added and Pr(AC=0) will be 1-sum, so that they sum up to one. f) If user-defined values add to more than one, an error will be produced. If user wants completely flat priors, then user should specify the same value (=1/(2*N+1)) 2*N times,e.g. -inputPrior 0.33 -inputPrior 0.33 for the single-sample diploid case.
Kmer size to use in the read threading assembler.
Maximum number of alternate alleles to genotype. If there are more than this number of alternate alleles presented to the genotyper (either through discovery or GENOTYPE_GIVEN ALLELES), then only this many alleles will be used. Note that genotyping sites with many alternate alleles is both CPU and memory intensive and it scales exponentially based on the number of alternate alleles. Unless there is a good reason to change the default value, we highly recommend that you not play around with this parameter. As of GATK 2.2 the genotyper can handle a very large number of events, so the default maximum has been increased to 6.
Maximum number of haplotypes to consider for your population. This number will probably need to be increased when calling organisms with high heterozygosity.. Assembly graph can be quite complex, and could imply a very large number of possible haplotypes. Each haplotype considered requires N PairHMM evaluations if there are N reads across all samples. In order to control the run of the haplotype caller we only take maxNumHaplotypesInPopulation paths from the graph, in order of their weights, no matter how many paths are possible to generate from the graph. Putting this number too low will result in dropping true variation because paths that include the real variant are not even considered.
If specified, we will merge variants together into block substitutions that are in strong local LD.
The minimum allowed pruning factor in assembly graph. Paths with < X supporting kmers are pruned from the graph. Users should be aware that this argument can really affect the results of the variant calling and should exercise caution. Using a prune factor of 1 (or below) will prevent any pruning from the graph which is generally not ideal; it can make the calling much slower and even less accurate (because it can prevent effective merging of "tails" in the graph). Higher values tend to make the calling much faster, but also lowers the sensitivity of the results (because it ultimately requires higher depth to produce calls).
The number of samples that must pass the minPuning factor in order for the path to be kept.
File to which variants should be written. A raw, unfiltered, highly sensitive callset in VCF format.
The PCR indel model to use. Which PCR indel error model should we use when calculating likelihoods? If NONE is selected, then the default base
insertion/deletion qualities will be used (or taken from the read if generated through the BaseRecalibrator).
VERY IMPORTANT: when using PCR-free sequencing data we definitely recommend setting this argument to NONE.
The --pcr_indel_model argument is an enumerated type (PCR_ERROR_MODEL), which can have one of the following values:
The minimum phred-scaled confidence threshold at which variants should be called. The minimum phred-scaled Qscore threshold to separate high confidence from low confidence calls. Only genotypes with confidence >= this threshold are emitted as called sites. A reasonable threshold is 30 for high-pass calling (this is the default).
The minimum phred-scaled confidence threshold at which variants should be emitted (and filtered with LowQual if less than the calling threshold). This argument allows you to emit low quality calls as filtered records.
If specified, use additional trigger on variants found in an external alleles file.
If specified, use the contamination-filtered read maps for the purposes of annotating variants.
GATK version 2.8-1-g2a26ec9 built at 2013/12/06 16:54:02.