schrodinger.protein.nonstandard_residues module

class schrodinger.protein.nonstandard_residues.StructureSource

Bases: str, Enum

Standard = 'standard built-in'
Nonstandard = 'nonstandard built-in'
Custom = 'nonstandard provided'
schrodinger.protein.nonstandard_residues.get_residue_database()
schrodinger.protein.nonstandard_residues.get_default_user_dbfile() str | None

Return the path to the user’s DB file, if one was saved into the user’s .schrodinger directory in release 24-3 or prior. Returns None if file was not saved.

Returns:

Default path to user DB file.

schrodinger.protein.nonstandard_residues.get_enamine_dbfile()
schrodinger.protein.nonstandard_residues.get_nucleotides_collection_dbfile()
schrodinger.protein.nonstandard_residues.get_mutate_to_filename(db_file: str) str

get the path to the “.mutateto” file which lists the nonstandard residues from the database file that are enabled for mutation

Parameters:

db_file – the path to the database file

Returns:

the path to the “.mutateto” file

schrodinger.protein.nonstandard_residues.strip_capping_groups(st, oxt_charge=-1)

Strip any ACE & NMA caps, and add an OXT cap.

schrodinger.protein.nonstandard_residues.add_oxt_cap(st, formal_charge=-1)
schrodinger.protein.nonstandard_residues.find_atom(st, name)

Find the atom with the given PDB name. None is returned if no such atom is present.

schrodinger.protein.nonstandard_residues.flip_isomer(st)

Invert the isomerism of the alpha carbon. So D residue gets converted to L and vice versa.

schrodinger.protein.nonstandard_residues.get_db_amino_acids(source: StructureSource)

Return a list of AminoAcid objects from the specified built-in database file. :param source: the source database type

schrodinger.protein.nonstandard_residues.get_db_nucleotides()

Return a list of AminoAcid objects from the built-in nucleotides database files.

schrodinger.protein.nonstandard_residues.is_excluded_amino_acid(st)
class schrodinger.protein.nonstandard_residues.AminoAcidDatabase(db_file=None)

Bases: _ResidueDatabase

classmethod get_built_in_residues()

Return a list of built-in residues AminoAcid objects from the installation.

classmethod get_saved_db_file()

Return the path to the global/current database, as selected in the GUI. First use the database file that is saved in Maestro’s prefs. If not DB is safed in the preferences, and a custom DB was saved by a prior release (25-3 or earlier), return that path. Otherwise return None.

Returns:

Saved DB filepath to be used or None

Return type:

str or None

class schrodinger.protein.nonstandard_residues.NucleotideDatabase(db_file=None)

Bases: _ResidueDatabase

classmethod get_built_in_residues()
class schrodinger.protein.nonstandard_residues.AminoAcid(st, source=StructureSource.Custom)

Bases: object

Class representing an amino acid (residue) row in the table.

__init__(st, source=StructureSource.Custom)
property name

AminoAcid.name will return the PDB residue name for this AA.

property code

AminoAcid.code will return the 1-letter code for this residue.

property built_in

AminoAcid.built_in will return whether this is a built-in residue.

property standard

AminoAcid.standard will return whether this is a standard residue.

property aligns_with
property description

AminoAcid.description will return the title of the CT.

property locked

AminoAcid.code will return whether the residue is locked from editing.

property natural_analog_similarity: float | None

Get the similarity score for this residue relative to its natural analog.

st_changed()

Must be called every time the structure is modified. Will update the SMILES string and the .isomer property.

property identifier

Return an ID string for this residue, which includes the residue name, isomer, and description.

is_editable()
schrodinger.protein.nonstandard_residues.filter_residues_mutating_to_custom(residues)
Parameters:

residues (list[AminoAcid]) – a list of residues

Returns:

the elements of residues that are non-standard and for which “mutate to” has been enabled

Return type:

list[AminoAcid]

schrodinger.protein.nonstandard_residues.get_db_residues()
Returns:

a list of residues from the non-standard protein residue database

Return type:

list[AminoAcid]

schrodinger.protein.nonstandard_residues.prepare_res_st_for_prime(st)

Create a copy of the specified residue structure that has been prepared for use in Prime.

This includes removing the OXT group (-OH), and setting the title of the CT to the 3-letter residue name.

Parameters:

st (Structure) – a residue structure

Returns:

a copy of st that has been prepared for use in Prime

Return type:

Structure

schrodinger.protein.nonstandard_residues.generate_custom_res_names()

Generate three-letter residue names starting with a letter and ending with a two-digit number from 01 to 99

schrodinger.protein.nonstandard_residues.get_unique_res_name(used_names)

Return a unique residue name, one that doesn’t exist in the input list.

schrodinger.protein.nonstandard_residues.validate_alpha_aa(st: Structure) None

Validate that a structure is an alpha amino acid. Requires that the atom names be assigned.

Raises:

ValueError – if the structure has any unexpected bonds for an alpha amino acid