%% Welch Estimate Specifying Segment Overlap
% Obtain the Welch PSD estimate of an input signal consisting of a discrete-time sinusoid with an angular frequency of \pi/4 rad/sample with additive N(0,1) white noise.
% Create a sine wave with an angular frequency of \pi/4 rad/sample with additive N(0,1) white noise. Reset the random number generator for reproducible results. The signal is 320 samples in length.

rng default

n = 0:319;
x = cos(pi/4*n)+randn(size(n));

%
% Obtain the Welch PSD estimate dividing the signal into segments 100 samples in length. The signal segments are multiplied by a Hamming window 100 samples in length. The number of overlapped samples is 25. The DFT length is 256 points yielding a frequency resolution of 2\pi/256 rad/sample. Because the signal is real-valued, the PSD estimate is one-sided and there are 256/2+1 points.

segmentLength = 100;
noverlap = 25;
pxx = pwelch(x,segmentLength,noverlap);

plot(10*log10(pxx))

% Copyright 2015 The MathWorks, Inc.