This script will generate data for a series of analyses performed on 
  set of Desmond trajectories. It needs to be provided with the output cms 
  file, an input st2 (ark keyword) file, and an output filename.
  This script has been rewritten mostly from scratch for the purpose of 
  processing ark keyword files, and a more readable format.
  Copyright Schrodinger, LLC. All rights reserved.
    |  | 
        
          | get_st_from_file(filename) Read in a Structure file
 |  |  | 
    |  | 
        
          | read_trj_idx_file(trjfn) Obtain the trajectory directory from the trj idx file
 |  |  | 
    |  | 
        
          | write_log(msg) Write to log file
 |  |  | 
    |  | 
        
          | write_error(msg) Write an error message, cleanup, and exit
 |  |  | 
    |  |  | 
    |  | 
        
          | assemble_interaction_energy_results(energy_type,
        asl1,
        asl2,
        frame_results) |  |  | 
    |  | 
        
          | assemble_bulk_results(calc_type,
        frame_results,
        temperature=None,
        nmol=None) |  |  | 
    |  | 
        
          | assemble_energy_results(energy_type,
        component_type,
        frame_results) |  |  | 
    |  | 
        
          | unique(seq,
        idfun=None) An funtion to return unique element of a sequence with order 
      preserved.
 |  |  | 
    |  | 
        
          | get_temp_from_cfg(cfgfn) extract target simulation temperature from the cfg file
 |  |  | 
    |  | 
        
          | get_old2new(st,
        prop= 'i_m_original_index')get dictionary for atom-level property 'prop' as a key, and return 
      it's new atom index (aid)
 |  |  | 
    |  | 
        
          | get_rb_potential(cmsstr,
        kw) given a full system, and a torsion of interest (usually applies for a
      ligand-like molecule).
 |  |  | 
    |  | 
        
          | get_rb_torsions_potential(cmsstr,
        kw) |  |  | 
    |  | 
        
          | get_forcefield_type(cmsfn) |  |  | 
    |  | 
        
          | main(cmsfn,
        st2fn,
        outfn,
        trjfn=None,
        cfgfn=None,
        start=0,
        stop=-1,
        step=1) |  |  | 
    |  | __doc__ = """analyze_trajectories.py -- analyze a set of Desmo... | 
    |  | _version = '$Revision: 0.0 $' | 
    |  | logger = log.get_output_logger("analyze_trajectories") | 
    |  | ffld_exec_dir = '/scr/buildbot/savedbuilds/NB/2016-3/build-133... | 
    |  | sep = '/' | 
    |  | ffld_inst_dir = '/scr/buildbot/savedbuilds/NB/2016-3/build-133... | 
    |  | ffld_python_dir = '/scr/buildbot/savedbuilds/NB/2016-3/build-1... | 
    |  | default_cfg_fn = Nonehash(x)
 | 
    |  | default_trj_fn = Nonehash(x)
 | 
    |  | _energy_attr_dict = {'ANGLE': 'angle', 'BOND': 'stretch', 'COU... | 
    |  | _component_list = ['SELF', 'OTHER', 'SOLUTE', 'MEMBRANE', 'SOL... | 
    |  | __package__ = 'schrodinger.trajectory' |