diffPotTools
index
diffPotTools.py


 
tools to create a potential term restraining the shape of protein using
components of rotation diffusion tensor. Together with facilities to 
fit NMR relaxation data 

 
Classes
       
FitResults
realx_datum
v_e

 
class FitResults
   
 

 
  Methods defined here:
__init__(self)

 

 
class realx_datum
   
 

 
  Methods defined here:
__init__(self)

 

 
class v_e
   
 

 
  Methods defined here:
__init__(self)

 

 
Functions
       
Target_relax_function(in_param, ifp)

 
addTmPAtoms(tpOatom=None, tpXatom=None, tpYatom=None, resid=None, segid=None, pot=None, mass=1000)

 
create psf and initial coordinates for pseudo atoms used for optimizing
correlation times tau_c, tau_t and tau_i
analyze(potList)

 
perform analysis of DiffPot terms and return nicely formatted summary
calc_relax_data(Fr=None, InG=None, res_sel=None)

 
# Subrutine which simulates NMR relaxation data                                                #
# INPUT:                                                                                        #
# Fr is spectrometer frequency in GHz                                                   #
# InG is a vector of diffusion tensor parameters which will be used                     #
#     for relaxation rates calculation                                                  #
#     InG=[Dx, Dy, Dz, alpha, betha, gamma]                                             #
#     for axial mode InG=[Dxy, Dz, betha, alpha]                                        #
#     for iso mode   InG-[Dxyz]                                                         #
#     Dx, Dy, Dz are in inverse nanoseconds, alpha, betha, and gamma are in degrees#
#     InG is in the same format as results.Fit_vector                                   #
# res_sel is selection of residues in a format 'resid N:M' where integers N and M       #
#     specify the range of residues used to simulate relaxation data                    #
# RETURN:                                                                                       #
#     simulated_data list of realx_datum() structures containing R1, R2, and R2/R1      #
#     for details see declaration of FitResults() class below.                  #
create_DiffPot(name, sel='known and (not PSEUDO)', temperature=293, addAtoms=False, mass=1000)

 
estimate_Dxyz(in_data, omega_1)

 
fill_in_relax_datum(datum, datum_line, pattern)

 
# service subroutine which distributes 
# the list of given data into given 
# rerealx_datum structure according given pattern 
fill_in_results(results, in_Fit_res_list, mode, dlina, dT_e)

 
fitRelaxData(data_in=None, Fr=None, InG=None, mode='full', inc_sel='known', Err_calc=1)

 
# Function which fits NMR NH relaxation data using Nelder-Mead downhill (amoeba) simplex method                                        #
# INPUT:                                                                                                                                        #
# data_in is a list of realx_datum structures which is generated by readInRelaxData                                             #
# Fr is spectrometr frequency in MHz                                                                                                    #
# mode specifies the model for relaxation data fitting                                                                                  #
#     the available options for mode are:                                                                                               #
#     full  - is fully anisotropic tensor                                                                                               #
#     axial - is axially symmetric tensor                                                                                               #
#     iso   - is spherically symmetric tensor                                                                                           #
# InG is optional list of initial guess parameters for fitting routine                                                          #
#     which shoud be compatiable with mode settings:                                                                                    #
#     for full mode  InG=[Dx, Dy, Dz, alpha, betha, gamma]                                                                              #
#     for axial mode InG=[Dxy, Dz, betha, alpha]                                                                                        #
#     for iso mode   InG-[Dxyz]                                                                                                         #
#     Dx, Dy, Dz are in inverse nanoseconds, alpha, betha, and gamma are in degrees                                             #
#     if InG is not given then it is estimated for the loaded protein coordinates                                                       #
#     using DiffPot facilities                                                                                                          #
# inc_sel specifies the residues which will which will be included into the fit                                                 #
#     when relaxation data are available in data_in                                                                                     #
# Err_calc is number of bootstrap cycles for error calculations                                                                         #
#     default settings Err_calc=1 which means that only the original data is used: no synthetic data sets prepared              #
#     and no confidence intervals calculated.                                                                                           #
#     Bootstrap error estimations is lengthy. For robust estimation of confidence intervals the number                          #
#     of bootstrap cycles, Err_calc, should be equal to the number of R2/R1 relaxation data points in the data set              # 
#     used for fitting, len(in_relax).                                                                                                  #
#     However to get an estimate of the order of magnitude for confidence intervals one may use about 20% of this number.       #  
# RETURN:                                                                                                                                       #
#     list_results[0], a python structure containing results of fitting for the original data set of relaxation data            #
#     for details see declaration of FitResults() class below.                                                                  #
get_InG(dT_e)

 
make_ratio(datum)

 
# for given realx_datum structure constructs a ratio of relaxation rates R2/R1
meanTemperature(term)

 
term can be a single potential term, or a list of terms
    
merge2values(value1, err1, value2, err2)

 
mergeRelaxData(data_merged)

 
# subroutine with analyzes give list of realx_datum structures,        #
# sorts the list according to the residue number,                       #
# finds items with the same residue numbers,                            #
# and merges them in a single relaxa_datum.                             #
readInRelaxData(file=0, pattern=['resid', 'ratio', 'ratio_err'])

 
# pattern specifies the way the data given in the file
# possible keys for pattern are :
# resid         - residue number
# ratio         - ratio of relaxation rates
# ratio_err     - errors in ration of relaxation rates
# R1            - longitudinal relaxation rate
# R1_err        - error in longitudinal relaxation rate
# R2            - transverse relaxation rate
# R2_err        - error in transverse relaxation rate 
# skip       - skip entry
# T1            - longitudinal relaxation time
# T1_err        - error in longitudinal relaxation time
# T2            - transverse relaxation time
# T2_err        - error in transverse relaxation time 
registerTerm(term)

 
add the given DiffPot object to a list associated with its Simulation.
These objects will be automatically processed by topologySetup and
massSetup.
remove_position_from_list(l_st, p_sn)

 
reset_DiffPot_temp(pot=None, temperature=None)

 
showFitResults(results)

 
show_realx_datum(datum)

 
# debugging subroutine printing out the content of realx_datum structure
sqrt(...)

 
sqrt(x)
 
Return the square root of x.
str2num(line=None)

 
topologySetup(ivm, list=[])

 
configure the given ivm.IVM object's topology setup using the
freedom string for each DiffPot in list.
This function should be called prior to
ivm.IVM.autoTorsion() or protocol.torsionTopology()

 
Data
        __package__ = None
default_resid = 2700
default_segid = ''
psfTmPTemplate = '\nstructure\nPSF\n\n 1 !NTITLE\n REMARKS preP... 1 0 !NGRP\n 0 0 0\n\nend\n'
radiusMap = {'C': 1.8500000000000001, 'H': 1.0, 'N': 1.75, 'O': 1.6000000000000001, 'S': 2.0}
registeredTerms = {}