schrodinger.application.desmond.fep_edge_data module

class schrodinger.application.desmond.fep_edge_data.FEPEdgeData(complex_sea, solvent_sea, pv_st=None, atom_mapping=None, perturbation_type='small_molecule')

Bases: object

FEPEdgeData contains all the data related to an FEP perturbation. This includes both solvent and complex legs of the simulations as well as analysis results produced by SID.

cpx_charge
cpx_charge_correction
cpx_delta_g
Returns:dG and its standard deviation
Return type:float, float
cpx_delta_g_forward
cpx_delta_g_forward_analytical_std
cpx_delta_g_forward_bootstrap_std
cpx_delta_g_forward_df_per_replica
cpx_delta_g_forward_dg
cpx_delta_g_forward_err
cpx_delta_g_reverse
cpx_delta_g_reverse_err
cpx_delta_g_sliding
cpx_delta_g_sliding_err
cpx_end_time_ns
cpx_ensemble
cpx_ff
cpx_rest_exchanges
cpx_sid_lp_results
cpx_sid_number_of_frames
cpx_sid_pl_results
cpx_sid_protein_residues

A list of protein residues that interact with both ligand1 and ligand2 throughout the simulation :rtype: str :return: a list of protein tags that interact with both ligand1 and

ligand2
cpx_sid_snapshot_times_ps
cpx_sid_snashot_times_ps
cpx_sid_trajectory_interval_ns
cpx_sim_time

Values returned in Ns (nanoseconds)

cpx_start_time_ns
cpx_temperature
cpx_timestep_interval
cpx_timestep_list
cpx_total_atoms
cpx_total_replicas
cpx_total_waters
delta_delta_g
fullsystem_ct
get_minimal_fragments_with_mutation()

Generates two structures of minimal fragments that contain the mutation. This is so we can annotate the mutations and make them searchable. :return: returns tso structures of fragments that contain the mutation. :rtype : (schrodinger.structure, schrodinger.structure)

static get_smiles(st)

rtype: str return: Generate SMILES from a given ligand structure.

jobname
leg1_name
leg2_name
ligand1_atomic_mass
ligand1_charge
ligand1_cpx_asl
ligand1_cpx_sid_lighb(stats=True)
ligand1_cpx_sid_molsa(stats=True)
ligand1_cpx_sid_psa(stats=True)
ligand1_cpx_sid_rb_strain(stats=True)
ligand1_cpx_sid_rgyr(stats=True)
ligand1_cpx_sid_rmsd(stats=True)
ligand1_cpx_sid_sasa(stats=True)
ligand1_cpx_sid_waters(stats=True)
ligand1_fragments(offset_by_receptor_natoms=True)
ligand1_hash
ligand1_mol_formula
ligand1_name
ligand1_pdb_name
ligand1_rot_bonds
ligand1_smiles
ligand1_sol_sid_lighb(stats=True)
ligand1_sol_sid_molsa(stats=True)
ligand1_sol_sid_psa(stats=True)
ligand1_sol_sid_rb_strain(stats=True)
ligand1_sol_sid_rgyr(stats=True)
ligand1_sol_sid_rmsd(stats=True)
ligand1_sol_sid_sasa(stats=True)
ligand1_st

Returns ligand_1 structure

ligand1_total_atoms
ligand1_total_fragments
ligand1_total_heavy
ligand1_total_hot
ligand1_total_rot_bonds
ligand2_atomic_mass
ligand2_charge
ligand2_cpx_asl
ligand2_cpx_sid_lighb(stats=True)
ligand2_cpx_sid_molsa(stats=True)
ligand2_cpx_sid_psa(stats=True)
ligand2_cpx_sid_rb_strain(stats=True)
ligand2_cpx_sid_rgyr(stats=True)
ligand2_cpx_sid_rmsd(stats=True)
ligand2_cpx_sid_sasa(stats=True)
ligand2_cpx_sid_waters(stats=True)
ligand2_fragments(offset_by_receptor_natoms=True)
ligand2_hash
ligand2_mol_formula
ligand2_name
ligand2_pdb_name
ligand2_rot_bonds
ligand2_smiles
ligand2_sol_sid_lighb(stats=True)
ligand2_sol_sid_molsa(stats=True)
ligand2_sol_sid_psa(stats=True)
ligand2_sol_sid_rb_strain(stats=True)
ligand2_sol_sid_rgyr(stats=True)
ligand2_sol_sid_rmsd(stats=True)
ligand2_sol_sid_sasa(stats=True)
ligand2_st

Returns ligand_2 structure

ligand2_total_atoms
ligand2_total_fragments
ligand2_total_heavy
ligand2_total_hot
ligand2_total_rot_bonds
static ligand_name(st)
ligand_torsions
pl_contact_data0

A dictionary containing PL interactions for lambda=0

pl_contact_data1

A dictionary containing PL interactions for lambda=1

pl_interaction_similarity_matrix0

Protein-ligand interactions similarity matrix for lambda=0 sys for all available frames.

pl_interaction_similarity_matrix1

Protein-ligand interactions similarity matrix for lambda=1 sys for all available frames.

static protein_residue(res)

Get data about the specified residue

Parameters:res (schrodinger.structure._Residue) – The residue object to get data from
Returns:A namedtuple containing the molecule number, chain, residue name,

and residue number :rtype: ResData

receptor_b_factor

Returen B factor that is read from the initial structure. If the B factor is not defined return None :rtype: list of B-factors by residues :return: float

receptor_chain_names
receptor_charge
receptor_residue_sequence_list

Return a list of residue objects (ResData) in amino-to-carboxy order. :return: a list of residue objects, ordered N->C (amino to carboxy

tails).
Return type:ResData
receptor_residue_sequence_tags

A residue tag looks like this: A:THR_124 (Chain:resname_resnum) if chain is not defined, use ‘_’ (underscore) :return: a list of residue tags :rtype: residue_tag

receptor_residues_interaction_ligand1

A list of preotein residues that interact just with ligand1 :rtype: list :return: list of protein residue tags

receptor_residues_interaction_ligand2

A list of preotein residues that interact just with ligand2 :rtype: list :return: list of protein residue tags

receptor_sid_rmsd_backbone_lambda0
receptor_sid_rmsd_backbone_lambda1
receptor_sid_rmsd_ligand_lambda0

ligand1 RMSD wrt the protein

receptor_sid_rmsd_ligand_lambda1

ligand2 RMSD wrt the protein

receptor_sid_rmsf_backbone_lambda0
receptor_sid_rmsf_backbone_lambda1
receptor_st

Returns receptor structure

receptor_title
receptor_total_atom
receptor_total_heavy
receptor_total_residues
receptor_total_residues_in_chains
short_hash
sol_charge
sol_charge_correction
sol_delta_g
Returns:dG and its standard deviation
Return type:float, float
sol_delta_g_forward
sol_delta_g_forward_analytical_std
sol_delta_g_forward_bootstrap_std
sol_delta_g_forward_df_per_replica
sol_delta_g_forward_dg
sol_delta_g_forward_err
sol_delta_g_reverse
sol_delta_g_reverse_err
sol_delta_g_sliding
sol_delta_g_sliding_err
sol_end_time_ns
sol_ensemble
sol_ff
sol_rest_exchanges
sol_sid_number_of_frames
sol_sid_snapshot_times_ps
sol_sid_trajectory_interval_ns
sol_sim_time

Values returned in Ns (nanoseconds)

sol_start_time_ns
sol_temperature
sol_timestep_interval
sol_timestep_list
sol_total_atoms
sol_total_replicas
sol_total_waters
sse_limits_lambda0
sse_limits_lambda1
class schrodinger.application.desmond.fep_edge_data.FEPTorsions(ark_sol=None, ark_cpx=None, sol_idx_offset=0, cpx_idx_offset=0)
cpx_result
max_potential_energy
plot(ax, color='gray', for_print=False, pot_tick_pos='right', hist_tick_pos='Bottom')
potential_energy

Returns potential energy that’s offset to zero

sol_result
class schrodinger.application.desmond.fep_edge_data.FEPTorsionsContainer(sol_torsions_sea_list, cpx_torsions_sea_list, sol_idx_offset=0, cpx_idx_offset=0, perturbation_type='small_molecule')

Class that stores torsions for a single ligand. These torsions are from both solvent and complex legs of the simulations, corresponding to a single lambda value.

all_tors
matched_tors
matched_total
tors_total
unmatched_tors
unmatched_total
class schrodinger.application.desmond.fep_edge_data.PRMEdgeData(complex_sea, solvent_sea, pv_st=None, atom_mapping=None, perturbation_type='small_molecule', frag_atom_mapping=None)

Bases: schrodinger.application.desmond.fep_edge_data.FEPEdgeData

PRMEdgeData is an object that stores Protein Residue Mutation related data. And inherits from FEPEdgeData.

ligand1_sol_asl
ligand1_st
ligand2_sol_asl
ligand2_st
ligand_st_mol_formula
ligand_torsions
mut_frag_st
mut_name
mut_residue_sequence_list

Return a list of residue objects (ResData) in amino-to-carboxy order. :return: a list of residue objects, ordered N->C (amino to carboxy

tails).
Return type:ResData
mut_residue_sequence_tags

A residue tag looks like this: A:THR_124 (Chain:resname_resnum) if chain is not defined, use ‘_’ (underscore) :return: a list of residue tags :rtype: residue_tag

mut_st

Returns full structure of a mutated protein

static peptide_name(st)
prm_name
receptor_sid_rmsf_backbone_lambda0
receptor_sid_rmsf_backbone_lambda1
receptor_st
solvent_fullsystem_ct
wt_frag_st
wt_name
wt_residue_sequence_list

Return a list of residue objects (ResData) in amino-to-carboxy order. :return: a list of residue objects, ordered N->C (amino to carboxy

tails).
Return type:ResData
wt_residue_sequence_tags

A residue tag looks like this: A:THR_124 (Chain:resname_resnum) if chain is not defined, use ‘_’ (underscore) :return: a list of residue tags :rtype: residue_tag

wt_st

Returns full structure of a WT protein

class schrodinger.application.desmond.fep_edge_data.ResData

Bases: schrodinger.application.desmond.fep_edge_data.ResData

A class to store the molecule number, chain, name, and number of a residue

fullName()

Return a string of the residue data formatted as chain:resname_resnum

Returns:The formatted residue data
Return type:str
nameNum()

Return the residue name and number formatted as resname_resnum

Returns:The formatted residue data
Return type:str
schrodinger.application.desmond.fep_edge_data.tag_protein(proteinA, proteinB)
This is function was adopted from:
scisol.leadoptmap.protein_fep_mapper.tag_protein

This proceeds in several steps for mutation of protein A -> protein B Loop over all other atoms in the two full length proteins and assign 1:1 atom mapping. For the mutated residue, it might put some wrong numbers in, but it is fine as the correct value will later overwrite them.

:param proteinA : protein A :type proteinA : structure :param proteinB : protein B :type proteinB : structure