packman.anm.anm module¶
The ‘ANM’ object host file.
This is file information, not the class information. This information is only for the API developers. Please read the ‘ANM’ object documentation for details.
- Example::
- from packman.anm import ANM help( ANM )
Notes
- Tutorial: https://jerniganlab.github.io/Software/PACKMAN/Tutorials/compliance
- For more details about the parameters for compliance, or to site this, read the following paper: https://doi.org/10.1002/prot.25968
- Authors:
- Pranav Khade(https://github.com/Pranavkhade)
- Part Credits: Ambuj Kumar (ambuj@iastate.edu)
-
class
packman.anm.anm.ANM(atoms, gamma=1.0, dr=15.0, power=0, pf=None)¶ Bases:
objectThis class contains the functions essential to carry out the Anisotropic Network Model and Compliance analysis.
Notes: * Tutorial: https://jerniganlab.github.io/Software/PACKMAN/Tutorials/compliance * For more details about the parameters for compliance, or to site this, read the following paper:
Parameters: - coords ([float]) – Two dimentional array of three dimentional points in the space.
- gamma (float, optional) – Spring Constant Value. Defaults to 1.0.
- dr (float, optional) – Distance Cutoff. Defaults to 15.0.
- power (int, optional) – Power of distance (mainly useful in non-parametric mode). Defaults to 0.
- pf (None, optional) – Parameter free model. (Check the dr and power params) Defaults to None.
-
calculate_decomposition()¶ Decompose the Hessian Matrix of the ANM model.
Note
Eigen values and Eigen Vectors are calculated. use ANM().get_eigenvalues() and ANM().get_eigenvectors() to obtain them.
-
calculate_fluctuations(endmode=None)¶ Calculate the Fluctuations of the ANM model.
The fluctualtions/ theoretical b-factors are calculated using this method.
Note
- Fluctuations are calculated. use ANM().get_fluctuations() to obtain the fluctuations.
- Endmode needs to be put in the code if and when required.
-
calculate_hessian()¶ Build the Hessian Matrix of the ANM model.
This is the most essential step for ANM/ Compliance analysis.
Notes
- Hessian matrix is built; use ANM().get_hessian() to obtain the hessian matrix.
-
calculate_movie(mode_number, scale=1.5, n=20, ftype='cif')¶ Get the movie of the obtained LINEAR modes. The first frame is the original structure and the projection progresses in positive (+) direction, returning to original structure and then in negative direction (-) again returning to the original structure.
Parameters: - mode_number (int) – Mode number. (first non-rigid mode is 6th)
- scale (float) – Multiplier; extent to which mode will be extrapolated. Defaults to 1.5
- n (int) – Number of frames in output (should be =>8 and ideally multiple of 4) Defaults to 20
- ftype (string) – Extension of the output file (.cif / .pdb)
Note
- Scale and n parameters should be redesigned.
- direction is the variable which be allow user to explore only positive or only negative direction of the modes.
Returns: True if successful; false otherwise.
-
calculate_stiffness_compliance()¶ Carry out the Stiffness and Compliance analysis of the ANM model.
Citation: Scaramozzino, D., Khade, P.M., Jernigan, R.L., Lacidogna, G. and Carpinteri, A. (2020), Structural Compliance ‐ A New Metric for Protein Flexibility. Proteins. Accepted Author Manuscript. doi:10.1002/prot.25968
Note
- Obtain the following properties by using functions followed by it:
- Stiffness Map : ANM().get_stiffness_map() Compliance Map : ANM().get_compliance_map() Stiffness Profile : ANM().get_stiffness_profile() Compliance Profile: ANM().get_compliance_profile()
-
get_compliance_map()¶ Get the Compliance Map obtained from Stiffness and Compliance Analysis
Notes
- Make sure that the ANM().calculate_hessian(), ANM().calculate_decomposition() and ANM().calculate_stiffness_compliance() is called before calling this function. (will return None otherwise)
- Stiffness=1/Compliance
Returns: Compliance Map if successful; None otherwise Return type: numpy.ndarray
-
get_compliance_profile()¶ Get the Compliance profile obtained from Stiffness and Compliance Analysis
Notes
- Make sure that the ANM().calculate_hessian(), ANM().calculate_decomposition() and ANM().calculate_stiffness_compliance() is called before calling this function. (will return None otherwise)
- Stiffness=1/Compliance
Returns: Compliance profile if successful; None otherwise Return type: numpy.ndarray
-
get_eigenvalues()¶ Get the Eigenvalues obtained by decomposing the Hessian Matrix of the ANM model.
Notes
- Make sure that the ANM().calculate_hessian() and ANM().calculate_decomposition() is called before calling this function. (will return None otherwise)
Returns: Eigenvalues if successful; None otherwise Return type: numpy.ndarray
-
get_eigenvectors()¶ Get the Eigenvectors obtained by decomposing the Hessian Matrix of the ANM model.
Notes
- Make sure that the ANM().calculate_hessian() and ANM().calculate_decomposition() is called before calling this function. (will return None otherwise)
Returns: Eigenvectors if successful; None otherwise Return type: numpy.ndarray
-
get_fluctuations()¶ Get the Fluctuations obtained from Eigenvectors and Eigenvalues
Notes
- Make sure that the ANM().calculate_hessian(), ANM().calculate_decomposition() and ANM().calculate_fluctuations() is called before calling this function. (will return None otherwise)
Returns: Eigenvectors if successful; None otherwise Return type: numpy.ndarray
-
get_hessian()¶ Get the Hessian Matrix of the ANM model.
Notes
- Make sure that the ANM().calculate_hessian() is called before calling this function. (will return None otherwise)
Returns: Hessian matrix if successful; None otherwise Return type: numpy.ndarray
-
get_stiffness_map()¶ Get the Stiffness Map obtained from Stiffness and Compliance Analysis
Notes
- Make sure that the ANM().calculate_hessian(), ANM().calculate_decomposition() and ANM().calculate_stiffness_compliance() is called before calling this function. (will return None otherwise)
- Stiffness=1/Compliance
Returns: Stiffness Map if successful; None otherwise Return type: numpy.ndarray
-
get_stiffness_profile()¶ Get the Stiffness profile obtained from Stiffness and Compliance Analysis
Notes
- Make sure that the ANM().calculate_hessian(), ANM().calculate_decomposition() and ANM().calculate_stiffness_compliance() is called before calling this function. (will return None otherwise)
- Stiffness=1/Compliance
Returns: Stiffness profile if successful; None otherwise Return type: numpy.ndarray