schrodinger.application.glide.poseviewconvert module¶
Functions for creating or converting pose viewer files.
The module can convert a ‘pose viewer’ type file into a series of complexes, and convert complexes into ligand-only, receptor-only, or pose viewer files.
The script pv_convert.py is the preferred command-line interface to this module.
Copyright Schrodinger, LLC. All rights reserved.
- schrodinger.application.glide.poseviewconvert.is_pv_file(file_name, max_ligand_atoms=300, test_all=True, test_recep_atom_count=True, test_ligand_atom_count=True, test_recep_gscore=True, test_ligand_gscore=True)¶
Returns a True if the file appears to be a pose view format file. The tests are simple, and may not be conclusive. It is assumed that the trivial test for a ‘pv.mae’ extension has already been performed.
Specific tests can be skipped by setting the test_recep_atom_count, test_recep_gscore, test_ligand_atom_count, and test_ligand_gscore booleans.
- Parameters
max_ligand_atoms (int) – The maximum size in atoms of a putative ligand, and minimum size of the receptor. The default is the package constant schrodinger.application.glide.MAX_LIGAND_ATOMS.
test_all (bool) – Perform all tests, regardless of other test_* booleans. Default = True.
test_recep_atom_count (bool) – Receptor must have more than max_ligand_atoms. Default = True.
test_ligand_atom_count (bool) – Ligand must have less than or equal to max_ligand_atoms. Default = True.
test_recep_gscore (bool) – Receptor must not have ‘r_i_glide_gscore’ property. Default = True.
test_ligand_gscore (bool) – Ligand must have ‘r_i_glide_gscore’ property. Default = True.
- schrodinger.application.glide.poseviewconvert.get_pv_file_merged_structures(filename: str, ligand_last: bool = True, copy_props: bool = True, radius: float = None, title_sep: str = ':') Generator[schrodinger.structure._structure.Structure, None, None] ¶
Yield merged receptor-ligand complexes from a pose viewer format file.
- Parameters
filename – Name of the pv format file.
ligand_last – Create complex so ligand is the last molecule if True, the first if False.
copy_props – If it is True, properties from the ligand and receptor will be copied to the merged complex. When a property is present in both the ligand and receptor, if
ligand_last
is True, the value from the receptor takes precedence, otherwise the value from the ligand takes precedence.radius – Include only receptor residues within this cutoff, in angstroms, from the ligand.
title_sep – Separator of the receptor and ligand titles in the new title for the merged complex <rec_title><title_sep><lig_title>. Default is “:”.
- Raises
ValueError – If file is not in a valid poseviewer or ensemble poseviewer format, or if file contains multiple receptor structures and any of the ligand structure does not have the ‘i_epv_best_receptor’ property or the property value do not match the receptor structure.
- class schrodinger.application.glide.poseviewconvert.Complex(st, ligand_asl=None, ligand_title_source=None, ligand_properties=None)¶
Bases:
object
A helper class to split a receptor-ligand complex structure into ligand, and receptor structure components, and write the structure components to new files.
API Examples:
# Write a pv file comp = Complex(st) comp.writePv('output_pv.mae') # Write a ligand file, transfer all the complex's properties comp = Complex( st ligand_properties = st.property.keys() ) comp.writeLigand('ligand-only.mae')
The receptor will have the same properties as the input complex. By default, the ligand takes the title of the complex but has no other properties. The ligand title can be selected from one of the complex’s properties with ligand_title_source, and a list of properties to transfer to the ligand can be specified with ligand_properties.
- Variables
complex (structure.Structure) – The original receptor-ligand complex.
receptor (structure.Structure) – The receptor-only (non-ligand).
ligand (structure.Structure) – The ligand-only structure.Structure.
ligand_indexes (list) – List of atom numbers for the ligand in the complex, the match to the ASL evaluation.
ligand_title_source (string) – A single m2io dataname of an entry level property in the complex structure to use as the title for the ligand. Default is ‘s_m_title’.
ligand_properties (list) – A list of m2io datanames of entry level properties to copy from the complex to the ligand structure.
- Raises
RuntimeError – If the structure can’t be split.
- __init__(st, ligand_asl=None, ligand_title_source=None, ligand_properties=None)¶
- Parameters
st (structure.Structure) – Structure instance of the receptor-ligand complex.
ligand_asl (str) – Optional Atom Selection Language expression for the ligand molecule, Default is None, which will select the last molecule in the complex (mol.n #).
ligand_title_source (str) – An m2io entry data name of the complex property to use as the ligand’s title. Default is ‘s_m_title’.
ligand_properties (list of str) – List of m2io entry level data names in the complex to be transfered to the ligand entry.
- writePv(file_name)¶
Writes receptor and ligand to disk, in pv file format.
- writeLigand(file_name)¶
Writes the ligand structure to the passed filename, clobbering as needed.
- appendLigand(file_name)¶
Appends the ligand structure to the passed filename.
- writeReceptor(file_name)¶
Writes the receptor structure to the passed filename, clobbering as needed.
- appendReceptor(file_name)¶
Appends the receptor structure to the passed filename.