Folks,
I am having several difficulties with analysis of my loops.
I built a model and selected a region to refine as a loop.
I have successfully created 1000 loop files.
Based on the model_energies.py file from the examples, I am attempting to scan the 1000 loop model files. So far the script manages to read only about 250 of the set.
Here's the script. The file "loop.list" has the names of the 1000 files, one per line: ___________________________ from modeller.automodel import * # Load the automodel class
log.verbose() # request verbose output env = environ() # create a new MODELLER environment to build this model in env.libs.topology.read(file='$(LIB)/top_heav.lib') # read topology env.libs.parameters.read(file='$(LIB)/par.lib') # read parameters
# directories for input atom files env.io.atom_files_directory = './:../atom_files'
def dope_profile(mdl, file): # DOPE energy parameters edat = energy_data(contact_shell=15.0, dynamic_modeller=True, dynamic_lennard=False, dynamic_sphere=False, excl_local=(False, False, False, False)) # DOPE group restraints oldgprsr = mdl.group_restraints if not model.dope_restraints: model.dope_restraints = \ group_restraints(classes='${LIB}/atmcls-mf.lib', parameters='${LIB}/dist-mf.lib') mdl.group_restraints = model.dope_restraints molpdf = mdl.energy(output='SHORT', file=file, edat=edat, residue_span_range=(1, 9999), normalize_profile=True, smoothing_window=10) mdl.group_restraints = oldgprsr return molpdf filename = 'loop.list' in_file = open(filename,"r") while 1: # read model file code = in_file.readline() mdl = model(env) mdl.read(file=code) aln = alignment(env) # generate topology aln.append_model(mdl, atom_files=code, align_codes=code) aln.append_model(mdl, atom_files=code, align_codes=code+'-ini') mdl.generate_topology(aln, sequence=code+'-ini') mdl.transfer_xyz(aln) if info.version_info == (8,0): dope_profile(mdl, code+'.profile') else: mdl.assess_dope(output='ENERGY_PROFILE NO_REPORT', file=code+'.profile', normalize_profile=True, smoothing_window=15) _____________________________________
Here are the first five lines of an output profile: __________________________________________________________ # Energy of each residue is written to: ABC31_HUMAN.BL00010001.pdb .profile # The profile IS normalized by the number of restraints. # The profiles are smoothed over a window of residues: 13 # The sum of all numbers in the file: -15.0456 ___________________________________________________
The actual profile file name looks like this "ABC31_HUMAN.BL00010001.pdb?.profile"
1a) So, Is there a limit to ability of Modeller or python to handle long file name strings? 1b) Why am I not able to digest all 1000 loop models?
2) In the log file that's produced I see a line like this for the first loop model:
DOPE score :-51270.746094
What is the relationship between the summed per residue values from the profile output (ie -15.0456) and this DOPE score from the log file?
Thanks,
Starr