jgromacs.analysis
Class Dynamics

java.lang.Object
  extended by jgromacs.analysis.Dynamics

public class Dynamics
extends java.lang.Object

Collection of methods for analysing molecular motions


Constructor Summary
Dynamics()
           
 
Method Summary
static jama.Matrix getAtomicCorrelationMatrix(Trajectory t)
          Calculates the NxN atomic correlation matrix from a trajectory using its first frame as the reference frame for superposition
static jama.Matrix getAtomicCorrelationMatrix(Trajectory t, PointList reference)
          Calculates the NxN atomic correlation matrix from a trajectory and a reference frame for superposition
static jama.Matrix getAtomicCovarianceMatrix(Trajectory t)
          Calculates the NxN atomic covariance matrix from a trajectory using its first frame as the reference frame for superposition
static jama.Matrix getAtomicCovarianceMatrix(Trajectory t, PointList reference)
          Calculates the NxN atomic covariance matrix from a trajectory and a reference frame for superposition
static jama.Matrix getContactProbabilityMap(Trajectory t, double cutoff)
          Calculates the (residue) contact probability map for a trajectory as defined by Wei et al, 2009 (Residual Structure in Islet Amyloid Polypeptide Mediates Its Interactions with Soluble Insulin, Biochemistry)
static jama.Matrix getCoordinateCorrelationMatrix(Trajectory t)
          Calculates the 3Nx3N coordinate correlation matrix from a trajectory using its first frame as the reference frame for superposition
static jama.Matrix getCoordinateCorrelationMatrix(Trajectory t, PointList reference)
          Calculates the 3Nx3N coordinate correlation matrix from a trajectory and a reference frame for superposition
static jama.Matrix getCoordinateCovarianceMatrix(Trajectory t)
          Calculates the 3Nx3N coordinate covariance matrix from a trajectory using its first frame as the reference frame for superposition
static jama.Matrix getCoordinateCovarianceMatrix(Trajectory t, PointList reference)
          Calculates the 3Nx3N coordinate covariance matrix from a trajectory and a reference frame for superposition
static double getCovarianceMatrixOverlap(jama.Matrix covariance1, jama.Matrix covariance2)
          Calculates the covariance overlap of two covariance matrices
static double getCovarianceMatrixOverlap(jama.Matrix covariance1, jama.Matrix covariance2, int N)
          Calculates the covariance overlap of two covariance matrices
static double getCovarianceMatrixOverlap(Trajectory t1, Trajectory t2)
          Calculates the covariance overlap from two trajectories
static double getCovarianceMatrixOverlap(Trajectory t1, Trajectory t2, int N)
          Calculates the covariance overlap from two trajectories
static java.util.ArrayList<java.lang.Double> getCumulativeVariances(jama.Matrix covariance)
          Calculates the cumulative variance profile from a covariance matrix
static java.util.ArrayList<java.lang.Double> getCumulativeVariances(Trajectory t)
          Calculates the cumulative variance profile from a trajectory
static jama.Matrix getDynamicalNetwork(Trajectory t, double cutoff, double frequency)
          Calculates the dynamical network of a protein according to the definition of Sethi et al.
static double getEnsembleAveragedRMSD(Trajectory t1, Trajectory t2)
          Calculates the ensemble averaged RMSD between two conformational ensembles sampled in two trajectories as defined by Brüschweiler, 2002 (Efficient RMSD measures for the comparison of two molecular ensembles, Proteins: Structure, Function, and Bioinformatics)
static jama.Matrix getFluctuationMatrix(Trajectory t)
          Calculates the F fluctuation matrix (variances of distances) from a trajectory
static jama.Matrix getFluctuationMatrix(Trajectory t, IndexSet indices)
          Calculates the F fluctuation matrix (variances of distances) for a group of atoms
static double getFluctuationOfSubsets(Trajectory t, IndexSet set1, IndexSet set2)
          Calculates the fluctuation between two subsets of atoms defined as the mean of entries of the selected submatrix of matrix F (fluctuation matrix)
static jama.Matrix[] getPCA(jama.Matrix covariance)
          Calculates the principal components and the corresponding eigenvalues from a covariance matrix
static jama.Matrix[] getPCA(Trajectory t)
          Calculates the principal components and the corresponding eigenvalues from a trajectory
static java.util.ArrayList<java.lang.Double> getRMSFaroundTheMeanProfile(Trajectory t, PointList R)
          Calculates the RMSF profile from a trajectory by superposing all frames to a reference frame R and calculating the RMSDi deviations with regards to the mean structure
static java.util.ArrayList<java.lang.Double> getRMSFaroundTheMeanProfile(Trajectory t, Structure R)
          Calculates the RMSF profile from a trajectory by superposing all frames to a reference frame R and calculating the RMSDi deviations with regards to the mean structure
static java.util.ArrayList<java.lang.Double> getRMSFprofile(Trajectory t, IndexSet indicesT, Structure R, IndexSet indicesR)
          Calculates the RMSF profile of a group of atoms from a trajectory and a reference frame for superposition
static java.util.ArrayList<java.lang.Double> getRMSFprofile(Trajectory t, PointList R)
          Calculates the RMSF profile from a trajectory and a reference frame for superposition
static java.util.ArrayList<java.lang.Double> getRMSFprofile(Trajectory t, PointList R, PointList Q)
          Calculates the RMSF profile from a trajectory by superposing all frames to a reference frame R and calculating the RMSDi deviations with regards to a reference frame Q
static java.util.ArrayList<java.lang.Double> getRMSFprofile(Trajectory t, Structure R)
          Calculates the RMSF profile from a trajectory and a reference frame for superposition
static java.util.ArrayList<java.lang.Double> getRMSFprofile(Trajectory t, Structure R, Structure Q)
          Calculates the RMSF profile from a trajectory by superposing all frames to a reference frame R and calculating the RMSDi deviations with regards to a reference frame Q
static double getRootMeanSquareInnerProduct(jama.Matrix covariance1, jama.Matrix covariance2, int N, int M)
          Calculates the root mean square inner product (RMSIP) from two covariance matrices
static double getRootMeanSquareInnerProduct(Trajectory t1, Trajectory t2, int N, int M)
          Calculates the root mean square inner product (RMSIP) from two trajectories
static double getStructuralRadius(Trajectory t)
          Calculates the structural radius of the conformational ensemble sampled in the trajectory as defined by Kuzmanic and Zagrovic, 2010 (Determination of Ensemble-Average Pairwise Root Mean-Square Deviation from Experimental B-Factors, Biophysical Journal)
static java.util.ArrayList<Point3D> getTrajectoryOfAtom(Trajectory t, int atomindex)
          Returns the trajectory of a single atom in the course of the simulation
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Dynamics

public Dynamics()
Method Detail

getCoordinateCovarianceMatrix

public static jama.Matrix getCoordinateCovarianceMatrix(Trajectory t,
                                                        PointList reference)
Calculates the 3Nx3N coordinate covariance matrix from a trajectory and a reference frame for superposition

Parameters:
t - trajectory
reference - reference frame
Returns:
coordinate covariance matrix

getAtomicCovarianceMatrix

public static jama.Matrix getAtomicCovarianceMatrix(Trajectory t,
                                                    PointList reference)
Calculates the NxN atomic covariance matrix from a trajectory and a reference frame for superposition

Parameters:
t - trajectory
reference - reference frame
Returns:
atomic covariance matrix

getCoordinateCorrelationMatrix

public static jama.Matrix getCoordinateCorrelationMatrix(Trajectory t,
                                                         PointList reference)
Calculates the 3Nx3N coordinate correlation matrix from a trajectory and a reference frame for superposition

Parameters:
t - trajectory
reference - reference frame
Returns:
coordinate correlation matrix

getAtomicCorrelationMatrix

public static jama.Matrix getAtomicCorrelationMatrix(Trajectory t,
                                                     PointList reference)
Calculates the NxN atomic correlation matrix from a trajectory and a reference frame for superposition

Parameters:
t - trajectory
reference - reference frame
Returns:
atomic correlation matrix

getCoordinateCovarianceMatrix

public static jama.Matrix getCoordinateCovarianceMatrix(Trajectory t)
Calculates the 3Nx3N coordinate covariance matrix from a trajectory using its first frame as the reference frame for superposition

Parameters:
t - trajectory
Returns:
coordinate covariance matrix

getAtomicCovarianceMatrix

public static jama.Matrix getAtomicCovarianceMatrix(Trajectory t)
Calculates the NxN atomic covariance matrix from a trajectory using its first frame as the reference frame for superposition

Parameters:
t - trajectory
Returns:
atomic covariance matrix

getCoordinateCorrelationMatrix

public static jama.Matrix getCoordinateCorrelationMatrix(Trajectory t)
Calculates the 3Nx3N coordinate correlation matrix from a trajectory using its first frame as the reference frame for superposition

Parameters:
t - trajectory
Returns:
coordinate correlation matrix

getAtomicCorrelationMatrix

public static jama.Matrix getAtomicCorrelationMatrix(Trajectory t)
Calculates the NxN atomic correlation matrix from a trajectory using its first frame as the reference frame for superposition

Parameters:
t - trajectory
Returns:
atomic correlation matrix

getPCA

public static jama.Matrix[] getPCA(jama.Matrix covariance)
Calculates the principal components and the corresponding eigenvalues from a covariance matrix

Parameters:
covariance - covariance matrix
Returns:
a Matrix array containing D (block diagonal eigenvalue matrix) and V (principal component matrix)

getPCA

public static jama.Matrix[] getPCA(Trajectory t)
Calculates the principal components and the corresponding eigenvalues from a trajectory

Parameters:
t - trajectory
Returns:
a Matrix array containing D (block diagonal eigenvalue matrix) and V (principal component matrix)

getCumulativeVariances

public static java.util.ArrayList<java.lang.Double> getCumulativeVariances(Trajectory t)
Calculates the cumulative variance profile from a trajectory

Parameters:
t - trajectory
Returns:
cumulative variance profile

getCumulativeVariances

public static java.util.ArrayList<java.lang.Double> getCumulativeVariances(jama.Matrix covariance)
Calculates the cumulative variance profile from a covariance matrix

Parameters:
covariance - covariance matrix
Returns:
cumulative variance profile

getRootMeanSquareInnerProduct

public static double getRootMeanSquareInnerProduct(jama.Matrix covariance1,
                                                   jama.Matrix covariance2,
                                                   int N,
                                                   int M)
Calculates the root mean square inner product (RMSIP) from two covariance matrices

Parameters:
covariance1 - first covariance matrix
covariance2 - second covariance matrix
N - number of principal components used from the first trajectory
M - number of principal components used from the second trajectory
Returns:
root mean square inner product (RMSIP)

getRootMeanSquareInnerProduct

public static double getRootMeanSquareInnerProduct(Trajectory t1,
                                                   Trajectory t2,
                                                   int N,
                                                   int M)
Calculates the root mean square inner product (RMSIP) from two trajectories

Parameters:
t1 - first trajectory
t2 - second trajectory
N - number of principal components used from the first trajectory
M - number of principal components used from the second trajectory
Returns:
root mean square inner product (RMSIP)

getCovarianceMatrixOverlap

public static double getCovarianceMatrixOverlap(jama.Matrix covariance1,
                                                jama.Matrix covariance2,
                                                int N)
Calculates the covariance overlap of two covariance matrices

Parameters:
covariance1 - first covariance matrix
covariance2 - second covariance matrix
N - number of dimensions used in the calculation
Returns:
covariance overlap

getCovarianceMatrixOverlap

public static double getCovarianceMatrixOverlap(jama.Matrix covariance1,
                                                jama.Matrix covariance2)
Calculates the covariance overlap of two covariance matrices

Parameters:
covariance1 - first covariance matrix
covariance2 - second covariance matrix
Returns:
covariance overlap

getCovarianceMatrixOverlap

public static double getCovarianceMatrixOverlap(Trajectory t1,
                                                Trajectory t2,
                                                int N)
Calculates the covariance overlap from two trajectories

Parameters:
t1 - first trajectory
t2 - second trajectory
N - number of dimensions used in the calculation
Returns:
covariance overlap

getCovarianceMatrixOverlap

public static double getCovarianceMatrixOverlap(Trajectory t1,
                                                Trajectory t2)
Calculates the covariance overlap from two trajectories

Parameters:
t1 - first trajectory
t2 - second trajectory
Returns:
covariance overlap

getFluctuationMatrix

public static jama.Matrix getFluctuationMatrix(Trajectory t)
Calculates the F fluctuation matrix (variances of distances) from a trajectory

Parameters:
t - trajectory
Returns:
F fluctuation matrix

getFluctuationMatrix

public static jama.Matrix getFluctuationMatrix(Trajectory t,
                                               IndexSet indices)
Calculates the F fluctuation matrix (variances of distances) for a group of atoms

Parameters:
t - trajectory
indices - index set of atoms
Returns:
F fluctuation matrix

getFluctuationOfSubsets

public static double getFluctuationOfSubsets(Trajectory t,
                                             IndexSet set1,
                                             IndexSet set2)
Calculates the fluctuation between two subsets of atoms defined as the mean of entries of the selected submatrix of matrix F (fluctuation matrix)

Parameters:
t - trajectory
set1 - first subset
set2 - second subset
Returns:
fluctuation between the two atom sets

getRMSFprofile

public static java.util.ArrayList<java.lang.Double> getRMSFprofile(Trajectory t,
                                                                   PointList R)
Calculates the RMSF profile from a trajectory and a reference frame for superposition

Parameters:
t - trajectory
R - reference frame
Returns:
RMSF profile

getRMSFprofile

public static java.util.ArrayList<java.lang.Double> getRMSFprofile(Trajectory t,
                                                                   Structure R)
Calculates the RMSF profile from a trajectory and a reference frame for superposition

Parameters:
t - trajectory
R - reference frame
Returns:
RMSF profile

getRMSFprofile

public static java.util.ArrayList<java.lang.Double> getRMSFprofile(Trajectory t,
                                                                   IndexSet indicesT,
                                                                   Structure R,
                                                                   IndexSet indicesR)
Calculates the RMSF profile of a group of atoms from a trajectory and a reference frame for superposition

Parameters:
t - trajectory
indicesT - index set of atoms used from the trajectory
R - reference frame
indicesR - index set of atoms used from the reference frame
Returns:
RMSF profile

getRMSFprofile

public static java.util.ArrayList<java.lang.Double> getRMSFprofile(Trajectory t,
                                                                   PointList R,
                                                                   PointList Q)
Calculates the RMSF profile from a trajectory by superposing all frames to a reference frame R and calculating the RMSDi deviations with regards to a reference frame Q

Parameters:
t - trajectory
R - reference frame to which all frames are superposed
Q - reference frame from which deviations are measured
Returns:
RMSF profile

getRMSFprofile

public static java.util.ArrayList<java.lang.Double> getRMSFprofile(Trajectory t,
                                                                   Structure R,
                                                                   Structure Q)
Calculates the RMSF profile from a trajectory by superposing all frames to a reference frame R and calculating the RMSDi deviations with regards to a reference frame Q

Parameters:
t - trajectory
R - reference frame to which all frames are superposed
Q - reference frame from which deviations are measured
Returns:
RMSF profile

getRMSFaroundTheMeanProfile

public static java.util.ArrayList<java.lang.Double> getRMSFaroundTheMeanProfile(Trajectory t,
                                                                                PointList R)
Calculates the RMSF profile from a trajectory by superposing all frames to a reference frame R and calculating the RMSDi deviations with regards to the mean structure

Parameters:
t - trajectory
R - reference frame
Returns:
RMSF profile

getRMSFaroundTheMeanProfile

public static java.util.ArrayList<java.lang.Double> getRMSFaroundTheMeanProfile(Trajectory t,
                                                                                Structure R)
Calculates the RMSF profile from a trajectory by superposing all frames to a reference frame R and calculating the RMSDi deviations with regards to the mean structure

Parameters:
t - trajectory
R - reference frame
Returns:
RMSF profile

getDynamicalNetwork

public static jama.Matrix getDynamicalNetwork(Trajectory t,
                                              double cutoff,
                                              double frequency)
Calculates the dynamical network of a protein according to the definition of Sethi et al. 2009 (Dynamical networks in tRNA:protein complexes, PNAS)

Parameters:
t - trajectory
cutoff - distance cutoff for the calculation of contact matrix
frequency - minimal frequency of frames in which two residues must be in contact
Returns:
weighted adjacency matrix of dynamical network

getStructuralRadius

public static double getStructuralRadius(Trajectory t)
Calculates the structural radius of the conformational ensemble sampled in the trajectory as defined by Kuzmanic and Zagrovic, 2010 (Determination of Ensemble-Average Pairwise Root Mean-Square Deviation from Experimental B-Factors, Biophysical Journal)

Parameters:
t - trajectory
Returns:
structural radius

getEnsembleAveragedRMSD

public static double getEnsembleAveragedRMSD(Trajectory t1,
                                             Trajectory t2)
Calculates the ensemble averaged RMSD between two conformational ensembles sampled in two trajectories as defined by Brüschweiler, 2002 (Efficient RMSD measures for the comparison of two molecular ensembles, Proteins: Structure, Function, and Bioinformatics)

Parameters:
t1 - first trajectory
t2 - second trajectory
Returns:
ensemble averaged RMSD

getContactProbabilityMap

public static jama.Matrix getContactProbabilityMap(Trajectory t,
                                                   double cutoff)
Calculates the (residue) contact probability map for a trajectory as defined by Wei et al, 2009 (Residual Structure in Islet Amyloid Polypeptide Mediates Its Interactions with Soluble Insulin, Biochemistry)

Parameters:
t - simulation trajectory
cutoff - distance cutoff
Returns:
contact probability matrix

getTrajectoryOfAtom

public static java.util.ArrayList<Point3D> getTrajectoryOfAtom(Trajectory t,
                                                               int atomindex)
Returns the trajectory of a single atom in the course of the simulation

Parameters:
t - simulation trajectory
atomindex - index of atom
Returns:
atomic trajectory as an ArrayList of coordinates