Commit Graph

12736 Commits (3671e41b0c19c188a09fdbfca9b07cfc42a6fc64)

Author SHA1 Message Date
bradtaylor 3671e41b0c Add Array Logless PairHMM
A new PairHMM implementation for read/haplotype likelihood calculations. Output is the same as the LOGLESS_CACHING version.

Instead of allocating an entire (read x haplotype) matrix for each HMM state, this version stores sub-computations in 1D arrays. It also accesses intersections of the (read x haplotype) alignment in a different order, proceeding over "diagonals" if we think of the alignment as a matrix.

This implementation makes use of haplotype caching. Because arrays are overwritten, it has to explicitly store mid-process information. Knowing where to capture this info requires us to look ahead at the subsequent haplotype to be analyzed. This necessitated a signature change in the primary method for all pairHMM implementations.

We also had to adjust the classes that employ the pairHMM:
LikelihoodCalculationEngine (used by HaplotypeCaller)
PairHMMIndelErrorModel (used by indel genotyping classes)

Made the array version the default in the HaplotypeCaller and the UnifiedArgumentCollection.
The latter affects classes:
ErrorModel
GeneralPloidyIndelGenotypeLikelihoodsCalculationModel
IndelGenotypeLikelihoodsCalculationModel
... all of which use the pairHMM via PairHMMIndelErrorModel
2013-08-28 17:21:23 -04:00
Ryan Poplin 7479152977 Merged bug fix from Stable into Unstable 2013-08-28 12:40:25 -04:00
Ryan Poplin 6bda569666 One of the log10sumLog10s in the VQSR was missed in a previous bug fix. Thanks to Mike McCowan for spotting this one. 2013-08-28 12:40:08 -04:00
Eric Banks 983097cff2 Merge pull request #385 from broadinstitute/gg_vqsr_docfixes
Fixed a few typos and clarified some doc points.
2013-08-26 17:42:47 -07:00
Geraldine Van der Auwera ed465cd2a5 Fixed a few typos and clarified some doc points. 2013-08-26 17:33:17 -04:00
David Roazen 42d771f748 Remove org.apache.commons.collections.IteratorUtils dependency from the test suite
-This was a dependency of the test suite, but not the GATK proper,
 which caused problems when running the test suite on the packaged
 GATK jar at release time

-Use GATKVCFUtils.readVCF() instead
2013-08-21 19:44:02 -04:00
Eric Banks 4b00c81181 Merge remote-tracking branch 'unstable/master' 2013-08-21 17:12:26 -04:00
Eric Banks 38b80a5916 Merge pull request #384 from broadinstitute/eb_pbt_dropping_multiallelics
Fixed bug in PhaseByTransmission where it was completely dropping multi-allelic records.
2013-08-21 14:09:32 -07:00
Eric Banks 9424008055 Merge pull request #383 from broadinstitute/dr_change_phone_home_aws_settings
Update GATK AWS phone-home configuration
2013-08-21 14:08:21 -07:00
Eric Banks d4dc5ba04a Fixed bug in PhaseByTransmission where it was completely dropping multi-allelic records.
Added test to make sure this is no longer happening.
2013-08-21 15:46:57 -04:00
David Roazen 9fbb4920d0 Update GATK AWS phone-home configuration
-Switch to using new GSA AWS account for storage of phone home data

-Use DNS-compliant bucket names, as per Amazon's best practices

-Encrypt publicly-distributed version of credentials. Grant only PutObject
 permission, and only for the relevant buckets.

-Store non-distributed credentials in private/GATKLogs/newAWSAccountCredentials
 for now -- need to integrate with existing python/shell scripts
 later to get the log downloading working with the new account
2013-08-21 14:31:46 -04:00
Eric Banks cdfd07f9eb Merge pull request #382 from broadinstitute/ami-FixBcfCoder-52571227
Ami fix bcf coder 52571227
2013-08-21 11:29:19 -07:00
Ami Levy-Moonshine 0f5bb706ff - update picard, sam, variants and tribble after fixing bug in BCF2Utils.makeDictionary as reported in ticket 52571227
- update call for VCFSimpleHeaderLine constructor in GATKVCFUtils
2013-08-21 12:06:42 -04:00
Ami Levy-Moonshine ec0c33890a change the dbsnp version from 137 to 129 for variantEval 2013-08-19 23:54:43 -04:00
Eric Banks e1174a582d Merge pull request #379 from broadinstitute/mc_dpp_updates_part2
Including SplitByRG in the FullProcessingPipeline
2013-08-19 18:42:12 -07:00
Eric Banks 6663d48ffe Merge pull request #381 from broadinstitute/mm_rev_picard_to_get_tribble_updates
Adaptations to accomodate Tribble API changes.
2013-08-19 18:31:02 -07:00
Michael McCowan c3a933ce84 Adaptations to accomodate Tribble API changes, comprising mostly of the following.
* Refactoring implementations of readHeader(LineReader) -> readActualHeader(LineIterator), including nullary implementations where applicable.
* Galvanizing fo generic types.
* Test fixups, mostly to pass around LineIterators instead of LineReaders.
* New rev of tribble, which incorporates a fix that addresses a problem with TribbleIndexedFeatureReader reading a header twice in some instances.
* New rev of sam, to make AbstractIterator visible (was moved from picard -> sam in Tribble API refactor).
2013-08-19 15:52:47 -04:00
Mauricio Carneiro e991307eb5 Including SplitByRG in the FullProcessingPipeline
Why wasn't it there before, you ask
----------------------------------

Before I was running it separately (by hand), but now it's integrated in
the FullProcessingPipeline.

Integration was a pain because of Queue's limitation of only allowing 1
@Output file. This forced me to write the ugliest piece of code of my
life, but it's working and it's processing the YRI from scratch using
that right now. So I'm happy... somewhat.

Other changes to the pipeline
-----------------------------

   * Add --filter_bases_not_stored to the IndelRealigner step -- sometimes BAM files have reads with no bases stored in the unmapped section (no idea why) but this disrupts the pipeline.
   * Change adaptor marking parameter to "dual indexed" instead of "pair-ended" -- for PCR Free data.
2013-08-18 00:51:32 -04:00
droazen ee5de8510d Merge pull request #380 from broadinstitute/gg_gatkdocs_arglabels
More detailed labels for arguments in the gakdocs
2013-08-16 15:34:56 -07:00
Geraldine Van der Auwera 80ed186971 More detailed labels for arguments in the gakdocs (requested by David) 2013-08-16 14:25:53 -04:00
Geraldine Van der Auwera 6cda283115 Merge pull request #378 from broadinstitute/gg_mutehelp
Disabled the help system's printout of cmdline options when GATK errors ...
2013-08-16 10:11:28 -07:00
Geraldine Van der Auwera 9bb0aac7bf Disabled the help system's printout of cmdline options when GATK errors out. Now the user has to explicitly ask for it using -h. 2013-08-16 13:09:52 -04:00
Geraldine Van der Auwera 3841635fcb Changed 'depreciated' to the more correct 'deprecated' 2013-08-16 13:06:41 -04:00
Ryan Poplin a21d5252c8 Merge pull request #377 from broadinstitute/eb_experiment_with_pcr_error_model
Eb experiment with pcr error model
2013-08-16 08:38:55 -07:00
Eric Banks 08be871309 Removing unused code in VariantsToTable: GQ is not an INFO field and is taken care of by -GF and not -F. 2013-08-16 01:57:24 -04:00
Eric Banks 17eb7b49fe Adding ability to use Ryan's PCR error modeling to the Haplotype Caller.
There is now a command-line option to set the model to use in the HC.
Incorporated Ryan's current (unmerged) branch in for most of these changes.

Because small changes to the math can have drastic effects, I decided not to let users tweak
the calculations themselves.  Instead they can select either NONE, CONSERVATIVE (the default),
or AGGRESSIVE.

Note that any base insertion/deletion qualities from BQSR are still used.

Also, note that the repeat unit x repeat length approach gave very poor results against the KB,
so it is not included as an option here.
2013-08-16 01:53:04 -04:00
Eric Banks e7152e10f7 Rev'ing picard, tribble, and variant jars. 2013-08-16 00:16:31 -04:00
Eric Banks 07f3f6f69d Some minor updates to the KB:
1. PASSing records shouldn't make ImportReviews error out
2. Fix KB setup script so that non-NA12878 sites-only files are not assumed to be TPs
2013-08-15 10:02:55 -04:00
Eric Banks 1a5e4cc4e7 Merge pull request #375 from broadinstitute/rp_queue_jobreport_rscript
Something changed with the ggtitle syntax in the latest version of ggplo...
2013-08-14 12:48:42 -07:00
Eric Banks 7f48f991cc Merge pull request #376 from broadinstitute/gg_AR_gatkdocfix
Made AR an Advanced argument...
2013-08-14 12:48:05 -07:00
Geraldine Van der Auwera 19a4bf9ff0 made AR an Advanced argument to discourage basic users from fiddling with it 2013-08-14 14:46:56 -04:00
Ryan Poplin d4ac183580 Something changed with the ggtitle syntax in the latest version of ggplot2. 2013-08-14 14:40:03 -04:00
Eric Banks 928a9779db Merge pull request #374 from broadinstitute/mc_dpp_updates
Updated Full Processing Pipeline
2013-08-14 04:50:25 -07:00
Mauricio Carneiro 765f5450ac Updated Full Processing Pipeline
* add interleaved fastq option to sam2fastq
    * add optional adapter trimming path
    * add "skip_revert" option to skip reverting the bams (sometimes useful -- hidden parameter)
    * add a walker that reads in one bam file and outputs N bam files, one for each read group in the original bam. This is a very important step in any BAM reprocessing pipeline.

I am using this new pipeline to process the CEU and YRI PCR Free WGS
trios.
2013-08-13 23:35:32 -04:00
Eric Banks 69e78efeae Merge pull request #366 from broadinstitute/gg_gatkdocfixes
More gatkdoc fixes
2013-08-13 04:52:03 -07:00
Eric Banks bcf9a1cda5 Merge pull request #370 from broadinstitute/rp_dont_output_filtered_variants_in_VQSR
Adding mode to VQSR to not output variant records that are filtered out ...
2013-08-12 12:01:50 -07:00
Eric Banks 4aeb37e1e7 Merge pull request #373 from broadinstitute/rp_vqsr_numbad_docs
Cleaning up help text for the -numBad argument.
2013-08-12 10:56:46 -07:00
Ryan Poplin a45011d7e7 Adding mode to VQSR to not output variant records that are filtered out after applying the recalibration. Necessary for 1000G calling. 2013-08-12 11:22:59 -04:00
Ryan Poplin 59f56bef30 Cleaning up help text for the -numBad argument. 2013-08-12 09:51:56 -04:00
Eric Banks 163d796ae7 Merge pull request #372 from broadinstitute/eb_add_zook_reviews_to_script
Forgot to add this in the previous commit to add J Zook's reviews
2013-08-12 06:51:31 -07:00
Eric Banks b86742903b Forgot to add this in the previous commit to add J Zook's reviews 2013-08-12 09:50:41 -04:00
Eric Banks a2134a92fb Merge pull request #371 from broadinstitute/eb_add_zook_reviews
Adding Justin Zook's review file to the KB
2013-08-12 06:45:11 -07:00
Eric Banks 8071862af8 Adding Justin Zook's review file to the KB 2013-08-12 09:37:46 -04:00
Geraldine Van der Auwera a09831489b Disabled emission of doc URLs for external codecs to avoid broken links 2013-08-10 10:04:04 -07:00
Geraldine Van der Auwera 4d20c71e09 Improvements to various gatkdocs
- Make -rod required
    - Document that contaminationFile is currently not functional with HC
    - Document liftover process more clearly
    - Document VariantEval combinations of ST and VE that are incompatible
    - Added a caveat about using MVLR from HC and UG.
    - Added caveat about not using -mte with -nt
    - Clarified masking options
    - Fixed docs based on Erics comments
2013-08-10 10:01:31 -07:00
Mark DePristo 8b5178bd59 Merge pull request #368 from broadinstitute/md_incremental_caller
UG and script changes to make accessing the value of joint calling easier
2013-08-09 08:21:03 -07:00
Mark DePristo 415aee2be2 Two scripts to enable assessment of the value of joint calling and the effectiveness of the joint caller 2013-08-09 11:00:15 -04:00
Mark DePristo b7d1096ced Added onlyEmitSamples argument to UnifiedGenotyper
-- When provided, this argument causes us to only emit the selected samples into the VCF.  No INFO field annotations (AC for example) or other features are modified.  It's current primary use is for efficiently evaluating joint calling.
-- Add integration test for onlyEmitSamples
2013-08-09 11:00:15 -04:00
Ryan Poplin cf5dd58303 Merge pull request #369 from broadinstitute/eb_small_updates_to_kb
Various small improvements to the KB assessments.
2013-08-09 06:09:27 -07:00
Eric Banks dd85646067 Various small improvements to the KB assessments.
1) TP reviews with 0/0 genotypes were killing those sites and making them appear as assessed FPs even when correctly called!
Fixed this by changing the logic in the assessor to allow discordant genotypes through as FPs.
Also, isMonomorphic() in the MongoGenotype needs to check whether the genotype is discordant.
Added unit test for this case.

2) Minor code cleanup in the Assessor class.
The most important being the renaming of isUsableCall() to isNotUsableCall() since that's what it is returning.
2013-08-08 23:37:45 -04:00