def METHOD_NAME(self):
    system = self.system
    n_part = 99
    dx = system.box_l[0] / float(n_part + 1)
    for i in range(n_part):
        system.part.add(
            pos=[i * dx, 0.5 * system.box_l[1], 0.5 * system.box_l[2]], type=(i % 2))
    partcls = system.part.all()
    r_bins = 50
    r_min = 0.5 * dx
    r_max = r_bins * dx
    obs = espressomd.observables.RDF(ids1=partcls.id[0::2],
                                     ids2=partcls.id[1::2],
                                     min_r=r_min, max_r=r_max,
                                     n_r_bins=r_bins)
    rdf01 = obs.calculate()
    r = obs.bin_centers()
    rv = self.bin_volumes(r)
    rho = 0.5 * n_part / system.volume()
    parts_in_bin = rdf01 * rv * rho
    # Every even bin should contain two parts
    np.testing.assert_allclose(parts_in_bin[0::2], 2.0, rtol=1e-1)
    # Every odd bin should contain zero parts
    np.testing.assert_allclose(parts_in_bin[1::2], 0.0)
    # Check symmetry
    obs = espressomd.observables.RDF(ids1=partcls.id[1::2],
                                     ids2=partcls.id[0::2],
                                     min_r=r_min, max_r=r_max,
                                     n_r_bins=r_bins)
    rdf10 = obs.calculate()
    np.testing.assert_allclose(rdf10, rdf01)