Selection.assess() — assess a model selection

assess(assessor, output='SHORT NO_REPORT', **vars)

Output:
score

This command assesses the quality of the selected atoms in the model using the provided assessor object. Typically this is used for SOAP scoring, with assessor being soap_loop.Scorer() or soap_protein_od.Scorer().

Assessment uses the standard MODELLER energy function, so any of the arguments accepted by Selection.energy() can also be used here. See Selection.assess_dope() for more details on this and schedule_scale.

Any of the assessor objects accepted by this function can also be used for automatic assessment of each AutoModel or LoopModel model; see Section 2.2.3 or Section 2.3.3 for examples.

Example: examples/assessment/assess_soap_protein.py

# Example for: Selection.assess(), soap_protein_od.Scorer()

from modeller import *
from modeller.scripts import complete_pdb
from modeller import soap_protein_od

env = Environ()
env.libs.topology.read(file='$(LIB)/top_heav.lib')
env.libs.parameters.read(file='$(LIB)/par.lib')

# Set up SOAP-Protein-OD scoring (note: if assessing multiple models, it is
# best to create 'sp' just once and keep it around, since reading in the
# potential from disk can take a long time).
sp = soap_protein_od.Scorer()

# Read a model previously generated by Modeller's AutoModel class
mdl = complete_pdb(env, '../atom_files/1fdx.B99990001.pdb')

# Select all atoms in the first chain
atmsel = Selection(mdl.chains[0])

# Assess with the above Scorer
try:
    score = atmsel.assess(sp)
except ModellerError:
    print("The SOAP-Protein-OD library file is not included with MODELLER.")
    print("Please get it from https://salilab.org/SOAP/.")