Package schrodinger :: Package application :: Package mcpro :: Module perturbations :: Class Perturbations
[hide private]
[frames] | no frames]

Class Perturbations

Class to read, create, and manipulate the graph of perturbations from which user-specified list of fragments will be converted to a list of FEPs to be run

Instance Methods [hide private]
 
__init__(self, verticies, pert_db_file=None, pert_db_type='ring')
 
get_gui_table(self)
Method to return two lists containing the FEPs to be performed text_curr_pert contains 'A -> B' once for each sub-perturbation needed text_path_pert contains the titles for each sub-perturbation
 
analyze_paths(self, reference=None)
Method to get shortest paths based on the lowest scoring minimum spanning graph.
 
grab_reorder_obj(self, start, end)
return PertReorder objects for start and end structures
 
get_pert_unique_feps(self)
return a directed list of all unique perturbations to be performed
 
modify_ct(self, startCt, endCt)
Method to set bond lengths/angles/torsions for dummy atoms found in start/end Cts
 
generate_reordered_ct(self, mode, ct, reorder_obj)
Method to convert input ct for use in Model System creation for FEP mode = 1 convert ct for use as starting struture mode = 2 convert ct for use as ending structure
 
get_pert_data(self)
 
get_pert_reference(self)
 
get_best_vertex(self, verticies, dist)
Method to return lowest weighted connection to vertex G found in verticies
 
dijkstra(self, G, start, end=None)
Implementation of Dijkstra's algorithm to find the shortest path between start and end verticies.
 
shortestPath(self, G, start, end)
Find a single shortest path from the given start vertex to the given end vertex.
 
get_weight(self, verticies, pertid)
Method to identify if current pertid fragments are found in the vertex list and return appropriate scale factors
 
create_adjacent_list(self, perturb_ids, verticies)
Method takes the complete list of perturbation IDs and...
 
get_directed_pert(self, pertid)
Method that returns the directed perturbation path taken from the perturbation database for an A->B transformation
 
get_diff_pert(self, path, found_pert, adj_list)
Method looks for perturbations found in path and not found in array of pertub_ids in found_pert and sums their weights
 
get_text_path(self, path, fromLig, toLig)
Method converts a path to the text labels suitable for output in the GUI table
Method Details [hide private]

analyze_paths(self, reference=None)

 

Method to get shortest paths based on the lowest scoring minimum spanning graph. Central vertex against which all ddGs will be computed may be found automatically or selecte by the user. Reference vertex *must* be a member of the subgraph

generate_reordered_ct(self, mode, ct, reorder_obj)

 

Method to convert input ct for use in Model System creation for FEP mode = 1 convert ct for use as starting struture mode = 2 convert ct for use as ending structure

Take input structure, add any necessary dummy atoms, create new reorder list, reorder molecule.

dijkstra(self, G, start, end=None)

 
Implementation of Dijkstra's algorithm to find the shortest
path between start and end verticies.  Note G is a hash of
the form, where the verticies (A, B, C) are connected by
edges with weights of 1 or 10.
   G = { 'A':{'B':1, 'C':10},
         'B':{'C':10, 'A':1},
         'C':{'A':10, 'B':1}}
All weights must be positive and symmetric, i.e. A-B weight
must equal B-A weight.  

shortestPath(self, G, start, end)

 

Find a single shortest path from the given start vertex to the given end vertex. The input has the same conventions as dijkstra(). The output is a list of the vertices in order along the shortest path.

create_adjacent_list(self, perturb_ids, verticies)

 
Method takes the complete list of perturbation IDs and
the list of fragments currently of interest and creates the 
symmetric reweighted adjacent list in the form 
   G = { 'A':{'B':1, 'C':10},
         'B':{'C':10, 'A':1},
         'C':{'A':10, 'B':1}}