dspdata.msspectrum

Среднее квадратичное (степень) спектр

Синтаксис

Hmss = dspdata.msspectrum(Data)
Hmss = dspdata.msspectrum(Data,Frequencies)
Hmss = dspdata.msspectrum(...,'Fs',Fs)
Hmss = dspdata.msspectrum(...,'SpectrumType',SpectrumType)
Hmss = dspdata.msspectrum(...,'CenterDC',flag)

Описание

Примечание

Использование dspdata.msspectrum не рекомендуется. Используйте periodogram или pwelch вместо этого.

Среднеквадратический спектр (MSS) предназначается для дискретных спектров. В отличие от степени спектральной плотности (PSD), peaks в MSS отражает степень в сигнале на данной частоте. MSS сигнала является преобразованием Фурье автокорреляции того сигнала.

Hmss = dspdata.msspectrum(Data) использует среднее квадратичное (степень) данные о спектре, содержавшиеся в Data, который может быть в форме вектора или матрицы, где каждый столбец является отдельным набором данных. Значения по умолчанию для других свойств объекта следующие:

Свойство

Значение по умолчанию

Описание

Имя

'Mean-square Spectrum'

Вектор символов только для чтения

Frequencies

[]

введите double

Вектор частот, на которых оценен спектр. Область значений этого вектора зависит от SpectrumType значение. Для одностороннего спектра область значений по умолчанию [0, π), или [0, Fs/2) для нечетной длины, и [0, π] или [0, Fs/2] для даже длины, если Fs задан. Для двухстороннего спектра это [0, 2π), или [0, Fs).

Длина Frequencies вектор должен совпадать с длиной столбцов Data.

Если вы не задаете Frequencies, вектор по умолчанию создается. Если односторонний выбран, то целое число точек БПФ (nFFT) для этого вектора принято, чтобы быть ровным.

Если onesided выбран и вы задаете Frequencies, последняя точка частоты сравнивается с предпоследней точкой и к пи (или Fs/2, если Fs задан). Если последняя точка ближе к пи (или Fs/2) чем он к предыдущей точке, nFFT принят, чтобы быть ровным. Если это ближе к предыдущей точке, nFFT принят, чтобы быть нечетным.

Fs

'Normalized'

Частота дискретизации, которая является 'Normalized' если NormalizedFrequency true. Если NormalizedFrequency false Fs значения по умолчанию к 1 Гц.

SpectrumType

'Onesided'

Интервал Найквиста, на котором вычисляется спектральная плотность. Допустимыми значениями является 'Onesided' и 'Twosided'. Смотрите onesided и twosided методы в dspdata для получения информации об изменении этого свойства.

Интервал для Onesided [0 π), или [0 π] в зависимости от количества точек БПФ, и для Twosided интервал [0 2π).

NormalizedFrequency

true

Нормирована ли частота (true) или не (false). Это свойство установлено автоматически во время создания на основе Fs. Если Fs задан, NormalizedFrequency установлен в false. Смотрите normalizefreq метод в dspdata для получения информации об изменении этого свойства.

Hmss = dspdata.msspectrum(Data,Frequencies) использует среднеквадратические данные о спектре, содержавшиеся в Data и Frequencies векторы.

Hmss = dspdata.msspectrum(...,'Fs',Fs) использует частоту дискретизации Fs. Определение Fs использует набор по умолчанию линейных частот (в Hz) на основе Fs и наборы NormalizedFrequency к false.

Hmss = dspdata.msspectrum(...,'SpectrumType',SpectrumType) использование SpectrumType задавать интервал, на котором был вычислен среднеквадратический спектр. Для данных, которые располагаются от [0 π) или [0 π], устанавливает SpectrumType к onesided; для данных, которые располагаются от [0 2π), устанавливает SpectrumType к twosided.

Hmss = dspdata.msspectrum(...,'CenterDC',flag) использует значение flag указать, сосредоточена ли нулевая частота (DC) компонент. Если flag true, это указывает, что компонент DC находится в центре двухстороннего спектра. Установите flag к false если компонент DC находится на левом крае спектра.

Методы

Методы обеспечивают способы выполнить функции непосредственно на вашем dspdata объект, не имея необходимость задавать параметры снова. Можно применить метод непосредственно на переменную, которую вы присвоили своему dspdata.msspectrum объект. Можно использовать следующие методы с dspdata.msspectrum объект.

  • centerdc

  • normalizefreq

  • onesided

  • plot

  • sfdr

  • twosided

Например, чтобы нормировать частоту и установить NormalizedFrequency параметр к истинному, использовать

Hmss = normalizefreq(Hs)

Для получения дальнейшей информации при использовании методов и графическом выводе спектра, смотрите dspdata страница с описанием.

Примеры

свернуть все

Создайте сигнал, состоящий из двух синусоид в аддитивном шуме.

Fs = 32e3;
t = 0:1/Fs:1-1/Fs;
x = cos(2*pi*t*1.24e3)+cos(2*pi*t*10e3)+randn(size(t));

Вычислите одностороннюю оценку PSD сигнала. Используйте результат создать dspdata объект. Постройте среднеквадратический спектр.

P = periodogram(x,[],[],Fs);

Hmss = dspdata.msspectrum(P,'Fs',Fs,'spectrumtype','onesided'); 

plot(Hmss)

Смотрите также

|

Представлено до R2006a