Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add modular simplifier #2752

Draft
wants to merge 88 commits into
base: main
Choose a base branch
from
Draft
Changes from 1 commit
Commits
Show all changes
88 commits
Select commit Hold shift + click to select a range
365de88
add prototypes
molpopgen May 8, 2023
4ba5513
clang-format
molpopgen May 8, 2023
2626292
add implementations
molpopgen May 8, 2023
12a1245
alloc array for tracking parent contiguity
molpopgen May 8, 2023
0656a78
check for contiguous parent processing
molpopgen May 8, 2023
c3d791b
test skeleton
molpopgen May 8, 2023
293a5f5
building up tests
molpopgen May 8, 2023
e61c48c
whew
molpopgen May 8, 2023
03673a9
free
molpopgen May 8, 2023
5ff0442
working on test
molpopgen May 8, 2023
b8b7253
that was kinda brutal
molpopgen May 8, 2023
d37cb5d
more stress test
molpopgen May 8, 2023
4b49a7a
internal checks so we don't have to test internal details
molpopgen May 8, 2023
57c1b01
modularize, test that we can catch birth order violations
molpopgen May 8, 2023
bcc9a15
move comments
molpopgen May 8, 2023
7a96dcd
FIXME
molpopgen May 8, 2023
145abce
show some of the side effects that one can get
molpopgen May 8, 2023
c71e4ed
not detecting discontiguous parents
molpopgen May 9, 2023
59ce926
all tests fail when we try to check for non-contiguous parents
molpopgen May 9, 2023
946a735
fix array init to TSK_NULL
molpopgen May 9, 2023
f3bfd49
name field for what we use it for...
molpopgen May 9, 2023
eeef36a
valgrind
molpopgen May 9, 2023
7e799f0
testing pattern w/less duplication
molpopgen May 9, 2023
127106e
found a goof. yay for testing
molpopgen May 9, 2023
ac8236f
fix logic error
molpopgen May 9, 2023
0a149ce
start treeseq comparison
molpopgen May 9, 2023
f19f3a0
tree time comparisons...
molpopgen May 9, 2023
c94677f
notes
molpopgen May 9, 2023
ae005e6
TODO
molpopgen May 9, 2023
bddce27
fix typo
molpopgen May 9, 2023
afe426f
update note
molpopgen May 9, 2023
bfa2484
fix setup comment
molpopgen May 9, 2023
dd2e20e
fix implicit integer cast flagged by circle CI
molpopgen May 9, 2023
0a8f5ab
truly fix the cast
molpopgen May 9, 2023
c0112d1
check that no new child is born before any child in the input tables.
molpopgen May 9, 2023
91734e3
use correct error codes
molpopgen May 9, 2023
ebcbd5e
add tests of null parent/child in edge
molpopgen May 9, 2023
6fb5985
test for child time > that of any in the input tables
molpopgen May 9, 2023
6803b4d
remove useless if
molpopgen May 9, 2023
b2830ff
test node out of range
molpopgen May 9, 2023
77bb9c8
bad samples
molpopgen May 9, 2023
e30c155
note
molpopgen May 9, 2023
09bd543
input table integrity check fail
molpopgen May 9, 2023
820eed6
start on overlapping generation tests
molpopgen May 9, 2023
fdbfac1
big code duplication. ugh
molpopgen May 9, 2023
a38e8a0
need to think now about how to handle overlapping gens w/o the actual…
molpopgen May 9, 2023
b5eb446
note for tomorrow
molpopgen May 9, 2023
f5c23cb
more detailed notes
molpopgen May 9, 2023
a890997
update what to do
molpopgen May 10, 2023
4060d13
fix cast errors that aren't in printf
molpopgen May 10, 2023
e95b671
start mocking a buffer for internal testing. overlapping generations…
molpopgen May 16, 2023
f0cb280
not quite
molpopgen May 16, 2023
8bba18a
remove memory leak
molpopgen May 16, 2023
c04efbb
closer
molpopgen May 16, 2023
07164aa
tests pass
molpopgen May 17, 2023
aeea43b
comment out unused code
molpopgen May 17, 2023
c1cb315
fix compile fails on CI
molpopgen May 17, 2023
fcff748
allocate new edges as needed
molpopgen May 17, 2023
23544cd
be careful about setup
molpopgen May 17, 2023
0732c81
force a failing test
molpopgen May 17, 2023
c81da32
we don't need a particular order for the child nodes...
molpopgen May 17, 2023
8d6f8b4
add test of parent time error
molpopgen May 17, 2023
3b39431
reinstate test failure
molpopgen May 17, 2023
cb0bd03
start refactor from temp buffer back into temp edge table. idea is t…
molpopgen May 26, 2023
8af74c1
at least no segfault any more...
molpopgen May 26, 2023
9254283
some pring
molpopgen May 26, 2023
154e5a3
we are not detecting parent time violations properly
molpopgen May 26, 2023
ead9f5c
now tests pass
molpopgen May 26, 2023
5114645
clean
molpopgen May 26, 2023
60ef2e4
delete printf
molpopgen May 26, 2023
c25d6f9
start to abstract out the test runner step
molpopgen May 26, 2023
7819804
streamline for new test runner
molpopgen May 26, 2023
8d25cc6
use new runner for most/all tests
molpopgen May 26, 2023
dc51f7d
cleanup
molpopgen May 26, 2023
2e1be0f
add new .c
molpopgen May 31, 2023
b11525d
update the meson stuff
molpopgen May 31, 2023
9f2d496
add some infrastructure
molpopgen May 31, 2023
add7347
add some infrastructure
molpopgen May 31, 2023
4e07d22
fmt
molpopgen May 31, 2023
3dfc9fc
skeleton in place. we have a segfault
molpopgen May 31, 2023
24a76bf
make valgrind happy
molpopgen May 31, 2023
a5ac4c4
cleanup
molpopgen May 31, 2023
cc89815
cleanup
molpopgen May 31, 2023
f095a76
add death rate, update lots of the new example internals
molpopgen May 31, 2023
0c498c0
overlapping gens seems to work
molpopgen May 31, 2023
fcd17f3
add an important note
molpopgen May 31, 2023
e19a5a6
Add basic simulation for development
jeromekelleher Jun 23, 2023
c559f64
Add almost-working version with Python simplifier
jeromekelleher Jun 23, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
clean
  • Loading branch information
molpopgen committed Feb 5, 2024
commit 5114645551916afcd6c5cce277ce622b6e5791ae
3 changes: 0 additions & 3 deletions c/tskit/tables.c
Original file line number Diff line number Diff line change
@@ -13697,9 +13697,6 @@ tsk_modular_simplifier_add_edge(tsk_modular_simplifier_t *self, double left,
goto out;
}

fprintf(stdout, "parent %d birth time %lf < last parent birth time %lf\n", parent,
self->pimpl->simplifier.input_tables.nodes.time[parent],
self->pimpl->last_parent_time);
if (self->pimpl->simplifier.input_tables.nodes.time[parent]
< self->pimpl->last_parent_time) {
ret = TSK_ERR_EDGES_NOT_SORTED_PARENT_TIME;