Package schrodinger :: Package application :: Package desmond :: Module extend_fep
[hide private]
[frames] | no frames]

Module extend_fep

Notes on this modules: If I submit a job to extend edge A this will prepare and run a "subjob" which carries out extending the lambda stage and then a "master" job which will generate a new <jobname>_out_pv.mae, <jobname>_out.pkl, and <jobname>_multisim.log. To prevent out of sync data the presence of <jobname>_multisim.log is treated as a lock. When a new job is launched this file will be moved to <jobname>_multisim.log.N where N is a monotonically increasing integer value. When the job successfully finishes it will copy back <jobname>_multisim.log. The module will not permit any other jobs to be launched until this file is copied back.

Copyright Schrodinger, LLC. All rights reserved.

Classes [hide private]
  Baseunit
This contains info common to all work units, they should subclass this unit to get jobname, master_msj, and master_checkpoint_fn, and perturbation_dir
  Workunit
This subclasses Baseunit and adds attributes specific to the workunit being created.
  Workflow
Here we assume the user launches the workflow from the top level directory of a mapper job.
  RestartWorkflow
This class will create a workflow for running restart jobs
  ExtensionWorkflow
Functions [hide private]
list
prep_subjob_cmd(wu, restart=False)
This is used to prep for subjobs and will return the command to launch it.
list
prep_master_cmd(wu, eval_cmd=True)
Prepares the master job command return list of commands
 
get_new_stage_fn(fn, offset=1)
This will parse the filename for the perturbation stage and increment the stage number by the offset.
 
bkup_file(fn, move=True)
This backsup the original file postfixing "0" if first extension "1" for second "2" for third etc.
 
show_checkpoint_info(checkpoint_name)
Will display info in the checkpoint file
False
show_hex_id_title_id_map(pkl_name)
Will display the hex_id title_id map for a pkl @return : True if it successfully read the pkl
list of lists
get_edge_list(pkl_name)
This will get the edges in a pkl file and return a list of lists which contain edge A edge B hex A hex B
 
make_tarfile(ofn, source_dir)
Simple wrapper for generating tarfile
 
title_id_to_hex_id(title)
This will allow a user to use the ligand titles instead of hex to interface with the script
Variables [hide private]
  logger = log.get_output_logger("extend_fep.py")
  DESMOND_DIR = '/nfs/builds/objects/OB/2014-2/Linux-x86_64/buil...
  BACKEND_SCRIPT = '/nfs/builds/objects/OB/2014-2/Linux-x86_64/b...
  SCHRODINGER = '/nfs/builds/objects/OB/2014-2/Linux-x86_64/buil...
  MULTISIM_EXE = '/nfs/builds/objects/OB/2014-2/Linux-x86_64/bui...
  LAMBDA_HOPPING_STAGE = 'lambda_hopping'
  __package__ = 'schrodinger.application.desmond'
Function Details [hide private]

prep_subjob_cmd(wu, restart=False)

 

This is used to prep for subjobs and will return the command to launch it.

Parameters:
  • wu (Workunit) - work unit
Returns: list
list of commands for launching

prep_master_cmd(wu, eval_cmd=True)

 

Prepares the master job command return list of commands

Parameters:
  • wu (Workunit) - work unit
Returns: list
list of commands for launching

get_new_stage_fn(fn, offset=1)

 

This will parse the filename for the perturbation stage and increment the stage number by the offset. e.g. CB7_GOOD_RUNME_537f66b_6c3ec31_complex_9-out.tgz with offset = 1 will return CB7_GOOD_RUNME_537f66b_6c3ec31_complex_10-out.tgz

Parameters:
  • fn (string) - File name to modify
  • offset (int) - offset to be added to the stage number

bkup_file(fn, move=True)

 

This backsup the original file postfixing "0" if first extension "1" for second "2" for third etc. We will move the file by default, otherwise we can just copy if move=false keeping the original which should be over written when files get copied back.

show_checkpoint_info(checkpoint_name)

 

Will display info in the checkpoint file

Parameters:
  • checkpoint_name (string) - The checkpoint filename

get_edge_list(pkl_name)

 

This will get the edges in a pkl file and return a list of lists which contain edge A edge B hex A hex B

Parameters:
  • pkl_name (string) - Name of pkl file
Returns: list of lists
list of lists containing edgeA edgeB hexA hexB

title_id_to_hex_id(title)

 

This will allow a user to use the ligand titles instead of hex to interface with the script

Parameters:
  • title (string) - The title of a ligand
Returns:
The first 7 hex characters

Variables Details [hide private]

DESMOND_DIR

Value:
'/nfs/builds/objects/OB/2014-2/Linux-x86_64/build16/mmshare-v2.6/lib/L\
inux-x86_64/lib/python2.7/site-packages/schrodinger/application/desmon\
d'

BACKEND_SCRIPT

Value:
'/nfs/builds/objects/OB/2014-2/Linux-x86_64/build16/mmshare-v2.6/lib/L\
inux-x86_64/lib/python2.7/site-packages/schrodinger/application/desmon\
d/extend_fep_backend.py'

SCHRODINGER

Value:
'/nfs/builds/objects/OB/2014-2/Linux-x86_64/build16'

MULTISIM_EXE

Value:
'/nfs/builds/objects/OB/2014-2/Linux-x86_64/build16/utilities/multisim\
'