From 5dd0f757c1f579a8b242664a0a0d7c41bf63a256 Mon Sep 17 00:00:00 2001 From: Will Trimble Date: Fri, 16 Jun 2017 11:35:58 -0500 Subject: [PATCH] Avoid divide by zero in average length, std --- clipper/fastq-join.cpp | 10 +++++++++- clipper/t/out/join/test-phred.out | 2 +- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/clipper/fastq-join.cpp b/clipper/fastq-join.cpp index d8d0169..a861f89 100644 --- a/clipper/fastq-join.cpp +++ b/clipper/fastq-join.cpp @@ -388,9 +388,17 @@ int main (int argc, char **argv) { double dev = sqrt((((double)joincnt)*tlensq-pow((double)tlen,2)) / ((double)joincnt*((double)joincnt-1)) ); + double avg = (double) tlen / (double) joincnt; + if(joincnt == 0) { + dev = 0; + avg = 0; + } + if(joincnt == 1) { + dev = 0; + } printf("Total reads: %d\n", nrec); printf("Total joined: %d\n", joincnt); - printf("Average join len: %.2f\n", (double) tlen / (double) joincnt); + printf("Average join len: %.2f\n", avg); printf("Stdev join len: %.2f\n", dev); printf("Version: %s\n", VERSION); diff --git a/clipper/t/out/join/test-phred.out b/clipper/t/out/join/test-phred.out index bf7dccf..5ce8d66 100644 --- a/clipper/t/out/join/test-phred.out +++ b/clipper/t/out/join/test-phred.out @@ -1,5 +1,5 @@ Total reads: 1 Total joined: 1 Average join len: 50.00 -Stdev join len: -nan +Stdev join len: 0.00 Version: 1.01.759