Analisis Spektral & Dekomposisi Wavelet
Domain Frekuensi, FFT, Power Spectral Density (PSD), STFT, dan Discrete Wavelet Transform (DWT)
Sub-CPMK 8: Mampu menganalisis sinyal pada domain frekuensi (FFT/PSD) dan waktu-frekuensi (DWT) untuk deteksi transien.
Keterbatasan domain waktu murni, Transformasi Fourier Diskrit (DFT/FFT), estimasi spektrum daya Welch PSD, Short-Time Fourier Transform (STFT), prinsip ketidakpastian Heisenberg-Gabor, Discrete Wavelet Transform (DWT), dan denoising wavelet sinyal transien.
Perbedaan koefisien aproksimasi (cA) vs detail (cD) pada dekomposisi piramida wavelet.
Perhitungan frekuensi analog dari bin FFT dan analisis pergeseran energi sub-band DWT pada kerusakan bantalan motor.
Evaluasi filter IIR Butterworth vs Wavelet Denoising pada sinyal surja petir dan perancangan detector sag otomatis.
import pywt
import numpy as np
# Dekomposisi Wavelet Daubechies 4 (db4) Level 3
coeffs = pywt.wavedec(noisy_signal, 'db4', level=3)
cA3, cD3, cD2, cD1 = coeffs
# Soft-Thresholding Donoho
sigma = np.median(np.abs(cD1)) / 0.6745
threshold = sigma * np.sqrt(2 * np.log(len(noisy_signal)))
clean_coeffs = [cA3] + [pywt.threshold(c, threshold, mode='soft') for c in [cD3, cD2, cD1]]
clean_signal = pywt.waverec(clean_coeffs, 'db4')