Butterworth filter design calls bilinear and fails

37 visualizaciones (últimos 30 días)
Sam Kastner
Sam Kastner el 19 de En. de 2021
Comentada: Sam Kastner el 22 de En. de 2021
I am attempting to set up a simple low-pass Butterworth filter using the following line of code:
[b,a]=butter(2,1/8,'low');
This produces the following error(s):
Error using bilinear
Too many output arguments.
Error in butter>butterImpl (line 130)
[ad,bd,cd,dd] = bilinear(ad,bd,cd,dd,fs);
Error in butter (line 59)
[varargout{1:nargout}] = butterImpl(n,Wn,varargin{:});
As far as I can tell, this is a valid call of bilinear (i.e. five inputs, four outputs). Can anyone replicate this problem? I'm using R2020b Update 3 with the signal processing toolbox. I haven't changed the butter function at all.
  2 comentarios
Mathieu NOE
Mathieu NOE el 20 de En. de 2021
hi
it works on my R2020b Update 1
>> [b,a]=butter(2,1/8,'low');
>> b
b =
0.0300 0.0599 0.0300
>> a
a =
1.0000 -1.4542 0.5741
Sam Kastner
Sam Kastner el 20 de En. de 2021
After a full reinstall, this doesn't seem to be an issue any more.

Iniciar sesión para comentar.

Respuesta aceptada

Adam Danz
Adam Danz el 20 de En. de 2021
Editada: Adam Danz el 22 de En. de 2021
You likely had another file on your Matlab path with the same name as butter. If the error happens again, the following command will show all functions and files of that name and will indicate which one you're using. Remove the path(s) to the functions that don't point to Matlab's butter() or rename the custom files/functions.
which butter -all
should point to \toolbox\signal\signal\butter.m (in r2020b).
  1 comentario
Sam Kastner
Sam Kastner el 22 de En. de 2021
Yes, serves me right for blindly adding a folder of third party functions to my path. Thanks!

Iniciar sesión para comentar.

Más respuestas (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by