logging.basicConfig()
logger = logging.getLogger(__name__)
+def seq_2d_xx(line,seq):
+ line=line.replace(" ","")
+ lista=list(line)
+ for ii in range(0,len(line)):
+ if seq[ii]=='X':
+ if ii>0:
+ lista[ii-1]='-'
+ if ii+1<len(line):
+ lista[ii+1]='-'
+ return("".join(lista))
+
def seq_2d_write(line):
line=line.replace(" ", "")
out='{:d}\n{:6.1f}\n'.format(len(line),50.0)
for i in range(1,4):
out=out+'{:5d}{:8.3f}{:8.3f}\n'.format(i,0.0,180.0)
- for e in line[:-3]:
+ for ii in range(1,len(line)-2):
i+=1
- if e=='-':
- out=out+'{:5d}{:8.3f}{:8.3f}\n'.format(i,0.0,180.0)
- elif e=='H':
+ if line[ii:ii+2]=='HH':
out=out+'{:5d}{:8.3f}{:8.3f}\n'.format(i,50.0,20.0)
- elif e=='E':
+ elif line[ii:ii+2]=='EE':
out=out+'{:5d}{:8.3f}{:8.3f}\n'.format(i,180.0,40.0)
+ else:
+ out=out+'{:5d}{:8.3f}{:8.3f}\n'.format(i,0.0,180.0)
return(out)
def seq_2d_write_50(line):
out='{:d}\n'.format(len(line))
for i in range(1,4):
out=out+'{:5d}{:8.3f}{:8.3f}{:8.3f}\n'.format(i,0.0,180.0,50.0)
- for e in line[:-3]:
+ for ii in range(1,len(line)-2):
i+=1
- if e=='-':
- out=out+'{:5d}{:8.3f}{:8.3f}{:8.3f}\n'.format(i,0.0,180.0,50.0)
- elif e=='H':
+ if line[ii:ii+2]=='HH':
out=out+'{:5d}{:8.3f}{:8.3f}{:8.3f}\n'.format(i,50.0,20.0,50.0)
- elif e=='E':
+ elif line[ii:ii+2]=='EE':
out=out+'{:5d}{:8.3f}{:8.3f}{:8.3f}\n'.format(i,180.0,40.0,50.0)
+ else:
+ out=out+'{:5d}{:8.3f}{:8.3f}{:8.3f}\n'.format(i,0.0,180.0,50.0)
return(out)
def write_ssbond(ssbond):
if instance.md_seq_2d == '':
f.write('0\n')
else:
- f.write(seq_2d_write(instance.md_seq_2d))
+ f.write(seq_2d_write(seq_2d_xx(instance.md_seq_2d,seq)))
if instance.type == 'md' and instance.md_start != 'pdbstart':
if instance.md_2d == '':
f.write('0\n')
else:
- f.write(seq_2d_write(instance.md_2d))
+ f.write(seq_2d_write(seq_2d_xx(instance.md_2d,seq)))
if instance.type == 'remd' and instance.md_start != 'pdbstart':
if instance.md_2d == '':
f.write('0\n')
else:
- f.write(seq_2d_write(instance.md_2d))
+ f.write(seq_2d_write(seq_2d_xx(instance.md_2d,seq)))
if instance.saxs_data != '':
f.write(write_ssbond(instance.ssbond))
if instance.md_2d != '':
- f.write(seq_2d_write_50(instance.md_2d))
+ f.write(seq_2d_write_50(seq_2d_xx(instance.md_2d,seq)))
if instance.saxs_data != '':
fsaxs = open(instance.jobdirname+'/saxs.data', 'w')
f.write(seq[i:i+80]+'\n')
f.write(write_ssbond(instance.ssbond))
if instance.md_2d != '':
- f.write(seq_2d_write_50(instance.md_2d))
+ f.write(seq_2d_write_50(seq_2d_xx(instance.md_2d,seq)))
if instance.saxs_data != '':
lines=instance.saxs_data.split('\n')
for line in lines: