MatLab. signal processing -> window disign

eiyawii
Сообщения: 60
Зарегистрирован: 20 окт 2011, 07:38

MatLab. signal processing -> window disign

Сообщение eiyawii »

При синтезе окна как-то криво нормируются коэффициенты, то есть амплитудно-частотная характеристика несколько приподнята вверх.
Изображение
значения функции начинаются не от 0 дБ, а от 30 дБ, а мне, как вы понимаете, усиление не нужно:) вопрос: матлаб может нормально считать?

mks
Сообщения: 16
Зарегистрирован: 18 окт 2010, 11:04

Re: MatLab. signal processing -> window disign

Сообщение mks »

А в чём проблема самому нормировать усиление ? Вам усиление не нужно, кому то нужно на всех не угодишь. :D

eiyawii
Сообщения: 60
Зарегистрирован: 20 окт 2011, 07:38

Re: MatLab. signal processing -> window disign

Сообщение eiyawii »

mks писал(а):А в чём проблема самому нормировать усиление ? Вам усиление не нужно, кому то нужно на всех не угодишь. :D
понимаете, функции в матлабе написаны разработчиками, это не моя программа, чтоб я в ней копался. скажите, в каких случаях у оконных функциях нужно усиление?
поэтому собственно и спрашиваю почему такая ерунда в матлабе. причем где-то на экспоненте.ру видел графику из матлаба и там тоже АЧХ была приподнята.

mks
Сообщения: 16
Зарегистрирован: 18 окт 2010, 11:04

Re: MatLab. signal processing -> window disign

Сообщение mks »

eiyawii писал(а): понимаете, функции в матлабе написаны разработчиками, это не моя программа, чтоб я в ней копался.
Я не предлагаю лезть в код матлаба, а самому поставить усиление какое вам надо примерно так:

Код: Выделить всё

w = kaiser(32,4);
usilenie = 1;
w = w ./ sum(w) * usilenie;
fvtool(w);
Изображение
eiyawii писал(а): скажите, в каких случаях у оконных функциях нужно усиление?
Я обычно при синтезе цифровых фильтров таким образом подгоняю усиление фильтра под максимальный размах разрядности выхода.

eiyawii
Сообщения: 60
Зарегистрирован: 20 окт 2011, 07:38

Re: MatLab. signal processing -> window disign

Сообщение eiyawii »

mks писал(а):
eiyawii писал(а): скажите, в каких случаях у оконных функциях нужно усиление?
Я обычно при синтезе цифровых фильтров таким образом подгоняю усиление фильтра под максимальный размах разрядности выхода.
то есть чтобы усиление не было меньше единицы в полосе пропускания?

остальное всё понятно, спасибо.

mks
Сообщения: 16
Зарегистрирован: 18 окт 2010, 11:04

Re: MatLab. signal processing -> window disign

Сообщение mks »

eiyawii писал(а):то есть чтобы усиление не было меньше единицы в полосе пропускания? остальное всё понятно, спасибо.
Честно говоря даже не знаю что там в полосе происходит при этом. Я обычно смотрю по переходным характеристикам. Например синтезировал КИХ ФНЧ с 10 битным выходом, и к примеру переходная характеристика у него при этом достигает значения +- 470 вместо +-511. Чтобы не ставить лишние умножители для нормировки, я просто все коэффициенты немного увеличиваю чтобы максимум переходной характеристики совпадал с максимумом разрядной сетки.

eiyawii
Сообщения: 60
Зарегистрирован: 20 окт 2011, 07:38

Re: MatLab. signal processing -> window disign

Сообщение eiyawii »

здесь же (в GUI) есть еще окно Чебышева, но почему-то при написании подобного кода:

Код: Выделить всё

w = chebyshev(32,40);
usilenie = 1;
w = w ./ sum(w) * usilenie;
fvtool(w);
говорит что не знает такой функции: ??? Undefined function or method 'chebyshev'

и собственно можно ли посмотреть код вычисления оконных функций в Матлабе?

Аватара пользователя
Бахурин Сергей
Администратор
Сообщения: 1114
Зарегистрирован: 05 окт 2010, 19:55
Контактная информация:

Re: MatLab. signal processing -> window disign

Сообщение Бахурин Сергей »

окно Чебышева в матлабе называется chebwin a не chebyshev. Чтобы поглядеть описание функции достаточно написать в командной строке написать help chebwin. Чтобы посмотреть как реализована функция надо ввести команду type chebwin

eiyawii
Сообщения: 60
Зарегистрирован: 20 окт 2011, 07:38

Re: MatLab. signal processing -> window disign

Сообщение eiyawii »

Бахурин Сергей писал(а):окно Чебышева в матлабе называется chebwin a не chebyshev. Чтобы поглядеть описание функции достаточно написать в командной строке написать help chebwin. Чтобы посмотреть как реализована функция надо ввести команду type chebwin
спасибо

а есть ли какие-нибудь другие параметрические окна, кроме окон Чебышева, Кайзера, Гаусса?

Ответить