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¶
- Loads the input PyMOL session
- Calculates per-atom solvent-accessible surface area using PyMOL's
get_areawithdot_solvent=1 - Filters atoms with exposed surface area above a configurable cutoff (default 15.0 A^2)
- Creates PyMOL selections for exposed residues (
er_ca) and non-exposed residues (ner_ca) - Stores visual scenes at different zoom levels
- Saves residue ID lists to
surface_residue_records/directory - 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¶
- Loads the input PyMOL session
- Processes ligand and cofactor residue name strings
- Creates three pocket selections:
- Hetatm pocket: All heteroatoms within
ligand_radiusof the protein - Substrate pocket: Polymer protein residues within
ligand_radiusof the specified ligand - Design shell: The substrate pocket (optionally excluding cofactor pocket)
- Optionally creates a cofactor pocket selection if a cofactor is specified
- Saves residue ID lists to the
save_dirdirectory for each selection - 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:
- Elements joined by underscores.
- Descriptive text with residue name listed and prefixed with 'r.'.