Comando FILTER
Publicado por Pablo (8 intervenciones) el 18/08/2007 04:19:16
Hola a todos, tengo la siguiente consulta sobre el comando FILTER. Miré en la página de ayuda de Matlab, pero no logro entender la explicación. En estas dos direcciones hayé explicaciones similares:
http://www.mathworks.com/access/helpdesk/help/techdoc/index.html?/access/helpdesk/help/techdoc/ref/filtertimeseries.html
http://www.mathworks.com/access/helpdesk/help/techdoc/index.html?/access/helpdesk/help/techdoc/ref/filter.html
Mi duda es la siguiente. La idea es que al hacer Y=filter(b,a,X) se forma el vector Y usando los vectores X, "a" y "b" (estos dos últimos pueden ser escalares). La fórmula utilizada para formar cada elemento en Y es:
y(n) = b(1)*x(n) + b(2)*x(n-1) + ... + b(nb+1)*x(n-nb)
- a(2)*y(n-1) - ... - a(na+1)*y(n-na)
Lo que no entiendo es cómo interpreto los b(·) y a(·). Me imagino que se lee igual que para Y(·) o X(·), es decir, b(1) sería el primer elemento del vector b, y si b es un escalar, sería ese número en todos los casos. Asímismo, Y(n) sería el n-ésimo elemento del vector Y. ¿Estoy bien?
Si es como lo pienso, ¿cómo interpreto b(nb+1)? Si b=[5 7], entonces b(1)=5, b(2)=7, n es el número de elementos de Y y X (son de igual dimensión), pero, ¿qué valor asigno a b, de modo de construir nb+1?
Espero haber dejado clara mi consulta, y que alguien me dé una mano con esto, pues he tratado de aplicar la fórmula manualmente con números simples, luego comparo con lo que me da Matlab, y no coincide. Necesito saber qué hace FILTER, para poder utilizarlo.
Muchas gracias!
Pablo
http://www.mathworks.com/access/helpdesk/help/techdoc/index.html?/access/helpdesk/help/techdoc/ref/filtertimeseries.html
http://www.mathworks.com/access/helpdesk/help/techdoc/index.html?/access/helpdesk/help/techdoc/ref/filter.html
Mi duda es la siguiente. La idea es que al hacer Y=filter(b,a,X) se forma el vector Y usando los vectores X, "a" y "b" (estos dos últimos pueden ser escalares). La fórmula utilizada para formar cada elemento en Y es:
y(n) = b(1)*x(n) + b(2)*x(n-1) + ... + b(nb+1)*x(n-nb)
- a(2)*y(n-1) - ... - a(na+1)*y(n-na)
Lo que no entiendo es cómo interpreto los b(·) y a(·). Me imagino que se lee igual que para Y(·) o X(·), es decir, b(1) sería el primer elemento del vector b, y si b es un escalar, sería ese número en todos los casos. Asímismo, Y(n) sería el n-ésimo elemento del vector Y. ¿Estoy bien?
Si es como lo pienso, ¿cómo interpreto b(nb+1)? Si b=[5 7], entonces b(1)=5, b(2)=7, n es el número de elementos de Y y X (son de igual dimensión), pero, ¿qué valor asigno a b, de modo de construir nb+1?
Espero haber dejado clara mi consulta, y que alguien me dé una mano con esto, pues he tratado de aplicar la fórmula manualmente con números simples, luego comparo con lo que me da Matlab, y no coincide. Necesito saber qué hace FILTER, para poder utilizarlo.
Muchas gracias!
Pablo
Valora esta pregunta


0