Esempio n. 1
0
def test_ellipticity(parameter, kref, atol):
    velocity_model = helpers.velocity_model(5)

    es = disba.EllipticitySensitivity(*velocity_model, dp=0.005)
    ke = es(10.0, 0, parameter)

    assert numpy.allclose(kref, ke.kernel.sum(), atol=atol)
Esempio n. 2
0
def test_group(wave, parameter, kref, atol):
    velocity_model = helpers.velocity_model(5)

    gs = disba.GroupSensitivity(*velocity_model, dt=0.005, dp=0.005)
    kg = gs(10.0, 0, wave, parameter)

    assert numpy.allclose(kref, kg.kernel.sum(), atol=atol)
Esempio n. 3
0
def test_phase(wave, parameter, kref, atol):
    velocity_model = helpers.velocity_model(5)

    ps = disba.PhaseSensitivity(*velocity_model, dp=0.005)
    kp = ps(10.0, 0, wave, parameter)

    assert numpy.allclose(kref, kp.kernel.sum(), atol=atol)
Esempio n. 4
0
def test_depthplot(monkeypatch):
    velocity_model = helpers.velocity_model(5)
    x = velocity_model[1]
    z = velocity_model[0].cumsum() - velocity_model[0][0]

    monkeypatch.setattr(plt, "show", lambda: None)
    disba.depthplot(x, z, velocity_model[0].sum())
Esempio n. 5
0
def test_water_layer(wave, algorithm, cref):
    velocity_model = helpers.velocity_model(5, water_layer=True)
    t = numpy.logspace(0.0, 1.0, 20)

    pd = disba.PhaseDispersion(*velocity_model, algorithm=algorithm)
    cp = pd(t, wave=wave)

    assert numpy.allclose(cref, cp.velocity.sum(), atol=0.001)
Esempio n. 6
0
def test_group(mode, wave, algorithm, cref):
    velocity_model = helpers.velocity_model(5)
    t = numpy.logspace(0.0, 1.0, 20)

    gd = disba.GroupDispersion(*velocity_model, algorithm=algorithm)
    cg = gd(t, mode, wave)

    assert numpy.allclose(cref, cg.velocity.sum(), atol=0.001)
Esempio n. 7
0
def test_ellipticity(mode, eref):
    velocity_model = helpers.velocity_model(5)
    t = numpy.logspace(0.0, 1.0, 20)

    ell = disba.Ellipticity(*velocity_model)
    rel = ell(t, mode=mode)

    assert numpy.allclose(eref, rel.ellipticity.sum(), atol=0.001)
Esempio n. 8
0
def test_eigen(wave, water_layer, eref):
    velocity_model = helpers.velocity_model(5, water_layer=water_layer)

    eigf = disba.EigenFunction(*velocity_model)
    eig = eigf(10.0, 0, wave)

    for k, v in eref.items():
        assert numpy.allclose(v, getattr(eig, k).sum(), atol=1.0e-3)
Esempio n. 9
0
def test_resample(mode, wave, algorithm):
    velocity_model = helpers.velocity_model(5)
    t = numpy.logspace(0.0, 1.0, 20)

    pd = disba.PhaseDispersion(*velocity_model, algorithm=algorithm)
    cref = pd(t, mode, wave)

    pd.resample(0.1)
    cp = pd(t, mode, wave)

    assert numpy.allclose(cref.velocity.sum(), cp.velocity.sum(), atol=0.1)