From af2e363557ce30705d3aa0591b3313ba25f31b52 Mon Sep 17 00:00:00 2001 From: Joshua Rollins Date: Tue, 18 Aug 2020 15:31:22 -0400 Subject: [PATCH 1/2] Remove alphabet dependency Line 377: Remove first part of if condition (i.e. eliminate "(ali->alphabet == codesAA) &&" and clean outer level of brackets) Line 381: Remove condition on codesAA (i.e. always true), i.e. just the following remains: if (seq(ali->target, i) == 0) siteValid[i] = 0; Line 530: Remove condition on codesAA (i.e. always true), i.e. change line to if (c == '.') c = '-'; --- src/plm.c | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/src/plm.c b/src/plm.c index 15fa687..1b96d4a 100644 --- a/src/plm.c +++ b/src/plm.c @@ -373,14 +373,9 @@ alignment_t *MSARead(char *alignFile, options_t *options) { for (int i = 0; i < ali->nSites; i++) siteValid[i] = 1; if (ali->target >= 0) { for (int i = 0; i < ali->nSites; i++) { - /* For proteins, remove lower case and gap columns */ - if ((ali->alphabet == codesAA) - && (seq(ali->target, i) < 0)) - siteValid[i] = 0; + /* Discard gaps */ - if ((ali->alphabet == codesAA) - || (options->estimatorMAP == INFER_MAP_PLM_GAPREDUCE)) - if (seq(ali->target, i) == 0) siteValid[i] = 0; + if (seq(ali->target, i) <= 0) siteValid[i] = 0; } nValidSites = 0; for (int i = 0; i < ali->nSites; i++) @@ -527,7 +522,7 @@ letter_t MSAReadCode(char c, char *alphabet, int nCodes) { letter_t i = 0; /* Protein-specific treatment of '.' */ - if (alphabet == codesAA) if (c == '.') c = '-'; + if (c == '.') c = '-'; // Assumes . are gpas in alphabet /* Store lowercase characters as down-shifted by nCodes */ while ((i < nCodes - 1) && toupper(c) != alphabet[i]) i++; From 9c9ff6ff1b2067c5025c7a4ec04ed27b51c62330 Mon Sep 17 00:00:00 2001 From: Joshua Rollins Date: Tue, 18 Aug 2020 15:37:47 -0400 Subject: [PATCH 2/2] Update plm.c Fix comments --- src/plm.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/plm.c b/src/plm.c index 1b96d4a..292394d 100644 --- a/src/plm.c +++ b/src/plm.c @@ -373,7 +373,6 @@ alignment_t *MSARead(char *alignFile, options_t *options) { for (int i = 0; i < ali->nSites; i++) siteValid[i] = 1; if (ali->target >= 0) { for (int i = 0; i < ali->nSites; i++) { - /* Discard gaps */ if (seq(ali->target, i) <= 0) siteValid[i] = 0; } @@ -522,7 +521,7 @@ letter_t MSAReadCode(char c, char *alphabet, int nCodes) { letter_t i = 0; /* Protein-specific treatment of '.' */ - if (c == '.') c = '-'; // Assumes . are gpas in alphabet + if (c == '.') c = '-'; // Assumes '.' are gaps in alphabet /* Store lowercase characters as down-shifted by nCodes */ while ((i < nCodes - 1) && toupper(c) != alphabet[i]) i++; @@ -1141,4 +1140,4 @@ void OutputCouplingScores(char *couplingsFile, const numeric_t *x, fprintf(stderr, "Error writing coupling scores\n"); exit(1); } -} \ No newline at end of file +}