[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[modeller_usage] evaluation of a region with DOPE z-score



Dear Modeller Caretaker,

I have generated several models with different template combinations and want select the best with regard to some regions of interest (i.e. the ATP binding site).
 In the case of the binding site my residue selection is not contiguous (roughly all residues within 10 A. from the ATP). Does the resulting score make sense? Also if you look into the profile plot you will notice that the line is also curved in regions outside the binding cavity, and that happens even if the residue selection is conti. I think DOPE score is affected by neighboring atoms. If that's true what's the best way to assess a model region?

thanks,
Tom

PS: the class to evaluate the cavity is pasted below.



from modeller import *
from modeller.parallel import task
from modeller.scripts import complete_pdb
import os

class Evaluate_Cavity(task):
    """A task to evaluate a model with the DOPEHR method"""
    def run(self, template_combination, i):
        log.minimal()    # request minimal output
        env = environ()
        env.libs.topology.read(file='$(LIB)/top_heav.lib') # read topology
        env.libs.parameters.read(file='$(LIB)/par.lib') # read parameters
        # read model file
        mdl = complete_pdb(env, "/home/thomas2/Documents/PfMDR1_AAA1/new_alignment_"+template_combination+"/modeller/target.B999900"+str(i)+".pdb")
        # Select all residues except for the loop
        s = selection(mdl.residue_range('8', '20'), mdl.residue_range('34', '53'), mdl.residue_range('210', '212'), mdl.residue_range('242', '244'), mdl.residue_range('258', '261'))
        # Assess with DOPE:
        os.chdir("/home/thomas2/Documents/PfMDR1_AAA1/new_alignment_"+template_combination+"/modeller/")
        score = s.assess_dopehr(output='ENERGY_PROFILE NO_REPORT', file="model_"+str(i)+"_"+template_combination+".profile",
                      normalize_profile=True, smoothing_window=15)
        return [str(i), score]