schrodinger.application.desmond.process_fep_traj module

schrodinger.application.desmond.process_fep_traj.get_ligands_asl(sid: schrodinger.utils.sea.Map) → Tuple[Union[str, NoneType], Union[str, NoneType]]

Returns the asl of both ligands :param sid: contents of the SID file :type sid: sea.Map

:rtype (str, str)

schrodinger.application.desmond.process_fep_traj.get_protein_asl(sid: schrodinger.utils.sea.Map) → Tuple[Union[str, NoneType], Union[str, NoneType]]

Returns the asl of both proteins (for PRM jobs) :param sid: contents of the SID file :type sid: sea.Map

:rtype (str | None, str | None)

schrodinger.application.desmond.process_fep_traj.representative_frames(sid: schrodinger.utils.sea.Map) → Tuple[Union[int, NoneType], Union[int, NoneType]]

Given an FEP’s SID file, extract the contact data for both endpoints, then for each endpoint, calculate a similarity matrix based on the protein- ligand contacts. After clustering the matrix, return the representative frame number for each endpoint.

Representative frame is the centroid of the largest cluster. :param sid: contents of the SID file :type sid: sea.Map

Return type:(int | None, int | None)
schrodinger.application.desmond.process_fep_traj.generate_reduced_trajectory(cms_fn, trj_dir, out_fn, dew_asl, lambda_val, ref_ct_fname=None, ref_asl=None, protein_fep=False, nwaters=200)

Generate a ‘reduced’ trajectory, where the ligands are solvated by 200 water molecules and the system is aligned on the first frame.

Parameters:
  • cms_fn – filename of the cms file
  • trj_dir – dirname of the trajectory directory
  • out_fn – the basename of output cms/trj
  • dew_asl – asl of the ligand around which the waters will be kept
  • lambda_val – lambda endpont – 0 or 1
  • ref_ct_fname – Structure file containing reference coordinates
  • ref_asl – system to be aligned on provided asl
  • protein_fep – if the FEP calculation was a protein calculation

@nwaters: number of water molecules to retain

Returns:a list of generated files/directories to copy over to the analysis stage dir.
Return type:list of str or an empty list
schrodinger.application.desmond.process_fep_traj.extract_representative_structure(frame_id: Union[str, NoneType], lambda_name: str) → str

Given a representative frame number, extract that frame from the trajectory, save this into a maestro file, and return the filename. We also cleanup some properties desmond-specific properties from the mae file.

Returns:filename of the maestro
schrodinger.application.desmond.process_fep_traj.post_process_trj(jobname, n_win=12, ref_ct_fname=None)

For each endpoint trajectory – generate a reduced trajectory using ‘parch’ and then extracts the representative structure from this trajectory. :param jobname: name of the production/labda_hopping stage :type jobname: str

Parameters:
  • n_win (int) – number of lambda windows used in FEP
  • ref_ct_fname (str) – filename of the reference structure for alignment
Returns:

a list with filenames that should be copied back to analysis stage directory

Return type:

list of str