Skip to content

Commit 954798c

Browse files
authored
Merge pull request #20 from phydev/fix_anisotropy
fixing asymmetry and anisotropy
2 parents 94bc6a1 + dbabd40 commit 954798c

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

trajpy/trajpy.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ def compute_features(self):
6565
self.fractal_dimension, self._r0 = self.fractal_dimension_(self._r)
6666
self.gyration_radius = self.gyration_radius_(self._r)
6767
self.eigenvalues = np.linalg.eigvals(self.gyration_radius)
68+
self.eigenvalues[::-1].sort() # the eigenvalues must be in the descending order
6869
self.anisotropy = self.anisotropy_(self.eigenvalues)
6970
self.kurtosis = self.kurtosis_(self.eigenvalues)
7071
self.straightness = self.straightness_(self._r)
@@ -252,6 +253,8 @@ def asymmetry_(eigenvalues):
252253
"""
253254

254255
if len(eigenvalues) == 2:
256+
eigenvalues.[::-1].sort() # the eigen values must the in the descending order
257+
255258
asymmetry = - np.log(1. - np.power(eigenvalues[0] - eigenvalues[1], 2) /
256259
(2. * np.power(eigenvalues[0] + eigenvalues[1], 2)))
257260
else:
@@ -268,7 +271,9 @@ def anisotropy_(eigenvalues):
268271
a^2 = 1 - 3 \\frac{\\lambda_x\\lambda_y + \\lambda_y \\lambda_z + \\lambda_z\\lambda_x }{(\\lambda_x+\\lambda_y+\\lambda_z)^2}
269272
270273
"""
271-
274+
275+
eigenvalues[::-1].sort() # the eigen values must the in the descending order
276+
272277
anisotropy = 1. - 3. * ((eigenvalues[0] * eigenvalues[1]
273278
+ eigenvalues[1] * eigenvalues[2]
274279
+ eigenvalues[2] * eigenvalues[0])

0 commit comments

Comments
 (0)