add get_ladders() function
parent
948ff2d3ab
commit
1621940855
|
|
@ -19,3 +19,5 @@ else:
|
|||
get_helix(pdb_file.residues, turns)
|
||||
get_bends(pdb_file.residues)
|
||||
get_chirality(pdb_file.residues)
|
||||
bridges = get_bridges(pdb_file.residues)
|
||||
get_ladders(bridges)
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@ def get_turns(residues):
|
|||
return(turns)
|
||||
|
||||
def get_bridges(residues):
|
||||
bridges = []
|
||||
bridges = {}
|
||||
bridge = {}
|
||||
strongest_bridge = {}
|
||||
for i in range(1,len(residues)-4):
|
||||
|
|
@ -102,9 +102,9 @@ def get_bridges(residues):
|
|||
bridge = {}
|
||||
# finally add the strongest bridge at i and j pos
|
||||
if(strongest_bridge):
|
||||
bridges.append(Bridge(strongest_bridge['btype'],
|
||||
bridges[strongest_bridge['ipos']] = (Bridge(strongest_bridge['btype'],
|
||||
strongest_bridge['ipos']))
|
||||
bridges.append(Bridge(strongest_bridge['btype'],
|
||||
bridges[strongest_bridge['jpos']] = (Bridge(strongest_bridge['btype'],
|
||||
strongest_bridge['jpos']))
|
||||
if(len(bridges)>0):
|
||||
return(bridges)
|
||||
|
|
@ -129,15 +129,26 @@ def get_helix(residues, turns):
|
|||
i+=1
|
||||
return(helix)
|
||||
|
||||
def get_ladder(bridges):
|
||||
def get_ladders(bridges):
|
||||
ladders = {}
|
||||
for i in range(len(bridges)):
|
||||
i = 1
|
||||
while i < len(bridges):
|
||||
k = 1
|
||||
while bridges[i] == bridges[i+k]:
|
||||
while (((i in bridges.keys()) and (i+k in bridges.keys())) and
|
||||
(bridges[i].bridge_type == bridges[i+k].bridge_type)):
|
||||
k+=1
|
||||
if k>1:
|
||||
ladders[bridges[i].res_num] = k-1
|
||||
print("ladder", bridges[i].res_num, bridges[i+k-1].res_num)
|
||||
ladders[bridges[i].res_num] = {'start':bridges[i].res_num,
|
||||
'end':bridges[i+k-1].res_num}
|
||||
i+=k-1
|
||||
else:
|
||||
i+=1
|
||||
return ladders
|
||||
|
||||
|
||||
|
||||
def get_bends(residues):
|
||||
bends = {}
|
||||
for i in range(2,len(residues)-2):
|
||||
|
|
@ -229,11 +240,11 @@ def get_chirality(residues):
|
|||
|
||||
if(angle>0 and angle<=180):
|
||||
sign="+"
|
||||
print("angle", residues[i].resid, "+", angle)
|
||||
print("chirality", residues[i].resid, "+", angle)
|
||||
|
||||
if(angle<=0 and angle > -180):
|
||||
sign="-"
|
||||
print("angle", residues[i].resid, "-", angle)
|
||||
print("chirality", residues[i].resid, "-", angle)
|
||||
|
||||
chirality[residues[i].resid] = sign
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue