@@ -35,28 +35,22 @@ def test_nframs(self):
35
35
def test_cell (self ):
36
36
self .assertEqual (self .system_1 .get_nframes (),
37
37
self .system_2 .get_nframes ())
38
- for ff in range (self .system_1 .get_nframes ()) :
39
- for ii in range (3 ) :
40
- for jj in range (3 ) :
41
- self .assertAlmostEqual (self .system_1 .data ['cells' ][ff ][ii ][jj ],
42
- self .system_2 .data ['cells' ][ff ][ii ][jj ],
43
- places = self .places ,
44
- msg = 'cell[%d][%d][%d] failed' % (ff ,ii ,jj ))
38
+ np .testing .assert_almost_equal (self .system_1 .data ['cells' ],
39
+ self .system_2 .data ['cells' ],
40
+ decimal = self .places ,
41
+ err_msg = 'cell failed' )
45
42
46
43
def test_coord (self ):
47
44
self .assertEqual (self .system_1 .get_nframes (),
48
45
self .system_2 .get_nframes ())
49
46
# think about direct coord
50
47
tmp_cell = self .system_1 .data ['cells' ]
51
48
tmp_cell = np .reshape (tmp_cell , [- 1 , 3 ])
52
- tmp_cell_norm = np .reshape (np .linalg .norm (tmp_cell , axis = 1 ), [- 1 , 3 ])
53
- for ff in range (self .system_1 .get_nframes ()) :
54
- for ii in range (sum (self .system_1 .data ['atom_numbs' ])) :
55
- for jj in range (3 ) :
56
- self .assertAlmostEqual (self .system_1 .data ['coords' ][ff ][ii ][jj ] / tmp_cell_norm [ff ][jj ],
57
- self .system_2 .data ['coords' ][ff ][ii ][jj ] / tmp_cell_norm [ff ][jj ],
58
- places = self .places ,
59
- msg = 'coord[%d][%d][%d] failed' % (ff ,ii ,jj ))
49
+ tmp_cell_norm = np .reshape (np .linalg .norm (tmp_cell , axis = 1 ), [- 1 , 1 , 3 ])
50
+ np .testing .assert_almost_equal (self .system_1 .data ['coords' ] / tmp_cell_norm ,
51
+ self .system_2 .data ['coords' ] / tmp_cell_norm ,
52
+ decimal = self .places ,
53
+ err_msg = 'coord failed' )
60
54
61
55
def test_nopbc (self ):
62
56
self .assertEqual (self .system_1 .nopbc , self .system_2 .nopbc )
@@ -66,22 +60,18 @@ class CompLabeledSys (CompSys) :
66
60
def test_energy (self ) :
67
61
self .assertEqual (self .system_1 .get_nframes (),
68
62
self .system_2 .get_nframes ())
69
- for ff in range (self .system_1 .get_nframes ()) :
70
- self .assertAlmostEqual (self .system_1 .data ['energies' ][ff ],
71
- self .system_2 .data ['energies' ][ff ],
72
- places = self .e_places ,
73
- msg = 'energies[%d] failed' % (ff ))
63
+ np .testing .assert_almost_equal (self .system_1 .data ['energies' ],
64
+ self .system_2 .data ['energies' ],
65
+ decimal = self .e_places ,
66
+ err_msg = 'energies failed' )
74
67
75
68
def test_force (self ) :
76
69
self .assertEqual (self .system_1 .get_nframes (),
77
70
self .system_2 .get_nframes ())
78
- for ff in range (self .system_1 .get_nframes ()) :
79
- for ii in range (self .system_1 .data ['forces' ].shape [1 ]) :
80
- for jj in range (3 ) :
81
- self .assertAlmostEqual (self .system_1 .data ['forces' ][ff ][ii ][jj ],
82
- self .system_2 .data ['forces' ][ff ][ii ][jj ],
83
- places = self .f_places ,
84
- msg = 'forces[%d][%d][%d] failed' % (ff ,ii ,jj ))
71
+ np .testing .assert_almost_equal (self .system_1 .data ['forces' ],
72
+ self .system_2 .data ['forces' ],
73
+ decimal = self .f_places ,
74
+ err_msg = 'forces failed' )
85
75
86
76
def test_virial (self ) :
87
77
self .assertEqual (self .system_1 .get_nframes (),
@@ -92,13 +82,10 @@ def test_virial(self) :
92
82
if not 'virials' in self .system_1 :
93
83
self .assertFalse ('virials' in self .system_2 )
94
84
return
95
- for ff in range (self .system_1 .get_nframes ()) :
96
- for ii in range (3 ) :
97
- for jj in range (3 ) :
98
- self .assertAlmostEqual (self .system_1 ['virials' ][ff ][ii ][jj ],
99
- self .system_2 ['virials' ][ff ][ii ][jj ],
100
- places = self .v_places ,
101
- msg = 'virials[%d][%d][%d] failed' % (ff ,ii ,jj ))
85
+ np .testing .assert_almost_equal (self .system_1 ['virials' ],
86
+ self .system_2 ['virials' ],
87
+ decimal = self .v_places ,
88
+ err_msg = 'virials failed' )
102
89
103
90
104
91
class MultiSystems :
0 commit comments