Skip to content

Structure

Protein structure analysis tools for surface residue identification and binding pocket detection. These are used by the Prepare tab to define the designable region on a protein target.

SurfaceFinder

Identifies surface-exposed residues on a protein structure using solvent-accessible surface area (SASA) calculations. Wraps and extends the PyMOLwiki findSurfaceResidues algorithm. Used by the Prepare tab to determine which residues are accessible for mutagenesis design.

Workflow

  1. Loads the input PyMOL session
  2. Calculates per-atom solvent-accessible surface area using PyMOL's get_area with dot_solvent=1
  3. Filters atoms with exposed surface area above a configurable cutoff (default 15.0 A^2)
  4. Creates PyMOL selections for exposed residues (er_ca) and non-exposed residues (ner_ca)
  5. Stores visual scenes at different zoom levels
  6. Saves residue ID lists to surface_residue_records/ directory
  7. Saves the prepared session to the configured output path

REvoDesign.structure.SurfaceFinder.SurfaceFinder

Standalone Functions

REvoDesign.structure.SurfaceFinder.findSurfaceAtoms(selection='all', cutoff=2.5, quiet=1)

DESCRIPTION

Finds those atoms on the surface of a protein
that have at least 'cutoff' exposed A**2 surface area.

USAGE

findSurfaceAtoms [ selection, [ cutoff ]]

SEE ALSO

findSurfaceResidues

REvoDesign.structure.SurfaceFinder.findSurfaceResidues(selection='all', cutoff=2.5, doShow=0, quiet=1, return_selection=1)

DESCRIPTION

Finds those residues on the surface of a protein
that have at least 'cutoff' exposed A**2 surface area.

USAGE

findSurfaceResidues [ selection, [ cutoff, [ doShow ]]]

ARGUMENTS

selection = string: object or selection in which to find exposed
residues {default: all}

cutoff = float: cutoff of what is exposed or not {default: 2.5 Ang**2}

RETURNS

(list: (chain, resv ) )
    A Python list of residue numbers corresponding
    to those residues w/more exposure than the cutoff.

PocketSearcher

Detects and characterizes binding pockets around a ligand or cofactor in a protein structure. Creates PyMOL selections representing pocket residues at configurable radii around the ligand. Used by the Prepare tab to define the designable region around the active site.

Workflow

  1. Loads the input PyMOL session
  2. Processes ligand and cofactor residue name strings
  3. Creates three pocket selections:
  4. Hetatm pocket: All heteroatoms within ligand_radius of the protein
  5. Substrate pocket: Polymer protein residues within ligand_radius of the specified ligand
  6. Design shell: The substrate pocket (optionally excluding cofactor pocket)
  7. Optionally creates a cofactor pocket selection if a cofactor is specified
  8. Saves residue ID lists to the save_dir directory for each selection
  9. Saves the prepared session to the configured output path

REvoDesign.structure.PocketSearcher.PocketSearcher

process_multiple_resn(selection) staticmethod

Processes a selection string to generate formatted outputs.

This function takes a string that may contain one or more comma-separated elements. It processes the input and returns two strings: - The first string is a concatenation of the elements separated by underscores. - The second string provides a PyMOL property selection syntax description of the elements.

Parameters: - selection (str): A string containing one or more residue names, possibly separated by commas.

  • Tuple[str, str]: A tuple containing two strings:
    1. Elements joined by underscores.
    2. Descriptive text with residue name listed and prefixed with 'r.'.