From 58f6e7039048ebed6726600e2dd386ee1277aab4 Mon Sep 17 00:00:00 2001 From: Niklaus Johner <nij2003@med.cornell.edu> Date: Sun, 26 Jan 2014 19:51:23 -0500 Subject: [PATCH] Added function to calculate distance fluctuation matrix --- modules/mol/alg/pymod/trajectory_analysis.py | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/modules/mol/alg/pymod/trajectory_analysis.py b/modules/mol/alg/pymod/trajectory_analysis.py index 064135c32..e46af2756 100644 --- a/modules/mol/alg/pymod/trajectory_analysis.py +++ b/modules/mol/alg/pymod/trajectory_analysis.py @@ -211,5 +211,23 @@ def AverageDistanceMatrixFromTraj(t,sele,first=0,last=-1): M[j,i]=npy.mean(d) return M - +def AnalyzeDistanceFluctuationMatrix(t,sele,first=0,last=-1): + try: + import numpy as npy + except ImportError: + LogError("Function needs numpy, but I could not import it.") + raise + n_atoms=sele.GetAtomCount() + M=npy.zeros([n_atoms,n_atoms]) + for i,a1 in enumerate(sele.atoms): + for j,a2 in enumerate(sele.atoms): + if i>j:continue + d=ost.mol.alg.AnalyzeDistanceBetwAtoms(t,a1.GetHandle(),a2.GetHandle())[first:last] + M[j,i]=npy.std(d) + M[i,j]=npy.std(d) + return M + + + + \ No newline at end of file -- GitLab