From 270e5b0444f67781856bf80db51650af9cb89b0c Mon Sep 17 00:00:00 2001 From: Sebastiano Tronto Date: Thu, 17 Jul 2025 08:54:44 +0200 Subject: Renamed tests to make space for more coordinate tests --- test/113_cocsep_selfsim_distribution/00_all.in | 0 test/113_cocsep_selfsim_distribution/00_all.out | 12 +++++++ .../cocsep_selfsim_distribution_tests.c | 38 ++++++++++++++++++++++ 3 files changed, 50 insertions(+) create mode 100644 test/113_cocsep_selfsim_distribution/00_all.in create mode 100644 test/113_cocsep_selfsim_distribution/00_all.out create mode 100644 test/113_cocsep_selfsim_distribution/cocsep_selfsim_distribution_tests.c (limited to 'test/113_cocsep_selfsim_distribution') diff --git a/test/113_cocsep_selfsim_distribution/00_all.in b/test/113_cocsep_selfsim_distribution/00_all.in new file mode 100644 index 0000000..e69de29 diff --git a/test/113_cocsep_selfsim_distribution/00_all.out b/test/113_cocsep_selfsim_distribution/00_all.out new file mode 100644 index 0000000..e58bfe1 --- /dev/null +++ b/test/113_cocsep_selfsim_distribution/00_all.out @@ -0,0 +1,12 @@ +373 self-similar positions out of 3393 +Size number of groups +1 3020 +2 311 +3 8 +4 35 +6 9 +8 6 +12 1 +16 1 +24 1 +48 1 diff --git a/test/113_cocsep_selfsim_distribution/cocsep_selfsim_distribution_tests.c b/test/113_cocsep_selfsim_distribution/cocsep_selfsim_distribution_tests.c new file mode 100644 index 0000000..90208eb --- /dev/null +++ b/test/113_cocsep_selfsim_distribution/cocsep_selfsim_distribution_tests.c @@ -0,0 +1,38 @@ +#include "../test.h" + +size_t gendata_cocsep(unsigned char *, uint64_t *, cube_t *); +int64_t coord_cocsep(cube_t); + +int bcount(uint64_t x) { + int ret; + uint64_t i; + + for (i = 0, ret = 0; i < 64; i++) + if (x & (UINT64_C(1) << i)) + ret++; + + return ret; +} + +void run(void) { + unsigned char buf[2000000]; + int size[65], tot, j; + uint64_t i, selfsim[COCSEP_CLASSES], sim; + cube_t rep[COCSEP_CLASSES]; + + memset(size, 0, 65 * sizeof(int)); + gendata_cocsep(buf, selfsim, rep); + + for (i = 0, tot = 0; i < COCSEP_CLASSES; i++) { + sim = selfsim[i]; + if (sim >> 1) + tot++; + size[bcount(sim)]++; + } + + printf("%d self-similar positions out of 3393\n", tot); + printf("Size\tnumber of groups\n"); + for (j = 0; j <= 48; j++) + if (size[j] != 0) + printf("%d\t%d\n", j, size[j]); +} -- cgit v1.3