Степень спектральная плотность фильтра выход, должный округлять шум
hpsd = noisepsd(sysobj,L)
hpsd = noisepsd(sysobj,L,param1,value1,param2,value2,...)
hpsd = noisepsd(sysobj,L,opts)
noisepsd(sysobj,...)
hpsd = noisepsd(sysobj,L)
вычисляет степень спектральную плотность (PSD) при выходе Системы фильтра object™, sysobj
, появление из-за шума округления. Этот шум производится ошибками квантования в фильтре. L
количество испытаний, использовался для расчета среднего значения. PSD вычисляется из среднего значения по L
испытания. Чем больше испытаний вы задаете, тем лучше оценка, но за счет более длительного времени вычисления. Когда вы явным образом не задаете L
, значением по умолчанию являются 10 испытаний.
hpsd
psd
объект данных. Извлекать вектор PSD (данные из PSD) от hpsd
, войти
get(hpsd,'data')
в подсказке. Отобразите данные PSD на графике с plot(hpsd)
. Средняя степень выходного шума (интеграл PSD) может быть вычислена с avgpower
, метод dspdata
объекты:
avgpwr = avgpower(hpsd).
hpsd = noisepsd(sysobj,L,param1,value1,param2,value2,...)
где sysobj
Системный объект фильтра, задает дополнительные параметры через propertyname/propertyvalue пары. Допустимый psd
значения свойства объекта:
PropertyName | Значение по умолчанию | Описание и действительные доступы |
---|---|---|
| 512 | Укажите, что количество БПФ указывает, чтобы использовать, чтобы вычислить PSD. |
|
| Определите, использовать ли нормированную частоту. Введите логическое значение |
|
| Задайте частоту дискретизации, чтобы использовать, когда вы установите |
|
| Задайте как
|
|
| Переключите нулевую частотную составляющую в центр двухстороннего спектра.
|
Arithmetic | ARITH | Анализируйте Системный объект фильтра, на основе арифметики, заданной в ARITH входной параметр. ARITH может быть установлен в double единственный , или fixed . Аналитический инструмент принимает фильтр с двойной точностью, когда арифметический вход не задан, и Системный объект фильтра находится в разблокированном состоянии. |
Если данные о спектре, которые вы задаете, вычисляются более чем половина интервала Найквиста, и вы не задаете соответствующий вектор частоты, вектор частоты по умолчанию принимает, что число точек в целом БПФ было четным. Кроме того, опция графика, чтобы преобразовать в целый или двухсторонний спектр принимает, что исходная общая длина БПФ является четной.
noisepsd
требует знания типа входных данных. Анализ не может быть выполнен, если тип входных данных не доступен. Если вы не задаете Arithmetic
параметр, т.е. использование синтаксис [h,w] = noisepsd(sysobj)
, затем следующие правила применяются к этому методу:
Состоянием Системного объекта является Unlocked
— noisepsd
выполняет анализ с двойной точностью.
Состоянием Системного объекта является Locked
— noisepsd
выполняет анализ на основе заблокированного типа входных данных.
Если вы действительно задаете Arithmetic
параметр, т.е. использование синтаксис [h,w] = noisepsd(sysobj,'Arithmetic', ARITH)
, рассмотрите следующие правила для этого метода. То, которое применяет правило, зависит от значения, которое вы устанавливаете для Arithmetic
параметр.
Value | Состояние системного объекта | Правило |
---|---|---|
ARITH = 'double' | Unlocked | noisepsd выполняет анализ с двойной точностью. |
Locked | noisepsd выполняет анализ с двойной точностью. | |
ARITH = 'single' | Unlocked | noisepsd выполняет анализ с одинарной точностью. |
Locked | noisepsd выполняет анализ с одинарной точностью. | |
ARITH = 'fixed' | Unlocked | noisepsd производит ошибку, потому что тип входных данных фиксированной точки неизвестен. |
Locked | Когда тип входных данных является двойным или одним, затем noisepsd производит ошибку, потому что, поскольку тип входных данных фиксированной точки неизвестен. | |
Когда входные данные имеют фиксированную точку, noisepsd выполняет анализ на основе заблокированного типа входных данных. |
Следующие Системные объекты Фильтра поддерживаются этой аналитической функцией:
hpsd = noisepsd(sysobj,L,opts)
использует объект опций, opts
, задавать дополнительные входные параметры. Эта спецификация не сделана с помощью пар значения свойства в команде. Используйте opts = noisepsdopts(sysobj)
создать объект. opts
затем имеет noisepsd
настройки от sysobj
. После создания opts
, вы изменяете значения свойств прежде, чем вызвать noisepsd
:
set(opts,'fs',48e3); % Set Fs to 48 kHz.
noisepsd(sysobj,...)
без выходного аргумента запускает fvtool.
[1] Макклеллан, и др., Компьютерные Упражнения для Обработки сигналов Используя MATLAB 5. Верхний Сэддл-Ривер, Нью-Джерси: Prentice Hall, 1998.