Skip to content

Commit c842eef

Browse files
author
Cristiano Köhler
committed
Fixed failing spectral and signal processing unit tests with SciPy 1.16
1 parent febc7ce commit c842eef

File tree

2 files changed

+21
-12
lines changed

2 files changed

+21
-12
lines changed

elephant/test/test_signal_processing.py

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -448,31 +448,33 @@ def test_butter_filter_type(self):
448448
# this by using an identity function for detrending
449449
filtered_noise = elephant.signal_processing.butter(
450450
noise, 250.0 * pq.Hz, None)
451-
_, psd = spsig.welch(filtered_noise.T, nperseg=1024, fs=1000.0,
452-
detrend=lambda x: x)
451+
_, psd = spsig.welch(filtered_noise.magnitude.T,
452+
nperseg=1024, fs=1000.0, detrend=lambda x: x)
453453
self.assertAlmostEqual(psd[0, 0], 0)
454454

455455
# test low-pass filtering: power at the highest frequency
456456
# should be almost zero
457457
filtered_noise = elephant.signal_processing.butter(
458458
noise, None, 250.0 * pq.Hz)
459-
_, psd = spsig.welch(filtered_noise.T, nperseg=1024, fs=1000.0)
459+
_, psd = spsig.welch(filtered_noise.magnitude.T, nperseg=1024,
460+
fs=1000.0)
460461
self.assertAlmostEqual(psd[0, -1], 0)
461462

462463
# test band-pass filtering: power at the lowest and highest frequencies
463464
# should be almost zero
464465
filtered_noise = elephant.signal_processing.butter(
465466
noise, 200.0 * pq.Hz, 300.0 * pq.Hz)
466-
_, psd = spsig.welch(filtered_noise.T, nperseg=1024, fs=1000.0,
467-
detrend=lambda x: x)
467+
_, psd = spsig.welch(filtered_noise.magnitude.T, nperseg=1024,
468+
fs=1000.0, detrend=lambda x: x)
468469
self.assertAlmostEqual(psd[0, 0], 0)
469470
self.assertAlmostEqual(psd[0, -1], 0)
470471

471472
# test band-stop filtering: power at the intermediate frequency
472473
# should be almost zero
473474
filtered_noise = elephant.signal_processing.butter(
474475
noise, 400.0 * pq.Hz, 100.0 * pq.Hz)
475-
_, psd = spsig.welch(filtered_noise.T, nperseg=1024, fs=1000.0)
476+
_, psd = spsig.welch(filtered_noise.magnitude.T, nperseg=1024,
477+
fs=1000.0)
476478
self.assertAlmostEqual(psd[0, 256], 0)
477479

478480
def test_butter_filter_function(self):
@@ -493,17 +495,20 @@ def test_butter_filter_function(self):
493495
'lowpass_frequency': None, 'filter_function': 'filtfilt'}
494496
filtered_noise = elephant.signal_processing.butter(**kwds)
495497
_, psd_filtfilt = spsig.welch(
496-
filtered_noise.T, nperseg=1024, fs=1000.0, detrend=lambda x: x)
498+
filtered_noise.magnitude.T, nperseg=1024, fs=1000.0,
499+
detrend=lambda x: x)
497500

498501
kwds['filter_function'] = 'lfilter'
499502
filtered_noise = elephant.signal_processing.butter(**kwds)
500503
_, psd_lfilter = spsig.welch(
501-
filtered_noise.T, nperseg=1024, fs=1000.0, detrend=lambda x: x)
504+
filtered_noise.magnitude.T, nperseg=1024, fs=1000.0,
505+
detrend=lambda x: x)
502506

503507
kwds['filter_function'] = 'sosfiltfilt'
504508
filtered_noise = elephant.signal_processing.butter(**kwds)
505509
_, psd_sosfiltfilt = spsig.welch(
506-
filtered_noise.T, nperseg=1024, fs=1000.0, detrend=lambda x: x)
510+
filtered_noise.magnitude.T, nperseg=1024, fs=1000.0,
511+
detrend=lambda x: x)
507512

508513
self.assertAlmostEqual(psd_filtfilt[0, 0], psd_lfilter[0, 0])
509514
self.assertAlmostEqual(psd_filtfilt[0, 0], psd_sosfiltfilt[0, 0])

elephant/test/test_spectral.py

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -97,9 +97,13 @@ def test_welch_psd_behavior(self):
9797
for key, val in params.items():
9898
freqs, psd = elephant.spectral.welch_psd(
9999
data, len_segment=1000, overlap=0, **{key: val})
100-
freqs_spsig, psd_spsig = spsig.welch(np.rollaxis(data, 0, len(
101-
data.shape)), fs=1 / sampling_period, nperseg=1000,
102-
noverlap=0, **{key: val})
100+
freqs_spsig, psd_spsig = spsig.welch(
101+
np.rollaxis(data.magnitude, 0, len(data.shape)),
102+
fs=1 / sampling_period,
103+
nperseg=1000,
104+
noverlap=0,
105+
**{key: val}
106+
)
103107
self.assertTrue(
104108
(freqs == freqs_spsig).all() and (
105109
psd == psd_spsig).all())

0 commit comments

Comments
 (0)