Guillermo del Angel
76a95fdedf
Full implementation of multiallelic exact model for pools. Still super-linear so not useable at scale but it should be a gold standard to compare to. Unit tests are not exhaustive yet, will be expanded to provide better test coverage. Small inconsequential optimization in MathUtils: we're already caching log10(factorial(n)) for large n, so might as well use the cached values to compute binomial and multinomial coefficients instead of the log-gamma approximation which is more expensive (doesn't seem to save much time either in PoolCaller nor in UG though).
2012-05-02 09:24:28 -04:00
Joel Thibault
4d732fa586
Move all MongoDB files into private/java/src/org/broadinstitute/sting/mongodb
2012-05-01 18:23:51 -04:00
Eric Banks
619a69a5f1
As promised in the release notes for 1.6, I am removing the old deprecated genotyping framework revolving around the misordering of alleles and have moved the fixed version in its place in preparation for release 1.7 (or 2.0?).
2012-05-01 16:18:24 -04:00
Joel Thibault
c255dd5917
Merge branch 'master' of ssh://nickel.broadinstitute.org/humgen/gsa-scr1/gsa-engineering/git/unstable
2012-05-01 16:10:38 -04:00
Ryan Poplin
51af61b5d7
Merge branch 'master' of ssh://nickel.broadinstitute.org/humgen/gsa-scr1/gsa-engineering/git/unstable
2012-05-01 16:07:23 -04:00
Ryan Poplin
fc55dcec3c
Unfortunately the reverse trimming of alleles still doesn't work with mixed records in some corner cases. Turning it off for now.
2012-05-01 16:02:36 -04:00
Ryan Poplin
20a0078f23
Merging active regions across shard boundries if they are contiguous, have the same active status and don't grow too big.
2012-05-01 15:51:36 -04:00
Eric Banks
0f3af9555b
Adding an option to SelectVariants which allows the user to re-genotype through the exact model (if PLs are present) the samples in order to recalculate the QUAL and genotypes. This is really the correct way to select a subset of samples, especially when originally called from low coverage data. Also added integration test to cover this case.
2012-05-01 14:58:06 -04:00
Joel Thibault
aa4d41cce0
Minor cleanup before push
2012-05-01 14:16:44 -04:00
Joel Thibault
b101b9c30b
Add Mongo switch
2012-05-01 14:00:48 -04:00
Joel Thibault
1b609e9075
Move Mongo to server couchdb
2012-05-01 13:59:47 -04:00
Joel Thibault
fd57d27f45
Move MongoDB connection handling to a separate class
2012-05-01 13:59:37 -04:00
Joel Thibault
db3cd1abd5
Use 2 MongoDB collections (tables): one for INFO/attributes, one for samples/genotypes.
2012-05-01 13:57:23 -04:00
Joel Thibault
04e1be9106
Better handling of Mongo errors + exceptions
2012-05-01 13:57:23 -04:00
Joel Thibault
ca737479cf
Query for stop locations because we don't have that information in the reference
2012-05-01 13:57:23 -04:00
Joel Thibault
1cda87a4ad
Set ROD priority list to input
2012-05-01 13:57:23 -04:00
Joel Thibault
a7fe847faf
Set the priority list and don't bother combining if not needed
2012-05-01 13:57:23 -04:00
Joel Thibault
f739305f43
Combine the variants found at a location
2012-05-01 13:57:23 -04:00
Joel Thibault
020f884d5a
Use new key of source ROD plus alleles
2012-05-01 13:57:23 -04:00
Joel Thibault
221ce9c3d6
Add alleles to the primary key
2012-05-01 13:57:23 -04:00
Joel Thibault
3198ce5471
Can have multiple variants at a location
2012-05-01 13:57:22 -04:00
Joel Thibault
11ed8e61c9
Add referenceBaseForIndel to the Mongo VariantContext objects
2012-05-01 13:53:44 -04:00
Joel Thibault
7ed0ee7ed0
Skip locations with no genotypes instead of throwing a NPE
2012-05-01 13:53:44 -04:00
Joel Thibault
4bdfeacdaa
Handle multiple samples/genotypes per location
...
TODO: sample selection
2012-05-01 13:53:43 -04:00
Joel Thibault
1f7c628796
Insert the ROD filename into MongoDB as part of the primary key
2012-05-01 13:53:43 -04:00
Joel Thibault
bb8a6e9b0a
Initial test of write and read from MongoDB
2012-05-01 13:53:43 -04:00
David Roazen
c0084c741b
Pilot BCF2 Implementation: Checkpointing the code
...
* Not working yet, still very much a work-in-progress with lots of placeholders
* Needed to check this in to enable possible collaboration, since it's
going slower than anticipated and the conference deadline looms.
2012-05-01 12:23:10 -04:00
Eric Banks
e964d17518
Removing public to private dependency
2012-05-01 11:02:28 -04:00
Mauricio Carneiro
462450c3e3
disabling all BQSR unit tests
...
with the changes to the cycle covariate, some tests need updates, others need to be completely re-written.
2012-04-30 14:39:55 -04:00
Guillermo del Angel
e185632013
Exhaustive unit tests for Pool SNP genotype likelihoods:
...
a) Add ability for ErrorModel to be specified by external log-probability vector for testing.
b) For a given depth and ploidy(=2*samples/pool), create artificial high quality pileup testing from AC=0 to AC=ploidy, and test that pool GL's have expected content.Misc. refactorings and cleanups
c) Misc. cleanups and beautification.
2012-04-30 14:29:46 -04:00
Christopher Hartl
7d029b9a28
Merge branch 'master' of ssh://ni.broadinstitute.org/humgen/gsa-scr1/gsa-engineering/git/unstable
2012-04-30 12:16:30 -04:00
Christopher Hartl
944a7d815e
Bringing VQSRV3 up to date. Lots of new features (un-classifying the worst-performing training sites, treating the x% best/worst sites as postive/negative points, ability to pass in a monomorphic track to see ROC curves output). Minor changes to AlleleBalance: weighted average was incorrectly specified (using logscale actually biased the average towards the AB of low-quality genotypes), and breaking out AB by het, hom, and diploid to bring it in line with some (private) changes to the indel likelihood model that (correctly) computes these values for indels.
2012-04-28 11:31:03 -04:00
Ryan Poplin
54a9bc2da2
Bug fix in reverse trim alleles for the case of mixed records that become non-mixed after subsetting the alleles.
2012-04-28 09:12:26 -04:00
Ryan Poplin
e332aeaf70
Merge branch 'master' of ssh://nickel.broadinstitute.org/humgen/gsa-scr1/gsa-engineering/git/unstable
2012-04-27 16:21:21 -04:00
Ryan Poplin
2b5dd28550
Bug fix in reverse trim alleles for the case of mixed records.
2012-04-27 16:21:02 -04:00
Mauricio Carneiro
1db2d1ba82
Do not add the first and last 4 cycles to the recalibration tables.
2012-04-27 15:18:07 -04:00
Mauricio Carneiro
08dbd756f3
Quick QC walkers to look at the error profile of indels in the read
2012-04-27 15:18:07 -04:00
Guillermo del Angel
730208133b
Several fixes and improvements to Pool caller with ancillary test functions (not done yet):
...
a) Utility class called Probability Vector that holds a log-probability vector and has the ability to clip ends that deviate largely from max value.
b) Used this class to hold site error model, since likelihoods of error model away from peak are so far down that it's not worth computing with them and just wastes time.
c) Expand unit tests and add an exhaustive test for ErrorModel class.
d) Corrected major math bug in ErrorModel uncovered by exhaustive test: log(e^x) is NOT x if log's base = 10.
e) Refactored utility functions that created artificial pileups for testing into separate class ArtificialPileupTestProvider. Right now functionality is limited (one artificial contig of 10 bp), can only specify pileups in one position with a given number of matches and mismatches to ref) but functionality will be expanded in future to cover more test cases.
f) Use this utility class for IndelGenotypeLikelihoods unit test and for PoolGenotypeLikelihoods unit test (the latter testing functionality still not done).
g) Linearized implementation of biallelic exact model (very simple approach, similar to diploid exact model, just abort if we're past the max value of AC distribution and below a threshold). Still need to add unit tests for this and to expand to multiallelic model.
h) Update integration test md5's due to minor differences stemming from linearized exact model and better error model math
2012-04-27 14:41:17 -04:00
Eric Banks
0439047269
Merge branch 'master' of ssh://nickel.broadinstitute.org/humgen/gsa-scr1/gsa-engineering/git/unstable
2012-04-27 10:49:45 -04:00
Eric Banks
05b44dd017
The genotypeCounts array wasn't always being initialized before it was accessed, leading to a NPE (which got caught and thrown as a JEXL expression when used in selection). Added unit test to cover all genotype count methods.
2012-04-27 10:49:36 -04:00
Khalid Shakir
9801dd114f
Bug fix for: https://getsatisfaction.com/gsa/topics/problem_with_indelrealigner_and_l_unmapped
...
The GATK -L unmapped is for GenomeLocs with SAMRecord.NO_ALIGNMENT_REFERENCE_NAME, not SAMRecord.getReadUnmappedFlag()
Previously unmapped flag reads in the last bin were being printed while also seeking for the reads without a reference contig.
2012-04-27 09:58:38 -04:00
Guillermo del Angel
2f86ccb086
Correct md5's for previous code change
2012-04-26 16:20:41 -04:00
Guillermo del Angel
972d6531b6
Corner case fix for indel GL computation: sometimes (depending on surrounding context) reads which are not informative of two candidate haplotypes end up having marginally higher likelihoods with one haplotype as opposed to another, depending on uncertainty on alignments in surrounding regions. So, a sample whose GL is -0.0001,-0.0005,-0.001 may have its genotype set to 1/1 due to this statistical noise. We already have a tolerance comparing max(gl)-min(gl) to avoid genotyping, so this tolerance is now increased from 0.001 to 0.1 (equivalent to 1 PL unit) to avoid genotyping a sample if all PLs are within this threshold. Changed 2 integration test md5s that hit this case.
2012-04-26 10:15:26 -04:00
Laurent Francioli
ab2a952ad1
PED support for Inbreeding Coefficient annotation
...
Signed-off-by: Eric Banks <ebanks@broadinstitute.org>
2012-04-25 12:56:47 -04:00
Laurent Francioli
219b0a128b
PED support for ChromosomeCounts annotation
...
Signed-off-by: Eric Banks <ebanks@broadinstitute.org>
2012-04-25 12:50:04 -04:00
Laurent Francioli
19d5213d5a
Added function to get founders IDs in SampleDB
...
Signed-off-by: Eric Banks <ebanks@broadinstitute.org>
2012-04-25 12:49:36 -04:00
Mauricio Carneiro
902277856e
fix for RBP getPileupsForSamples()
...
do not differentiate per sample pileups from generic pileups. Do the same for both -- it's O(n) either way.
2012-04-24 17:20:30 -04:00
Mauricio Carneiro
82b4798913
CountBasesWalker -- a quick QC walker.
2012-04-24 17:20:30 -04:00
Mauricio Carneiro
e440d0ce69
BQSR triage #4
...
* fixed queue script plot file names
* updated the ReadGroupCovariate to use the platform unit instead of sample + lane.
* fixed plotting of marginalized reported qualities
2012-04-24 17:19:54 -04:00
Eric Banks
d6277b70d8
Forgot to consider the optimized case in hasAllele
2012-04-24 11:32:28 -04:00