## gbsa.Scorer() — create a new scorer to evaluate GB/SA energies

`Scorer(library='$LIB/solv.lib', solvation_model=1, cutoff=8.0)`

> This creates a new class to be used for scoring models with the GB/SA implicit solvation model. To activate scoring, you must add an instance of this class to the relevant energy_data.energy_terms list, in the same way as for user-defined energy terms (see Section 7.1.3).

> library is the name of a library file containing radii and solvation parameters for all atom types. solvation_model selects which column of solvation parameters to use from this file. cutoff sets the distance in angstroms used to calculate the Born radii; the calculation can be made faster at the expense of accuracy by using a smaller cutoff. Note that GB/SA uses the same nonbonded list as the other dynamic terms, so cutoff should be chosen to be no greater than energy_data.contact_shell. The electrostatic component of GB/SA is also switched using the value of energy_data.coulomb_switch.

Example: examples/scoring/gbsa.py

      # Example for: gbsa.scorer()
      # This will calculate the GB/SA implicit solvation energy for a model.

      from modeller import *
      from modeller import gbsa
      from modeller.scripts import complete_pdb

      env = environ()
      env.io.atom_files_directory = ['../atom_files']
      env.libs.topology.read(file='$(LIB)/top_heav.lib')
      env.libs.parameters.read(file='$(LIB)/par.lib')

      # Calculate just the GB/SA score; turn off soft-sphere
      env.edat.dynamic_sphere = False
      env.edat.energy_terms.append(gbsa.Scorer())
      # GB/SA falls off slowly with distance, so a larger cutoff than the
      # default (4.0) is recommended
      env.edat.contact_shell = 8.0

      mdl = complete_pdb(env, "1fas")

      # Select all atoms
      atmsel = selection(mdl)

      # Calculate the energy
      atmsel.energy()