Skip to content

Commit

Permalink
[feat,perf] Add generalized AMOVA, improve perf
Browse files Browse the repository at this point in the history
[perf]

Speedup amova analyses by separating the analyses into two groups: shared and
private amova calculations. Shared calculations does not depend on distance
matrix and therefore given the same metadata the same calculations are being
done. New approach avoids this recomputation and speeds up amova replicates.

Improve metadata file reading; handle the cases with non-unique group names,
change metadata representation in memory to reduce the overhead and memory
footprint.

[feat]

Add L-level generalized AMOVA. Change standard AMOVA calculations to
generalized form using inverse variance coefficient matrix explicitly.

[chore]

Update test results to match the new order of printing in amova results csv
file.
  • Loading branch information
isinaltinkaya committed Feb 21, 2024
1 parent ab060ef commit 7388a5a
Show file tree
Hide file tree
Showing 44 changed files with 2,613 additions and 2,026 deletions.
11 changes: 4 additions & 7 deletions Makefile
Expand Up @@ -203,8 +203,7 @@ DEP := $(OBJ:.o=.d)
FLAGS := $(CPPFLAGS) $(CXXFLAGS)


# Versioning
VERSION = v0.1
VERSION = v0.2

ifneq ($(wildcard .git),)
VERSION := $(VERSION)-$(shell git describe --always)
Expand Down Expand Up @@ -267,16 +266,14 @@ clean:
## [test]
#

.PHONY: test testvg testall
.PHONY: test test-%

test:
bash test/runTests.sh

testvg:
bash test/runTests.sh vg
test-%:
bash test/runTests.sh $*

testall:
bash test/runTests.sh all

####################################################################################################
## [.activate_module]
Expand Down

0 comments on commit 7388a5a

Please sign in to comment.