specwelch

Spectrum using Welch's method
8.2K Downloads
Updated 13 Jul 2006

No License

Spectrum using Welch's method

USAGE:
q = specwelch(x,dt,w,Nsg,pnv,Wn,ftype,n)
[psdf,f] = specwelch(x,dt,w,Nsg,pnv,Wn,ftype,n)
[psdf,conf,f] = specwelch(x,dt,w,Nsg,pnv,Wn,ftype,n)

DESCRIPTION:
Calculates the spectrum for x
using Welch's method.
The confidence intervals are calculated
using the inverse of chi-square CDF.
Also includes a filtering option using the
butterworth filter to see the effect of the
filter on the spectrum

INPUT VARIABLES:
x - Time series, [vector]
dt - Sampling Rate, [scalar]
win - Window, one of:
'hanning', 'hamming', 'boxcar'
Nsg - Number of Segments (>=1)
pnv - Percentage Noverlap of Segments (0-100)
Nb - Band Averaging, number of bands to average
Wn - Cut-Off frequencies, used for filtering
ftype - Type of filter, 'high', 'low' or 'stop'
n - Number of coefficients to use in
the Butterworth filter

OUTPUT VARIABLES:
q - structure with the following fields:
xp - detrended x
f = Frequencies
T - Periods
m - Magnitude
a - Amplitude
s - Power spectrum, Sxx(win), [Power]
psdw - Power Spectral Density, Pxx(win), [Power/rad/sample]
psdf - Power Spectral Density, Pxx(f), [Power/sample-freq]
psdT - Power Spectral Density, Pxx(T), [Power*time-unit]
conf - Upper and Lower Confidence Interval multiplication
factors using chi-squared approach

Cite As

Alex Sanchez (2026). specwelch (https://uk.mathworks.com/matlabcentral/fileexchange/11690-specwelch), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R14
Compatible with any release
Platform Compatibility
Windows macOS Linux
Version Published Release Notes
1.0.0.0