Commit Graph

1233 Commits (45eddb4ecb58044945afac8e359c9fa26cf47d21)

Author SHA1 Message Date
rpoplin bf2911d62c Merge pull request #783 from broadinstitute/pd_splitsamfile
Fix NPE in SplitSamFile
2014-12-08 09:39:03 -05:00
Valentin Ruano-Rubio 385186e11b Makes GQ of Hom-Ref Blocks in GVCF output to be consistent with PLs
Story:
-----

  - https://www.pivotaltracker.com/story/show/83800586

Changes:
-------

  - In GVCFWriter GQ is now recalculated out of the fianl PL array for the block.

Testing:
-------

  - Updated affected integration test md5s
2014-12-07 16:45:32 -05:00
Phillip Dexheimer a5dee8a42e Fix NPE in SplitSamFile
* PT 82892316
  * Added integration test
  * Fixed similar error in debug output of HC
2014-12-07 10:37:30 -05:00
Ron Levine b8f0f3fdd2 Add argument for loading the vector HMM library once 2014-12-02 10:13:56 -05:00
Ron Levine 386aeda022 Add HaplotypeCaller argument so integration tests can specify the hardware dependent PairHMM sub-implementation 2014-11-25 21:53:53 -05:00
Menachem Fromer 9b73c8a841 Fix MNP merging bugs 2014-11-21 06:42:51 -05:00
rpoplin 00027e1555 Merge pull request #774 from broadinstitute/ldg_makeSelectVariantsTrimAlleles
Add -trim argument to SelectVariants to trim alleles to minimal represen...
2014-11-13 13:58:13 -05:00
Ron Levine 67656bab23 Resolved conflict during rebasing
Add more logging to annotators, change loggers from info to warn

Add comments to testStrandBiasBySample()

Clarify comments in testStrandBiasBySample

remove logic for not prcossing an indel if strand bias (SB) was not computed

remove per variant warnings in annotate()

Log warnings if using the wrong annotator or missing a pedgree file

Log test failures once in annotate(), because HaplotypeCaller does not call initialize(). Avoid using exceptions

Fix so only log once in annotate(), Hardey-Weinberg does not require pedigree files, fix test MD5s so pass

Check if founderIds == null

Update MD5s from HaplotypeCaller integrations tests and clean up code

Change logic so SnpEff does not throw excpetions, change engine to utils in imports

Update test MD5s, return immediately if cannot annotate in SnpEff.initialization()

Post peer review, add more logging warnings

Update MD5 for testHaplotypeCallerMultiSampleComplex1, return null if PossibleDeNovo.annotate() is not called by VariantAnnotator
2014-11-12 02:45:49 -05:00
Laura Gauthier 783a4fd651 Change default behavior of SelectVariants to trim remaining alleles when samples are subset. -noTrim argument preserves original alleles. Add test for trimming. 2014-11-11 16:32:25 -05:00
Valentin Ruano-Rubio c5977e5c8f Correct wrong left-alignment of reads in HC bamout
Story:
-----

  https://www.pivotaltracker.com/story/show/80684230

Changes:
-------

  - Corrected the bug: AlignmentUtils#createReadAlignedToRef was
    not realigning against the reference but the best haplotype for
    the read.

Test:
----

  - Added integration test in HaplotypeCallerIntegrationTest to check
    that the bug has been fixed.
  - Fixed md5s modified by this change; these are cause due to small
    changes in the state of the random-number generator and read vs
    variant site overlapping.
2014-11-10 10:09:58 -05:00
Laura Gauthier c09667a20d Fix bug in CombineGVCFs so now sample 2 variants occuring within sample 1 deletions get merged properly.
CombineGVCFs now outputs ref conf for the duration of deletions so that SNPs occuring in other samples aligned with those deletions will be genotyped correctly
2014-11-05 09:11:47 -05:00
Khalid Shakir 0092a0b9eb Faster builds, with updates to documentation generation.
Reading the multiple GATKText files as a single stream, especially with new top level target executable jar files pointing to a lib folder.
Don't dirty the build with a new GATKText.properties if input files are unmodified.
Stop warning on undocumented abstract classes.
Fixed ClassNotFoundException/NoClassDefFoundError by fixing ResourceBundleExtractorDoclet artifact.
Excluding Exceptions from documentation.
Removed custom log4j dependency from ResourceBundleExtractorDoclet.
Stop generating the dependency reduced pom during shade.
Stop regenerating gsalib when the files are already up to date.
Disabled mvn site generation from external-example.
2014-11-05 00:32:23 +08:00
Khalid Shakir 1cb4b99548 Added faster built executable, non-packaged jars.
Moved top level target symlinks to package jar files to under target/package.
Executable jar files are placed under target/executable with the new target[/lib] directories.
Under top level target, symlinks to *either* the package *or* the executable jars replace what was a symlink to the package jar path.
Allow disabling of the shade package.
ant-bridge.sh by default only builds executable jars, and doesn't package by default, as did the old ant build.xml.
Added a new package_path.sh utility script for other scripts to use instead of anything in the target folder.
2014-11-05 00:30:46 +08:00
Phillip Dexheimer 10f99cbe04 Added StrandAlleleCountsBySample annotation
This annotation outputs the number of reads supporting each allele, stratified by sample and read strand.
Addresses PT 76958712
2014-11-03 21:35:58 -05:00
Khalid Shakir 8b81031bf8 Disabling tests for Lsf706 specific functionality. 2014-11-04 01:31:18 +08:00
Phillip Dexheimer bcfd9ce19a Moved platform flow information into NGSPlatform
* Explicitly added a type for rarely used platforms
 * PT 81767718
2014-10-31 22:27:34 -04:00
rpoplin c84805c402 Merge pull request #768 from broadinstitute/pd_bcf_failures
Fix BCF writing when FORMAT annotations contain arrays
2014-10-31 15:30:56 -04:00
rpoplin eecb56e0ae Merge pull request #766 from broadinstitute/ldg_StrandBiasForMultiallelics
Calculate StrandBiasBySample using all alternate alleles as ref vs. any ...
2014-10-31 15:26:07 -04:00
Phillip Dexheimer fc67e50faa Revved Picard/htsjdk
Removed inefficient array->List conversion in AlleleCountBySample
2014-10-30 21:16:25 -04:00
Laura Gauthier bc7202fff7 Calculate StrandBiasBySample using all alternate alleles as ref vs. any alt 2014-10-30 11:52:06 -04:00
Khalid Shakir 5c9fe1a06d Split all imports of tools|engine from utils, and all tools from engine.
Second of two commits, modifying actual files.
2014-10-24 20:59:46 +08:00
Khalid Shakir bb7151192a Split all imports of tools|engine from utils, and all tools from engine.
First of two commits, renaming files only.
2014-10-24 20:59:45 +08:00
Geraldine Van der Auwera b69b256003 Update pom versions to mark the start of GATK 3.4 development 2014-10-23 22:31:44 -04:00
Geraldine Van der Auwera eee94ec81f Update pom versions for the 3.3 release 2014-10-23 22:25:17 -04:00
Geraldine Van der Auwera 3ba94b987c Minor documentation clarifications 2014-10-22 17:54:11 -04:00
rpoplin 0f89d1a362 Merge pull request #755 from broadinstitute/sc_Annotation_Docs_73647570
Improvements to documentation of variant annotations
2014-10-22 13:41:00 -04:00
Sheila Chandran b3c5ed4414 Improvements to documentation of variant annotations
- Added or modified explanations for majority of variant annotations
	- Generalized NBaseCount to include all tech platforms (not just SOLiD)
2014-10-21 18:20:04 -04:00
Geraldine Van der Auwera 895b8c5931 Minor fix for missing INFO key definition in VCF header 2014-10-21 16:50:37 -04:00
rpoplin c4fcd70a88 Merge pull request #754 from broadinstitute/rhl_variant_array_exception
Do not process a variant if it is too large (> readLength), and log an e...
2014-10-21 12:01:52 -04:00
rpoplin bcf6be0b08 Merge pull request #753 from broadinstitute/ldg_HCzeroDepth
Fix GenotypeGVCF bugs in -allSites mode
2014-10-21 12:00:04 -04:00
Laura Gauthier 2b848ad859 Variants that become hom-ref after regenotyping in GenotypeGVCFs are now getting output in -allSites mode. 2014-10-21 08:21:53 -04:00
Laura Gauthier 5465e4484e For GenotypeGVCFs -allSites mode, make genotypes no-call if depth is zero. 2014-10-21 08:21:43 -04:00
Ron Levine 239151ac7b Do not process a variant if it is too large (> readLength), and log an error
remove final keyword before refMap and altMap, constructHaplotype() changes their values

return ArtificialHaplotype from constructHaplotype instaed of passing as an argument

Add logic so arraycopy does not throw an IndexOutOfBoundsException, add test for a long insert
2014-10-20 15:51:32 -04:00
Phillip Dexheimer b348ce8f25 Added -disableOptimizations argument to HaplotypeCaller.
* This argument is intended to be used in conjunction with -bamout, and disable early-exit optimizations to allow reference regions to be contained in the output bam
  * Also forcibly includes the reference haplotype in the set of haplotypes given to the BAMWriter
  * Made -dontTrimActiveRegions visible, as it is likely also desirable in this use case
  * Addresses PT 77731660
2014-10-16 21:11:20 -04:00
Laura Gauthier 0f08065ebc Throw UserException if input VCFs have duplicate samples but no genotypemergeoption is specified 2014-10-15 16:03:10 -04:00
Laura Gauthier 81482138ca Decrease interval on CGP integration test to reduce test execution time 2014-10-15 11:28:27 -04:00
Geraldine Van der Auwera e7e8052f84 Updated license information
- Updated license files (private/protected) for version, address and a couple of legal clauses
- Updated license snippet throught the codebase
2014-10-14 17:10:12 -04:00
Ron Levine 36c27155af Made the threshold for the probability of a state being active a command line argument
remove TODO comment after activeProbThreshold

recover static ACTIVE_PROB_THRESHOLD for unit tests

Add min/max values for active_probability_threshold parameter

Move activeProbThreshold parameter to GATKArguemtnCollection

define ACTIVE_PROB_THRESHOLD in unit tests

add construction of argCollection in in ctor

Move arguments from GATKArgumentCollection to ActiveRegionWalker

Throw exception if threshold < 0 or > 1 in ActivityProfile ctor

max propogation distance parameter to ActiveRegionWalker for AcrtivityProfile

Use polymorphic getMaxProbPropagationDistance() so BandPassActivityProfile computes the crrect region size cutoff

Get the maxProbPropagationDistance from the super class's method, instead of directly, this is safer

Removed extraneous command line imports and make maxProbPropagationDistance a hidden argument

remove limit check for activeProbThreshold, not necessary because the check is made when imput as a command line arg

Remove extra 'region' in the doxygen param description for maxProbPropagationDistance
2014-10-10 10:36:02 -04:00
Ron Levine 645d418015 Changed hardcoded downsampling max/min coverage values to parameters
Rename parameters using camel case and add to integration test

Correct documentation for maxReadsInRegionPerSample and minReadsPerAlignmentStart

Change the argument--minReadsPerAlignmentStart in the integration test from 50 to 5

'each genomic location' only pertains to minReadsPerAlignmentStart, not maxReadsInRegionPerSample
2014-10-09 17:09:26 -04:00
Valentin Ruano-Rubio a3ad6f63bd Reduce execution time of various integration tests
Story:

    https://www.pivotaltracker.com/story/show/79461912
2014-09-30 13:28:55 -04:00
rpoplin 329bd081b7 Merge pull request #736 from broadinstitute/rhl_remove_line
removed an unneed import that broke maven
2014-09-29 15:03:55 -04:00
Ron Levine 1c9d60c9a0 removed an unneed import that broke maven 2014-09-29 12:57:33 -04:00
Valentin Ruano-Rubio 311b6815b3 Fixed the QUAL calculation of the EXACT_INDEPENDENT.
The QUAL value calculated by this Exact AF Calculator is very underestimated when
there are more than one alternative allele (non-biallelic sites). The reason is
that the QUAL was roughly calculated by adding the QUALs resulting of each alternative
alleles vs all other alleles, reference and alts, collapsed. This is ok for MLEAC
calculations but not for QUAL.

Now, for calculating the QUAL we collapse all the alternatives as only one. This change
improves sensitivy with a cost of additional false positives, but this is naturally expected.
The resulting QUAL column is much closer to the one returned by the reference implementation.

Story:

  https://www.pivotaltracker.com/story/show/75926368.

Changes:

  Changed the QUAL calculation as described above.
  Updated MD5s.

Fixed MD5s
2014-09-29 11:04:52 -04:00
Valentin Ruano-Rubio 0e52b8ba5a Fixed MLEAC and QUAL inaccuracy in GeneralPloidyExactAFCalculator.
The problem whas that the MLE table calculation aborted "unlikely"
genotype combinations to aggresively.

This also uncovered another bug where GeneralPloidyExactAFCalculation
makes a slightly different use of StateTracker
as compared to DiploidExactAFCalculation. We have changed StateTracker
generalizing it to be able to work with both using code behaviors.

Story:
-----

  * https://www.pivotaltracker.com/story/show/78920568

Changes:
-------

  * Fixes in GeneralPloidyExactAFCalculator.
  * Needed changes in StateTracker API and its consequences in DiploidExactAFCalculation.
  * Updated affected integrated tests' MD5s after fixing the GeneralPloidyExactAF.
2014-09-23 15:40:54 -04:00
Valentin Ruano-Rubio f6cb83d476 Renamed AFCalc to AFCalculator for a better class naming 2014-09-12 14:59:58 -04:00
Valentin Ruano-Rubio 95b45443ae Updated test according to changes in the AF calculator framework.
Changes:
-------

* Updated current unit and integration test to use the new API components.
* Added unit tests for new classes AFPriorProvider and AFCalculatorProviders.
* Added integration test for mixed ploidy GenotypeGVCFs and CombineGVCFs
2014-09-12 14:59:47 -04:00
Valentin Ruano-Rubio 3cdeab6e9e GenotypingEngines and walkers now use AFCalc(ulator) providers rathern than instanciate their own (fixed) calculators directly.
Changes:
-------

* GenotypingEngine uses now a AFCalc provider instead of
  its own thread-local with one-time initialized and fixed
  AF calculator.

* All walkers that use a GenotypingEngine now are passing
  the appropiate AF calculator provider. For now most
  just use a fix calculator (FixedAFCalculatorProvider)
  except GenotypeGVCFs as this one now can cope with
  mixture of ploidies failing-over to a general-ploidy
  calculator when the preferred implementation is not
  capable to handle a site's analysis.
2014-09-12 14:25:09 -04:00
Valentin Ruano-Rubio 935bd1394b AFCalculatorProvider components to allow for dynamic instantiation of different AFCalc(ulators) to cope with
dynamic ploidy and max-alt-allele counts (the latter not used for now).
2014-09-12 14:23:45 -04:00
Valentin Ruano-Rubio ce8e93fa51 Made the AF prior probability distribution dynamic respect
to the total-ploidy (added ploidy accross samples).

Changes:
--------

* Instead of calculate a fixed log10 prior array with a fix
   total likelihood we use a new component, the AFPriorProvider
   to generate the priors for different total plodies on
   demand; these are cached however so there is no unecessary
   recompute involved.
2014-09-12 14:23:37 -04:00
Valentin Ruano-Rubio 31e58ae4ec Refactored AFCalc to remove unecessary capability limits allowing to deal
with mixed ploidies and max-alt-allele number changes dynamically.

Changes:
--------

* Moved the AFCalcFactory.Calculation enum in a top level class
    AFCalculatorImplementation.
* Given more reponsabilities to the enum like resolving the constructor
    method once per implementation and the best-model selection algorithm.
* Removed test-code only fields and methods from AFCalc; just used to perform
    unit-testing and not any actual functionality of this component.
* Removed the fixed ploidy constraint of GeneralPloidyExactAFCalc
    implementation... now can deal with mixed ploidies that may change
    per site and sample.
* Removed the fixed maxAltAllele restriction by allowing resizing of
    the stateTracker structures.
* Due to previous two points now call the the AFCalc object are passed
    the default-ploidy to assume in case some genotype in the input
    VC does not have it and the max-alt-allele.
* Also due to those changes, removed the now totally useless 3 int
    parameters from all AFCalc constructors.
* Cleaned the code a bit from no further used components and methods.
2014-09-12 14:17:36 -04:00