Exemplo n.º 1
0
##################
# Simulated data #
##################

sampling_period = 30
frequency = pd.Timedelta(sampling_period, unit='s')
start_time = '01/01/2018 00:00:00'
N = 7 * 1440 * 2  # *sampling_period
n_array = np.geomspace(5, 1000, num=40, endpoint=True, dtype=int)
q_array = [-5, -3, -1, 0, 1, 3, 5]

# Stochastic generators
bn = BrownianNoise(t=1)
fbm = FractionalBrownianMotion(hurst=0.9, t=1)
fgn = FractionalGaussianNoise(hurst=0.6, t=1)

np.random.seed(0)

# Brownian noise: h(q) = 1+H with H=0.5
bn_sample = generate_series(bn.sample(N - 1),
                            start=start_time,
                            sampling_period=sampling_period)

# Fractional Brownian motion: h(q) = 1+H with H = 0.9 (in this example)
fbm_sample = generate_series(fbm.sample(N - 1),
                             start=start_time,
                             sampling_period=sampling_period)

# Fractional Gaussian noise: h(q) = H with H = 0.6 (in this example)
fgn_sample = generate_series(fgn.sample(N),
Exemplo n.º 2
0
def test_fractional_gaussian_noise_str_repr(hurst, t):
    instance = FractionalGaussianNoise(hurst, t)
    assert isinstance(repr(instance), str)
    assert isinstance(str(instance), str)
Exemplo n.º 3
0
def test_fractional_gaussian_noise_sample(hurst, t, algorithm, n, zero):
    instance = FractionalGaussianNoise(hurst, t)
    s = instance.sample(n, algorithm)
    assert len(s) == n
Exemplo n.º 4
0
def test_fractional_gaussian_noise_fallback(t, mocker):
    instance = FractionalGaussianNoise(0.99, t)  # high hurst
    mocker.patch('stochastic.noise.fractional_gaussian_noise.logging')
    s = instance.sample(
        8, 'daviesharte')  # low n, with daviesharte, fallback to hosking
    assert fractional_gaussian_noise.logging.warning.called
Exemplo n.º 5
0
def test_fractional_gaussian_noise_algorithm(t, n, algorithm_fixture):
    instance = FractionalGaussianNoise(0.7, t)
    with pytest.raises(ValueError):
        s = instance.sample(n, algorithm_fixture)
Exemplo n.º 6
0
def test_fractional_gaussian_noise_hurst(hurst_fixture, t):
    with pytest.raises((ValueError, TypeError)):
        instance = FractionalGaussianNoise(hurst_fixture, t)