Пример #1
0
def test_celerity_deep():
    h = 10000  # very deep
    omega = 2 * np.pi / 1.0  # short period wave
    k = waves.wave_number(waves.g, omega, h)   # short waves
    C = waves.celerity(k, h, waves.g)
    # should be for deep water
    assert np.isclose(C, waves.g / omega, rtol=1e-15, atol=0.0)
Пример #2
0
def test_celerity_inf():
    # does it work with infinate depth?
    h = np.inf
    omega = 2 * np.pi / 100.0  # long-ish wave (but still short for inf deep!)
    k = waves.wave_number(waves.g, omega, h)   # short waves
    C = waves.celerity(k, h, waves.g)
    # should be for deep water
    assert np.isclose(C, waves.g / omega, rtol=1e-15, atol=0.0)
Пример #3
0
def test_celerity_shallow():
    h = 1 # shallow
    k = 2*pi/10000 # long waves
    C = waves.celerity(k, h, g)
    assert np.allclose(C, np.sqrt(g * h), rtol=1e-7) # should be for shallow
Пример #4
0
def test_celerity_deep():
    h = 10000 # very deep
    omega = 2*pi/1 # short period wave
    k = waves.wave_number(g, omega, h)   # short waves
    C = waves.celerity(k, h, g)
    assert C == g / omega # should be for deep water -- in this case exact!
Пример #5
0
def test_celerity_shallow():
    h = 1.0  # shallow
    k = 2 * np.pi / 10000  # long waves
    C = waves.celerity(k, h, waves.g)
    assert np.allclose(C, np.sqrt(waves.g * h), rtol=1e-7)  # should be for shallow