function [approximationCoefficients, detailCoefficients] = haarDWT(signal) % FWT with Haar wavelet N = length(signal); approximationCoefficients = zeros(1, N/2); detailCoefficients = zeros(1, N/2); for k = 1:N/2 % compute approximation (scaling) coefficients approximationCoefficients(k) = (signal(2*k-1) + signal(2*k)) / sqrt(2); % compute detail (wavelet) coefficients detailCoefficients(k) = (signal(2*k-1) - signal(2*k)) / sqrt(2); end end