Bestimmen, ob ein Proteinmodell einen Backbone Clash enthält

Ich habe ein Ensemble von Homologiemodellen eines Proteins und möchte nun jene Modelle entfernen, die Rückgratkollisionen aufweisen. Ich könnte natürlich mit dem Auge nachsehen, aber das ist subjektiv und wird wahrscheinlich nicht zur Veröffentlichung akzeptiert.

Was ist die beste (reproduzierbare) Methode, um festzustellen, ob ein bestimmtes Proteinmodell einen Rückgratkonflikt enthält?

Antworten (1)

Der Weg, um sterische Kollisionen zwischen zwei beliebigen Atomen, Rückgrat oder auf andere Weise, zu überprüfen, besteht darin, ihren euklidischen Abstand zu berechnen. Wenn aund bzwei Atome darstellen (mit a_xder X-Koordinate des Atoms ausw.), können Sie ihren euklidischen Abstand wie folgt berechnen.

d(a, b) = sqrt( (a_x - b_x)^2 + (a_y - b_y)^2 + (a_z - b_z)^2) )

Die Idee wäre also im Wesentlichen, den paarweisen Abstand zwischen jedem der Rückgratatome zu berechnen. Bei jedem Atompaar kommt es zu sterischen Kollisionen, wenn der Abstand zwischen ihnen unter eine bestimmte Schwelle fällt. Wenn ich mich recht erinnere, ist diese Schwelle die Summe der Van-der-Waals-Radien der beiden Atome.

Ich gehe davon aus, dass die Variablen a und b Atomradien der beiden jeweiligen Atome darstellen. Also ist a_x der Atomradius von a * die x-Koordinate? Gibt diese Gleichung keinen Fehler zurück, wenn ich versuche, eine -ve-Zahl zu quadrieren? Um einen sterischen Zusammenstoß zu bestimmen, addiere ich die Radien der Atome a und b und wenn dieser Wert größer ist als der Wert aus der Gleichung, habe ich einen Zusammenstoß?
Ja, aund bsind dreidimensionale Vektoren, die jeweils die X-, Y- und Z-Koordinaten der beiden Atome enthalten. Der Wert in sqrt()ist jedoch immer nicht negativ, da jede der drei Differenzen quadriert wird, sodass es kein Problem sein sollte, einen undefinierten Wert zu erhalten. Ich habe die Antwort aktualisiert.