Nmr cnstr

From PyMOLWiki
Revision as of 12:00, 7 November 2005 by Evangelos (talk | contribs)
Jump to navigation Jump to search

Cns.png Upl.png

##############################################################################################################
# Pymol Script: For visualizing the NMR constrains (DYANA & CNS format), on top of the calculated structure. #
#               Author: Evangelos Papadopoulos.                                                              #
#  current affiliation: Dept. of Biochemistry and Biophysics,                                                #
#                       Arrhenius Laboratories,                                                              #
#                       Stockholm University                                                                 #
#                       SE-106 91 Stockholm, Sweden                                                          #
#                email:evangelos@dbb.su.se   tel: +468164580                                                 #
#                NOTES: This is a preliminary version.                                                       #
##############################################################################################################



def upl(fname):

	f=open(fname,'r')
	i=1
	upl=f.readline()
#
	while upl<>'':
	
		print upl,i
		cns=string.split(upl)
		cmd.dist('upl'+str(i),'i. '+cns[0]+' & n. '+cns[2],'i. '+cns[3]+' & n. '+cns[5])
		upl=f.readline()
		i=i+1
#
	f.close()
	cmd.hide('labels')
	cmd.set ('dash_gap', 0.05)
	cmd.do ("orient")
	cmd.set ('movie_delay', 1500)

def cns(fname):

	f=open(fname,'r')
	i=1
	upl=f.readline()
	print upl,i
	while upl<>'':
		if upl=='\n': 
			upl=f.readline()
			continue
		cns=string.split(upl)
		print cns,i
		if cns[0]=='assign' : 
			print 'CNS'
			if cns[5]=='HB*': print 'CNS***'
			cmd.dist('upl'+str(i),'i. '+cns[2]+' & n. '+cns[5],'i. '+cns[7]+' & n. '+cns[10])
		i=i+1
		upl=f.readline()
		print '*'+upl+'*',i
	
	f.close()
	cmd.set ('dash_gap', 0.05)
	cmd.hide('labels')
	cmd.do ("orient")
	cmd.set ('movie_delay', 1500)