def test_compute_wavelet_series_numindex(clear_sky_index, time, expect_tmscale, expect_wavelet): dtindex = pd.to_datetime(time, unit='s') csi_series = pd.Series(clear_sky_index, index=dtindex) wavelet, tmscale = scaling._compute_wavelet(csi_series) assert_almost_equal(tmscale, expect_tmscale) assert_almost_equal(wavelet[0:3, 5000:5005], expect_wavelet)
def test_compute_wavelet_series_highres(clear_sky_index, time_500ms, expect_tmscale_500ms, expect_wavelet): dtindex = pd.to_datetime(time_500ms, unit='s') csi_series = pd.Series(clear_sky_index, index=dtindex) wavelet, tmscale = scaling._compute_wavelet(csi_series) assert_almost_equal(tmscale, expect_tmscale_500ms) assert_almost_equal(wavelet[:, 5000:5005].shape, (14, 5))
def test_compute_wavelet_series_minuteres(clear_sky_index, time_60s, expect_tmscale_1min, expect_wavelet): dtindex = pd.to_datetime(time_60s, unit='s') csi_series = pd.Series(clear_sky_index, index=dtindex) wavelet, tmscale = scaling._compute_wavelet(csi_series) assert_almost_equal(tmscale, expect_tmscale_1min) assert_almost_equal(wavelet[:, 5000:5005].shape, expect_wavelet[0:len(tmscale), :].shape)
def test_compute_wavelet_series(clear_sky_index, time, expect_tmscale, expect_wavelet): csi_series = pd.Series(clear_sky_index, index=time) wavelet, tmscale = scaling._compute_wavelet(csi_series) assert_almost_equal(tmscale, expect_tmscale) assert_almost_equal(wavelet[0:3, 5000:5005], expect_wavelet)
def test_compute_wavelet_array_invalid(clear_sky_index): with pytest.raises(ValueError): scaling._compute_wavelet(clear_sky_index)
def test_compute_wavelet_array(clear_sky_index, expect_tmscale, expect_wavelet): wavelet, tmscale = scaling._compute_wavelet(clear_sky_index, dt) assert_almost_equal(tmscale, expect_tmscale) assert_almost_equal(wavelet[0:3, 5000:5005], expect_wavelet)
def test_compute_wavelet_dwttheory(clear_sky_index, time, expect_tmscale, expect_wavelet): # Confirm detail coeffs sum to original signal csi_series = pd.Series(clear_sky_index, index=time) wavelet, tmscale = scaling._compute_wavelet(csi_series) assert_almost_equal(np.sum(wavelet, 0), csi_series)
def time__compute_wavelet(self): scaling._compute_wavelet(self.clearsky_index, dt=1)