tskit-dev / msprime

Simulate genealogical trees and genomic sequence data using population genetic models
GNU General Public License v3.0
170 stars 84 forks source link

Hulls #2270

Closed GertjanBisschop closed 2 months ago

GertjanBisschop commented 3 months ago

First pass at a general version of the SMC (SMC(k)) not based on rejection sampling.

codecov[bot] commented 3 months ago

Codecov Report

Attention: Patch coverage is 86.86131% with 72 lines in your changes are missing coverage. Please review.

Project coverage is 91.30%. Comparing base (a2d0753) to head (1f302ec).

Additional details and impacted files [![Impacted file tree graph](https://app.codecov.io/gh/tskit-dev/msprime/pull/2270/graphs/tree.svg?width=650&height=150&src=pr&token=1uZQV1KMkU&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=tskit-dev)](https://app.codecov.io/gh/tskit-dev/msprime/pull/2270?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=tskit-dev) ```diff @@ Coverage Diff @@ ## main #2270 +/- ## ========================================== - Coverage 91.52% 91.30% -0.22% ========================================== Files 20 20 Lines 11337 11873 +536 Branches 2304 2421 +117 ========================================== + Hits 10376 10841 +465 - Misses 523 563 +40 - Partials 438 469 +31 ``` | [Flag](https://app.codecov.io/gh/tskit-dev/msprime/pull/2270/flags?src=pr&el=flags&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=tskit-dev) | Coverage Δ | | |---|---|---| | [C](https://app.codecov.io/gh/tskit-dev/msprime/pull/2270/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=tskit-dev) | `91.30% <86.86%> (-0.22%)` | :arrow_down: | | [python](https://app.codecov.io/gh/tskit-dev/msprime/pull/2270/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=tskit-dev) | `98.71% <100.00%> (+<0.01%)` | :arrow_up: | Flags with carried forward coverage won't be shown. [Click here](https://docs.codecov.io/docs/carryforward-flags?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=tskit-dev#carryforward-flags-in-the-pull-request-comment) to find out more. | [Files](https://app.codecov.io/gh/tskit-dev/msprime/pull/2270?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=tskit-dev) | Coverage Δ | | |---|---|---| | [lib/util.h](https://app.codecov.io/gh/tskit-dev/msprime/pull/2270?src=pr&el=tree&filepath=lib%2Futil.h&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=tskit-dev#diff-bGliL3V0aWwuaA==) | `100.00% <ø> (ø)` | | | [msprime/\_\_init\_\_.py](https://app.codecov.io/gh/tskit-dev/msprime/pull/2270?src=pr&el=tree&filepath=msprime%2F__init__.py&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=tskit-dev#diff-bXNwcmltZS9fX2luaXRfXy5weQ==) | `100.00% <ø> (ø)` | | | [msprime/ancestry.py](https://app.codecov.io/gh/tskit-dev/msprime/pull/2270?src=pr&el=tree&filepath=msprime%2Fancestry.py&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=tskit-dev#diff-bXNwcmltZS9hbmNlc3RyeS5weQ==) | `98.72% <100.00%> (+0.02%)` | :arrow_up: | | [msprime/\_msprimemodule.c](https://app.codecov.io/gh/tskit-dev/msprime/pull/2270?src=pr&el=tree&filepath=msprime%2F_msprimemodule.c&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=tskit-dev#diff-bXNwcmltZS9fbXNwcmltZW1vZHVsZS5j) | `87.97% <70.37%> (-0.29%)` | :arrow_down: | | [lib/msprime.c](https://app.codecov.io/gh/tskit-dev/msprime/pull/2270?src=pr&el=tree&filepath=lib%2Fmsprime.c&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=tskit-dev#diff-bGliL21zcHJpbWUuYw==) | `86.26% <87.42%> (+0.14%)` | :arrow_up: | ------ [Continue to review full report in Codecov by Sentry](https://app.codecov.io/gh/tskit-dev/msprime/pull/2270?dropdown=coverage&src=pr&el=continue&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=tskit-dev). > **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=tskit-dev) > `Δ = absolute (impact)`, `ø = not affected`, `? = missing data` > Powered by [Codecov](https://app.codecov.io/gh/tskit-dev/msprime/pull/2270?dropdown=coverage&src=pr&el=footer&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=tskit-dev). Last update [a2d0753...1f302ec](https://app.codecov.io/gh/tskit-dev/msprime/pull/2270?dropdown=coverage&src=pr&el=lastupdated&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=tskit-dev). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=tskit-dev).
jeromekelleher commented 3 months ago

I've had a quick look over, and it looks great. I'll need to spend a bit more time to check the C code, but I don't expect to find much. Basically I think we can merge this pretty quickly, and then should run a bunch of simulations to try and shake out any remaining subtleties.