mkfilter 2nd order Bessel bug?
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hello, in the mkfilter() function of the Robust Control Toolbox, I am unable to create a 2nd order Bessel filter, I receive
>> bess = mkfilter(1,2,'bessel');
Undefined function 'ssdata' for input arguments of type 'double'.
.
3rd order works though:
>> bess = tf(mkfilter(1,3,'bessel'))
Transfer function:
1240
-------------------------------
s^3 + 37.7 s^2 + 592.2 s + 1240
Is this a bug in mkfilter? Or is there some theoretical impossibility of a 2nd order Bessel filter?
0 commentaires
Réponses (1)
Zack Peters
le 25 Oct 2013
Hi,
This does look to be a possible bug in MKFILTER. Fortunately, the code for MKFILTER is accessible. If you got to lines 60 and 62 of mkfilter.m and change them from:
sys = nd2sys(1,b1);
sys = nd2sys(1,b2);
respectively to:
sys = tf(1,b1);
sys = tf(1,b2);
Then you may be able to get the desired output that you are looking for.
~Zack
0 commentaires
Voir également
Catégories
En savoir plus sur Bessel functions dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!