From f5467dd3b9e6b2717740040294103b47b6d8d3ba Mon Sep 17 00:00:00 2001 From: Alexander Rose <alexander.rose@weirdbyte.de> Date: Mon, 27 Mar 2023 22:39:32 -0700 Subject: [PATCH] allow intra-residue contacts in single-residue models --- src/mol-model-props/computed/interactions/contacts.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mol-model-props/computed/interactions/contacts.ts b/src/mol-model-props/computed/interactions/contacts.ts index c84a12b1d..da1691c1a 100644 --- a/src/mol-model-props/computed/interactions/contacts.ts +++ b/src/mol-model-props/computed/interactions/contacts.ts @@ -44,7 +44,7 @@ function validPair(structure: Structure, infoA: Features.Info, infoB: Features.I const altA = altLoc(infoA.unit, indexA); const altB = altLoc(infoB.unit, indexB); if (altA && altB && altA !== altB) return false; // incompatible alternate location id - if (infoA.unit.residueIndex[infoA.unit.elements[indexA]] === infoB.unit.residueIndex[infoB.unit.elements[indexB]] && infoA.unit === infoB.unit) return false; // same residue + if (infoA.unit === infoB.unit && infoA.unit.model.atomicHierarchy.residueAtomSegments.count > 1 && infoA.unit.residueIndex[infoA.unit.elements[indexA]] === infoB.unit.residueIndex[infoB.unit.elements[indexB]]) return false; // same residue (and more than one residue) // e.g. no hbond if donor and acceptor are bonded if (connectedTo(structure, infoA.unit, indexA, infoB.unit, indexB)) return false; -- GitLab