Skip to content

Commit

Permalink
Added exception and unittest for dist_mat_to_vec of analysis/psa.py (…
Browse files Browse the repository at this point in the history
…Part of MDAnalysis#597)
  • Loading branch information
vedantrathore committed Feb 2, 2017
1 parent f12458e commit ece534a
Show file tree
Hide file tree
Showing 6 changed files with 9 additions and 6 deletions.
1 change: 1 addition & 0 deletions package/AUTHORS
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,7 @@ Chronological list of authors
- Shantanu Srivastava
2017
- Utkarsh Bansal
- Vedant Rathore

External code
-------------
Expand Down
3 changes: 2 additions & 1 deletion package/CHANGELOG
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ The rules for this file:
------------------------------------------------------------------------------
??/??/16 kain88-de, fiona-naughton, richardjgowers, tyler.je.reddy, jdetle
euhruska, orbeckst, rbrtdlg, jbarnoud, wouterboomsma, shanmbic,
dotsdl, manuel.nuno.melo, utkbansal
dotsdl, manuel.nuno.melo, utkbansal, vedantrathore

* 0.16.0

Expand Down Expand Up @@ -61,6 +61,7 @@ Enhancements
* Added groupby method to Group objects. (PR #1112)

Fixes
* Argument validation of dist_mat_to_vec is fixed (#597 PR #1183)
* Give correct error when the topology file format is not recognized (Issue #982)
* Give correct error when file doesn't exist/ has bad permissions (Issue #981)
* Improvement of analysis/waterdynamics module (Issue #935)
Expand Down
5 changes: 3 additions & 2 deletions package/MDAnalysis/analysis/psa.py
Original file line number Diff line number Diff line change
Expand Up @@ -212,6 +212,7 @@
from six.moves import range, cPickle

import numpy as np
import warnings

import MDAnalysis
import MDAnalysis.analysis.align
Expand Down Expand Up @@ -581,7 +582,7 @@ def dist_mat_to_vec(N, i, j):
error_str = "Matrix indices are invalid; i and j must be greater than 0 and N must be greater the 2"
raise ValueError(error_str)

if i > N or j > N:
if (j > i and (i > N - 1 or j > N)) or (j < i and (i > N or j > N - 1)):
err_str = "Matrix indices are out of range; i and j must be less than" \
+ " N = {0:d}".format(N)
raise ValueError(err_str)
Expand All @@ -591,7 +592,7 @@ def dist_mat_to_vec(N, i, j):
warn_str = "Column index entered (j = {:d} is smaller than row index" \
+ " (i = {:d}). Using symmetric element in upper triangle of" \
+ " distance matrix instead: i --> j, j --> i"
warnings.warn(war_str.format(j, i))
warnings.warn(warn_str.format(j, i))
return (N*j) + i - (j+2)*(j+1)/2
else:
err_str = "Error in processing matrix indices; i and j must be integers"\
Expand Down
2 changes: 1 addition & 1 deletion testsuite/AUTHORS
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ Chronological list of authors

2017
- Utkarsh Bansal

- Vedant Rathore

External code
-------------
Expand Down
2 changes: 1 addition & 1 deletion testsuite/CHANGELOG
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ and https://github.com/MDAnalysis/mdanalysis/wiki/UnitTests

------------------------------------------------------------------------------
??/??/16 jbarnoud, orbeckst, fiona-naughton, manuel.nuno.melo, richardjgowers
tyler.je.reddy, utkbansal
tyler.je.reddy, utkbansal, vedantrathore

* 0.16
- added two unit tests for MDAnalysis.analysis.polymer
Expand Down
2 changes: 1 addition & 1 deletion testsuite/MDAnalysisTests/analysis/test_psa.py
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,7 @@ def test_dist_mat_to_vec_func_out_of_bounds(self):
with self.assertRaises(ValueError):
PSA.dist_mat_to_vec(5, -1, 2)

# Check if i is negative
# Check if j is negative
with self.assertRaises(ValueError):
PSA.dist_mat_to_vec(5, 1, -2)

Expand Down

0 comments on commit ece534a

Please sign in to comment.