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