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) использует среднеквадратические данные о спектре, содержавшиеся в векторах Frequencies и Data.

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