Before dropping bp2
parent
d58e01d3f2
commit
de6f723d2f
30
src/atom.py
30
src/atom.py
|
|
@ -243,6 +243,7 @@ def get_bridges(residues):
|
|||
bridges = {}
|
||||
bridge = {}
|
||||
strongest_bridge = {}
|
||||
selected_bridges = []
|
||||
for i in range(1,len(residues)-4):
|
||||
E_min = 0
|
||||
for j in range(i+2,len(residues)-1):
|
||||
|
|
@ -292,18 +293,45 @@ def get_bridges(residues):
|
|||
if(bridge['res1']+bridge['res2']<E_min):
|
||||
E_min = bridge['res1']+bridge['res2']
|
||||
strongest_bridge = bridge
|
||||
if strongest_bridge not in selected_bridges:
|
||||
selected_bridges.append(strongest_bridge)
|
||||
coord_bridge = [i,j]
|
||||
bridge = {}
|
||||
|
||||
# finally add the strongest bridge at i and j pos
|
||||
if(strongest_bridge):
|
||||
if(len(selected_bridges)>1):
|
||||
bridges[strongest_bridge['i']] = (Bridge(strongest_bridge['btype'],
|
||||
strongest_bridge['ipos'],
|
||||
strongest_bridge['jpos'],
|
||||
[strongest_bridge['i'],
|
||||
strongest_bridge['j']],
|
||||
selected_bridges[-2]['btype'],
|
||||
selected_bridges[-2]['ipos'],
|
||||
selected_bridges[-2]['jpos'],
|
||||
[selected_bridges[-2]['i'],
|
||||
selected_bridges[-2]['j']]))
|
||||
|
||||
bridges[strongest_bridge['j']] = (Bridge(strongest_bridge['btype'],
|
||||
strongest_bridge['ipos'],
|
||||
strongest_bridge['jpos'],
|
||||
[strongest_bridge['i'],
|
||||
strongest_bridge['j']],
|
||||
selected_bridges[-2]['btype'],
|
||||
selected_bridges[-2]['ipos'],
|
||||
selected_bridges[-2]['jpos'],
|
||||
[selected_bridges[-2]['i'],
|
||||
selected_bridges[-2]['j']]))
|
||||
else:
|
||||
bridges[strongest_bridge['i']] = (Bridge(strongest_bridge['btype'],
|
||||
strongest_bridge['ipos'],
|
||||
strongest_bridge['jpos'],
|
||||
[strongest_bridge['i'],
|
||||
strongest_bridge['j']]))
|
||||
|
||||
bridges[strongest_bridge['j']] = (Bridge(strongest_bridge['btype'],
|
||||
strongest_bridge['jpos'],
|
||||
strongest_bridge['ipos'],
|
||||
strongest_bridge['jpos'],
|
||||
[strongest_bridge['i'],
|
||||
strongest_bridge['j']]))
|
||||
if(len(bridges)>0):
|
||||
|
|
|
|||
13
src/dssp.py
13
src/dssp.py
|
|
@ -61,6 +61,8 @@ ladders = get_ladders(bridges, residues)
|
|||
sheets = get_sheets(ladders)
|
||||
helix = build_helix_patterns(residues)
|
||||
# iterating over residues
|
||||
|
||||
|
||||
for i,res in enumerate(residues):
|
||||
#res.get_turns(residues, turns)
|
||||
kappa = res.get_bends(residues)[0]
|
||||
|
|
@ -81,6 +83,13 @@ for i,res in enumerate(residues):
|
|||
helix_3 = print_helix_pattern(residues, res, helix[0])
|
||||
helix_4 = print_helix_pattern(residues, res, helix[1])
|
||||
helix_5 = print_helix_pattern(residues, res, helix[2])
|
||||
|
||||
print(i+1, res.resid, res.chain_id, res.res_letter, helix_3, helix_4, helix_5, turn_3, turn_4, turn_5, bend_symbol, chirality, round(t_co, 3), round(kappa,1),
|
||||
if i in bridges.keys():
|
||||
bp1 = bridges[i].j
|
||||
else:
|
||||
bp1 = 0
|
||||
print(i+1, res.resid, res.chain_id, res.res_letter, helix_3, helix_4, helix_5, turn_3, turn_4, turn_5, bend_symbol, chirality, bp1,round(t_co, 3), round(kappa,1),
|
||||
round(alpha, 1), round(phi, 1), round(psi,1), round(x_ca,1), round(y_ca,1), round(z_ca,1))
|
||||
|
||||
|
||||
for bridge in bridges:
|
||||
print(bridges[bridge].i, bridges[bridge].j)
|
||||
|
|
|
|||
|
|
@ -14,13 +14,19 @@ class Turn(Structure):
|
|||
|
||||
class Bridge(Structure):
|
||||
|
||||
def __init__(self, bridge_type, res_num, res_partner, indices):
|
||||
def __init__(self, bridge_type, res_num, res_partner, indices,
|
||||
second_bridge_type=None, second_resnum=None,
|
||||
second_res_partner=None, second_indices=None):
|
||||
self.bridge_type = bridge_type
|
||||
self.res_num = res_num
|
||||
self.res_partner = res_partner
|
||||
Structure.res = res_num
|
||||
self.i = indices[0]
|
||||
self.j = indices[1]
|
||||
self.second_bridge_type = second_bridge_type
|
||||
self.second_resnum = second_resnum
|
||||
self.second_res_partner = second_res_partner
|
||||
self.second_indices = second_indices
|
||||
|
||||
class Helix(Structure):
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue