Полная версия этой страницы:
фильтр бесселя в матлаб
shf_05
Sep 19 2008, 05:05
можно ли рассчитать цифровой фильтр бесселя в матлабе в версии 7,0 нашел только аналоговый?
А как же fdatool целый пакет в матлабе для рассчета фильтров.
shf_05
Sep 19 2008, 09:18
Цитата(uriy @ Sep 19 2008, 14:48)

А как же fdatool целый пакет в матлабе для рассчета фильтров.
список доступного в FDA БИХ фильтры:
buterwort
chebishev1
chebishev2
elliptic
max flat
least P-norm
const least P-norm
AsJohnAs
Sep 23 2008, 08:39
Ну в Matlab есть неплохой хелп. Вот в нем указано что есть функция:
besselj
Bessel function of first kind
Syntax
J = besselj(nu,Z)
J = besselj(nu,Z,1)
[J,ierr] = besselj(nu,Z)
shf_05
Sep 26 2008, 07:18
Цитата(AsJohnAs @ Sep 23 2008, 14:39)

Ну в Matlab есть неплохой хелп. Вот в нем указано что есть функция:
besselj
Bessel function of first kind
Syntax
J = besselj(nu,Z)
J = besselj(nu,Z,1)
[J,ierr] = besselj(nu,Z)
я знаю про неплохость хелпа в матлабе)). фильтр бесселя и функция бесселя к-го порядка от аргумента нужны для разных задач (если я не ошибаюсь конечно), см. все тот же хелп.
AsJohnAs
Sep 26 2008, 20:17
Но ведь передаточная функция фильтров Бесселя записывается в виде отношения коэффициента к функци Бесселя n-го порядка.
Так что вроде все есть.
shf_05
Sep 30 2008, 11:35
Цитата(AsJohnAs @ Sep 27 2008, 02:17)

Но ведь передаточная функция фильтров Бесселя записывается в виде отношения коэффициента к функци Бесселя n-го порядка.
Так что вроде все есть.
если можно опишите поподробнее, как из функции бесселя получить фильтр бесселя скажем 4-го порядка, частота Fs=8000, Fpass= 500?
AsJohnAs
Sep 30 2008, 18:49
Цитата(shf_05 @ Sep 30 2008, 15:35)

если можно опишите поподробнее, как из функции бесселя получить фильтр бесселя скажем 4-го порядка, частота Fs=8000, Fpass= 500?
Ну можно например так:
[b,a]=besself(5,500);
f=0:1:8000;
freqs(b,a,f);
Цитата(AsJohnAs @ Oct 1 2008, 00:49)

Ну можно например так:
[b,a]=besself(5,500);
f=0:1:8000;
freqs(b,a,f);
что-то мы др. др. не понимаем:
besself- это аналоговый фильтр, а как из него сделать цифровой?
Вы писали про besselj, вот я спрашивал "если можно опишите поподробнее, как из функции бесселя получить фильтр бесселя скажем 4-го порядка, частота Fs=8000, Fpass= 500?"
AsJohnAs
Oct 3 2008, 09:03
Мндя... да я не прав.
Да и ответ у меня тогда не такой уж и простой будет...
Правельно это сделать через расчет полюсов т.д. а там ведь функция бесселя у которой нули ваще какие-то не такие...
Вообщем есть такая идея:
[b,a]=besself(5,0.2); % надо нормированную частоту, а то весь матлаб плющит
randn('state',0);
noise = randn(50000,1);
x=filter(b,a,noise);
h = lpc(x,15);
Вообщем применям линейное предсказание. Вообщем задачу можно решить быстро и с нужной точностью, но так сказать "в лоб".
А и еще: h - это импульсная которую можно и в fdatool загнать
дак все это ясно, не хочется велосипед изобретать,....
PS: а есть еще ф-я impinvar.
PlainUser
Apr 19 2016, 06:39
Нужен фильтр бесселя в fdatools , не нашел.
Может он там есть но я его не вижу?
Ну скажем "maximaly flat" это не он случайно?
Fat Robot
Apr 19 2016, 06:58
doc besselap
doc bilinear
doc zp2tf
PlainUser
Apr 21 2016, 05:41
Цитата(PlainUser @ Apr 19 2016, 09:39)

Нужен фильтр бесселя в fdatools , не нашел.
Может он там есть но я его не вижу?
Ну скажем "maximaly flat" это не он случайно?
Расследование выявило что в матлабе цифровой фильтр бесселя отсутствует принципиально.
Ввиду ....
" Аналоговые фильтры Бесселя характеризуются практически постоянной групповой задержкой в полосе пропускания, что позволяет сохранить форму пропускаемых через фильтр сигналов (если их спектр сосредоточен в полосе пропускания фильтра). Дискретные фильтры Бесселя не сохраняют это свойство, поэтому функция besself не реализует синтез дискретных фильтров Бесселя."
Его можно родить но это будет не он.
Fat Robot
Apr 21 2016, 08:50
Вполне сохраняют, если Fc < Fs/4
Цитата(PlainUser @ Apr 21 2016, 09:41)

Дискретные фильтры Бесселя не сохраняют это свойство, поэтому функция besself не реализует синтез дискретных фильтров Бесселя.
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.