Beispiel #1
0
def test_affine_field_rd(realdata):
    afff = packing.affine_field(realdata[1],
                                realdata[100],
                                rdcutoff / 1.5 * 2.5,
                                d2min_scale=rdcutoff / 1.5)
    assert abs(abs(afff.hstrain.mean()) - 0.01) < 0.005 * 11
    assert afff.d2min.mean() < 0.005
Beispiel #2
0
def test_affine_field_fd(fakedata):
    ftr0, ftr1 = fakedata
    afff = packing.affine_field(ftr0, ftr1, cutoff=2.5)
    assert np.allclose((ftr1.set_index("particle").x - afff.set_index("particle").x).dropna(), 0)
    _check_scalar(afff.hstrain, -0.1)
    _check_scalar(afff.vstrain, 0)
    _check_scalar(afff.xdil, 1)
    _check_scalar(afff.ydil, 1)
    _check_scalar(afff.d2min, 0)
Beispiel #3
0
def test_affine_field_perturbed(fakedata):
    ftr0, ftr1 = fakedata
    pid, ftr1p = _perturb_ftr(ftr0)
    afff = packing.affine_field(ftr1p, ftr0, cutoff=2.5)
    assert np.isclose(afff.hstrain.median(), 0)
    assert np.isclose(afff.d2min.median(), 0)
    pd2min = afff.d2min[afff.particle == pid]
    # Upper bound on D2min is set by
    # (N * (0.1**2)) / N, where N is number of neighbors
    assert np.isclose(pd2min, 0.1 ** 2, rtol=1e-2, atol=1e-3)
Beispiel #4
0
def test_affine_field_perturbed(fakedata):
    ftr0, ftr1 = fakedata
    pid, ftr1p = _perturb_ftr(ftr0)
    afff = packing.affine_field(ftr1p, ftr0, cutoff=2.5)
    assert np.isclose(afff.hstrain.median(), 0)
    assert np.isclose(afff.d2min.median(), 0)
    pd2min = afff.d2min[afff.particle == pid]
    # Upper bound on D2min is set by
    # (N * (0.1**2)) / N, where N is number of neighbors
    assert np.isclose(pd2min, 0.1**2, rtol=1e-2, atol=1e-3)
Beispiel #5
0
def test_affine_field_fd(fakedata):
    ftr0, ftr1 = fakedata
    afff = packing.affine_field(ftr0, ftr1, cutoff=2.5)
    assert np.allclose((ftr1.set_index('particle').x \
            - afff.set_index('particle').x).dropna(), 0)
    _check_scalar(afff.hstrain, -0.1)
    _check_scalar(afff.vstrain, 0)
    _check_scalar(afff.xdil, 1)
    _check_scalar(afff.ydil, 1)
    _check_scalar(afff.d2min, 0)
Beispiel #6
0
def test_affine_field_rd(realdata):
    afff = packing.affine_field(realdata[1], realdata[100], rdcutoff / 1.5 * 2.5, d2min_scale=rdcutoff / 1.5)
    assert abs(abs(afff.hstrain.mean()) - 0.01) < 0.005
    assert afff.d2min.mean() < 0.002