def test_gsd_rdf_pair_order(self, gsdfile_bond): rdf, norm = gsd_rdf(gsdfile_bond, "A", "B") rdf_y = rdf.rdf*norm rdf2, norm2 = gsd_rdf(gsdfile_bond, "B", "A") rdf_y2 = rdf2.rdf*norm2 for i,j in zip(rdf_y, rdf_y2): assert np.allclose(i,j,atol=1e-4)
def get_state_rdf(self, state, query): """Calculate the RDF of a Pair at a State.""" if query: traj = state.query_traj else: traj = state.traj_file rdf, norm = gsd_rdf( traj, self.type1, self.type2, start=-state._opt.max_frames, r_max=state._opt.rdf_cutoff, bins=state._opt.n_rdf_points, exclude_bonded=state._opt.rdf_exclude_bonded ) return np.stack((rdf.bin_centers, rdf.rdf*norm)).T
def test_gsd_rdf_samename(self, gsdfile_bond): rdf_ex, norm = gsd_rdf(gsdfile_bond, "A", "A") rdf_noex, norm2 = gsd_rdf(gsdfile_bond, "A", "A", exclude_bonded=False) assert norm2 == 1 assert not np.array_equal(rdf_noex, rdf_ex)
def test_gsd_rdf(self, gsdfile_bond): rdf_ex, norm = gsd_rdf(gsdfile_bond, "A", "B") rdf_noex, norm2 = gsd_rdf(gsdfile_bond, "A", "B", exclude_bonded=False) assert np.isclose(norm2, 2/3, 1e-4) assert not np.array_equal(rdf_noex, rdf_ex)