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

Module fepana

Tools for various FEP-related analyses.

Copyright Schrodinger, LLC. All rights reserved.

Classes [hide private]
  TimeSanityException
  DeltaEnergy
  FreeEnergyContrib
Functions [hide private]
 
_float_range(start, stop, step, closed=True)
Return evenly spaced float values from start to stop.
 
get_energy_table(fname, term_list)
columns: (0, 0) (0, 1) (1, 1) ...
 
get_global_quantity(fname, quantity_list)
 
get_mean(ene, index=-1, data_structure='table')
Returns (mean, std_error, std_dev,).
 
parse_eneseq(eneseq_fname, column)
Parses a eneseq file and returns a list of number lists.
 
init_bennett(dir, n_win=12, temperature=300.0, begin_time=100.0, end_time=-1.0, random_seed=2111839, result_file=None, nresamples=0)
 
run_bennett(bar, begin_time=100.0, end_time=-1.0, nresamples=None)
 
run_bennett_orig(dir, n_win, temperature=300.0, begin_time=100.0, end_time=-1.0, random_seed=2111839, result_fname='result', description='Desmond bennett analysis')
 
are_times_insane(begin_time, end_time)
Are the given begin and end times reasonable?
 
get_delta_time(begin_time, end_time, delta_time, window=0)
 
calc_freeenergy_time_function(dir, last_time, n_win, temperature=300.0, begin_time=100.0, end_time=-1.0, delta_time=30.0, random_seed=2111839)
Calculates the free energy as a function of time.
 
calc_freeenergy_rtime_function(dir, last_time, n_win, temperature=300.0, begin_time=100.0, end_time=-1.0, delta_time=30.0, random_seed=2111839)
Calculates the free energy as a function of reversed time.
 
calc_freeenergy_stime_function(dir, last_time, n_win, temperature=300.0, begin_time=100.0, end_time=-1.0, delta_time=30.0, window=500.0, random_seed=2111839)
Calculates the free energy as a function of time with sliding window.
 
cleanup_time(begin_time, end_time, last_time, delta_time, window=0)
 
calc_time_curve(dir, n_win, temperature, begin_time, end_time, random_seed, time_ranges)
Calculates the free energy as a function of time_ranges
 
read_dE_file(dE_fname, time_range=[0.0, inf])
 
calc_work_prob_distr(energy, energy_range=None)
 
calc_forward_reversed_work_overlap(dE0, dE1)
 
calc_lambda_window_overlap(dE_fname0, dE_fname1, time_range)
 
plot_lambda_window_overlap(dE_fname0, dE_fname1, out_fname=None, legend=None, time_range=[0.0, inf], filename=None, reporter=None)
 
calc_lambda_sim_matrix(num_lambda, *gibbs_dname, **kw)
 
_get_pathway_helper(pathway, mat)
 
get_pathway(mat)
 
print_pathway(pathway)
 
calc_convergence_rate(first_length, last_length, length_incr, traj_start, traj_end, n_win, dir='.', temperature=300.0, random_seed=2111839)
 
calc_contrib(fname, cfg_fname)
 
correct_restr(egout0, egout1, fname_out)
 
long_range_dispersion_energy(r_cut, c6, rho)
r_cut: cutoff radius (Angstrom).
 
get_field_from_log(field, fname)
 
get_number_density_from_cms(model)
Returns a tuple of elements as follows: 1.
 
get_average_box_volume(fname)
'fname' must be a *_simbox.dat file.
 
calc_long_range_dispersion_energy(model, atom_list, log_fname=None, simbox_fname=None, cfg_fname=None, r_cut=-1, average_coefficient=-1)
 
calc_free_energy_for_abfe_cross_link(restr, temperature=300.0)
Calculates correction for the cross link restraints in absolute binding free energy simulations.
 
calc_free_energy_for_abfe_cross_link_xu(restr, temperature=300.0)
Calculates correction for the cross link restraints in absolute binding free energy simulations.
 
violate_midpoint(model, atom, r_clone2)
`atom' is a list of atom indices and Nones.
 
get_abfep_cross_link(model, ligand, r_clone, traj_fname, first_frame=0, max_frame=256)
the model should be created by the topo.read_cms function `ligand' is a list of ligand atoms' indices.
Variables [hide private]
  model = cms.Cms("wu20090927T224119_2-out.cms")
  lig_atom = model.select_atom("atom.num 902-919")
  r_clone = 5.0
  model_fname = "wu20090927T224119_2-out.cms"
  traj_fname = "wu20090927T224119_2_trj"
  stretch = [cms.Restrain([1, 2,], 5.0, 5.1),]
  angle = [cms.Restrain([1, 2, 3], 5.0, 67.5), cms.Restrain([1, ...
  torsion = [cms.Restrain([1, 2, 3, 4], 5.0,-113.0), cms.Restrai...
  table = get_global_quantity("test_enegrp.dat", ["V"])
  mean = get_mean(table ["V"], data_structure= "array")
  mat = calc_lambda_sim_matrix(4, "cis", "trans", mat_fname= "ma...
  data = calc_freeenergy_stime_function(".", 12)
  cms_fname = sys.argv [1]
  trj_dir = sys.argv [2]
  asl = "all"
  __package__ = 'schrodinger.application.desmond'
Function Details [hide private]

_float_range(start, stop, step, closed=True)

 

Return evenly spaced float values from start to stop.

Parameters:
  • start - First value in the range
  • stop - Last value in the range if closed, first value outside of the range if not closed.
  • step - The size of the step between elements of the result range.
  • closed - Should stop be included in the range?

get_energy_table(fname, term_list)

 

columns: (0, 0) (0, 1) (1, 1) ... "total" rows : frame1, frame2, frame3, ...

Separate table for each term. table[row][col]

parse_eneseq(eneseq_fname, column)

 

Parses a eneseq file and returns a list of number lists. Each element of the returned list is a list, where the first element is the time, followed by numbers from the selected columns.

Parameters:
  • eneseq_fname - eneseq file name.
  • column - a list of column indices. Data of these columns will be returned.

_get_pathway_helper(pathway, mat)

 
Parameters:
  • pathway - a list of tuples. Each tuple consists of three elements: structure name, free energy, and probability.

long_range_dispersion_energy(r_cut, c6, rho)

 

r_cut: cutoff radius (Angstrom). c6: average dispersion coefficient (kcal/mol * Angstrom**6). rho: number density (1/ Angstrom**3)

get_number_density_from_cms(model)

 

Returns a tuple of elements as follows:
1. the number density in the unit of 1 / Angstrom**3
2. number of atoms in the system
3. volume of the system

calc_free_energy_for_abfe_cross_link(restr, temperature=300.0)

 

Calculates correction for the cross link restraints in absolute binding free energy simulations.
Reference: Boresch, Stefan, Franz Tettinger, Martin Leitgeb, and Martin Karplus.
           Absolute Binding Free Energies:  A Quantitative Approach for Their Calculation.
           The Journal of Physical Chemistry B 107, no. 35 (September 2003): 9535-9551.
           http://pubs.acs.org/doi/abs/10.1021/jp0217839.
Note: We could not reproduce the numbers on the 5th row of Table 5 in the reference.

calc_free_energy_for_abfe_cross_link_xu(restr, temperature=300.0)

 

Calculates correction for the cross link restraints in absolute binding free energy simulations.

We use Huangfeng Xu's formula. The partition function of the restraint terms is this:

Z = \int dr r^2 exp( -eta kr (r - r0)^2 )
    \Prod_{i = 1, 2   } \int_0^\pi d        heta_i \sin     heta_i exp( -eta ka (  heta_i -        heta_{i0})^2 )
    \Prod_{i = 1, 2, 3} \int_{\psi_{i0} - \pi}^{\psi_{i0} + \pi} d\psi_i exp( -eta kd (\psi_i - \psi_{i0})^2 )
The integration over theta is approximated by integration over {-\inf, \inf}.


Variables Details [hide private]

angle

Value:
[cms.Restrain([1, 2, 3], 5.0, 67.5), cms.Restrain([1, 2, 3], 5.0, 84.5\
),]

torsion

Value:
[cms.Restrain([1, 2, 3, 4], 5.0,-113.0), cms.Restrain([1, 2, 3, 4], 5.\
0,-82.0), cms.Restrain([1, 2, 3, 4], 5.0,-169.0),]

mat

Value:
calc_lambda_sim_matrix(4, "cis", "trans", mat_fname= "matrix")