Fixes fixes fixes
authorMax <Infinity2573@gmail.com>
Mon, 19 Sep 2022 16:43:54 +0000 (19:43 +0300)
committerMax <Infinity2573@gmail.com>
Mon, 19 Sep 2022 16:43:54 +0000 (19:43 +0300)
src/dssptools.cpp

index 5efefe8bb54676a7cf9321c5ab9719592b11aabb..2085189133a5a0457e51d27f60e289b6eb9efeb9 100644 (file)
@@ -146,19 +146,13 @@ bool secondaryStructures::hasHBondBetween(std::size_t Donor, std::size_t Accepto
 
 bool secondaryStructures::NoChainBreaksBetween(std::size_t Resi1, std::size_t Resi2) const{
     bool flag{true};
-    std::size_t i{};
-    if ( Resi1 < Resi2){
-        i = Resi1;
-    }
-    else if ( Resi1 > Resi2) {
-        i = Resi2;
-    }
-    else{
-        return true;
+    std::size_t i{Resi1}, j[Resi2]; // From i to j
+    if ( Resi2 < Resi1){
+        std::swap(i, j);
     }
 
-    for (; i != Resi2; ++i){
-        flag = !(SecondaryStructuresStatusMap[i].isBreakPartnerWith(&SecondaryStructuresStatusMap[i + 1]) || SecondaryStructuresStatusMap[i + 1].isBreakPartnerWith(&SecondaryStructuresStatusMap[i]));
+    for (; i != j; ++i){
+        flag = !(SecondaryStructuresStatusMap[i].isBreakPartnerWith(&SecondaryStructuresStatusMap[i + 1]) && SecondaryStructuresStatusMap[i + 1].isBreakPartnerWith(&SecondaryStructuresStatusMap[i]));
     }
 
     if (!flag){
@@ -260,7 +254,7 @@ void secondaryStructures::analyzeBridgesAndLaddersPatterns(){
 
 void secondaryStructures::analyzeTurnsAndHelicesPatterns(){
     for(const turnsTypes &i : { turnsTypes::Turn_4, turnsTypes::Turn_3, turnsTypes::Turn_5 }){
-        std::cout << "Testing Helix_" << static_cast<std::size_t>(i) << std::endl;
+        std::cout << "Testing Helix_" << static_cast<std::size_t>(i) + 3 << std::endl;
         std::size_t stride {static_cast<std::size_t>(i) + 3};
         for(std::size_t j {0}; j + static_cast<std::size_t>(i) < SecondaryStructuresStatusMap.size(); ++j){
             std::cout << "Testing " << j << " and " << j + stride << std::endl;