Страница 1 из 1

MatLab. signal processing -> window disign

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

Re: MatLab. signal processing -> window disign

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

Re: MatLab. signal processing -> window disign

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

Re: MatLab. signal processing -> window disign

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

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

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

Re: MatLab. signal processing -> window disign

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

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

Re: MatLab. signal processing -> window disign

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

Re: MatLab. signal processing -> window disign

Добавлено: 06 ноя 2012, 14:35
eiyawii
здесь же (в GUI) есть еще окно Чебышева, но почему-то при написании подобного кода:

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

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

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

Re: MatLab. signal processing -> window disign

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

Re: MatLab. signal processing -> window disign

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

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