Funciones útiles de la biblioteca. Más...
Funciones | |
int | pds_vector_lowpass_butterworth (PdsVector *hnum, PdsVector *hden, PdsDfReal Wn) |
Encuentra el numerador y denominador de un filtro Butterworth pasa bajo. Ambos vectores de entrada tienen la misma longitud Nel y Nel-1 es el orden N del filtro Butterworth. Más... | |
PdsVector * | pds_vector_new_butterworth_hnum (PdsDfNatural Order, PdsDfReal Wn) |
Encuentra el numerador de un filtro Butterworth pasa bajo de orden Order. Más... | |
PdsVector * | pds_vector_new_butterworth_hden (PdsDfNatural Order, PdsDfReal Wn) |
Encuentra el denominador de un filtro Butterworth pasa bajo de orden Order. Más... | |
int | pds_vector_iir_frequency_response (const PdsVector *hnum, const PdsVector *hden, PdsVector *H) |
Encuentra el módulo de la respuesta en frecuencia, normalizada de 0 a pi del filtro digital conformado por el numerador hnum y denominador hden. Más... | |
int | pds_vector_lowpass_rectangular (PdsVector *h, PdsDfReal Wn) |
Encuentra los coeficientes de un filtro FIR pasa bajo. Usando el método de la ventana, con ventana rectangular. Más... | |
PdsVector * | pds_vector_new_lowpass_rectangular (PdsDfNatural N, PdsDfReal Wn) |
Devuelve un vector con los coeficientes de un filtro FIR pasa bajo. Usando el método de la ventana, con ventana rectangular. Más... | |
int | pds_vector_lowpass_hamming (PdsVector *h, PdsDfReal Wn) |
Encuentra los coeficientes de un filtro FIR pasa bajo. Usando el método de la ventana, con ventana de Hamming. Más... | |
PdsVector * | pds_vector_new_lowpass_hamming (PdsDfNatural N, PdsDfReal Wn) |
Devuelve un vector con los coeficientes de un filtro FIR pasa bajo. Usando el método de la ventana, con ventana de Hamming. Más... | |
int | pds_vector_lowpass_hanning (PdsVector *h, PdsDfReal Wn) |
Encuentra los coeficientes de un filtro FIR pasa bajo. Usando el método de la ventana, con ventana de Hanning. Más... | |
PdsVector * | pds_vector_new_lowpass_hanning (PdsDfNatural N, PdsDfReal Wn) |
Devuelve un vector con los coeficientes de un filtro FIR pasa bajo. Usando el método de la ventana, con ventana de Hanning. Más... | |
int | pds_vector_fir_frequency_response (const PdsVector *h, PdsVector *H) |
Encuentra el módulo de la respuesta en frecuencia, normalizada de 0 a pi del filtro digital conformado por el numerador h. Más... | |
int | pds_vector_lowpass_to_highpass (PdsVector *H) |
Carga un vector con . Tranforma un filtro pasa bajo con un corte en Wc a un filtro pasa alto con un corte en PI-Wc. Más... | |
PdsVector * | pds_vector_new_lowpass_to_highpass (const PdsVector *H) |
Retorna un vector con . Tranforma un filtro pasa bajo con una frecuencia de corte en Wc a un filtro pasa alto con un corte en PI-Wc. Más... | |
PdsVector * | pds_vector_new_lowpass_to_bandpass (const PdsVector *H) |
Retorna un vector con . Crea a partir de un filtro pasa bajoo con un corte en Wc un filtro pasa banda centrado en (PI/2) con ancho de banda Wc. Más... | |
PdsVector * | pds_vector_new_lowpass_to_bandreject (const PdsVector *H) |
Retorna un vector con . Crea a partir de un filtro pasa bajo con un corte en Wc un filtro rechaza banda centrado en (PI/2) con ancho de rechaza banda PI-Wc. Más... | |
Funciones útiles de la biblioteca.
int pds_vector_lowpass_butterworth | ( | PdsVector * | hnum, |
PdsVector * | hden, | ||
PdsDfReal | Wn | ||
) |
Encuentra el numerador y denominador de un filtro Butterworth pasa bajo. Ambos vectores de entrada tienen la misma longitud Nel y Nel-1 es el orden N del filtro Butterworth.
Teoría
Usa una transformación bi-linear
Con una frecuencia de corte igual a Por comodidad es escogido
[out] | hnum | Coeficientes del numerador del filtro digital. |
[out] | hden | Coeficientes del denominador del filtro digital. |
[in] | Wn | Número entre 0 y 1.0 que indica la proporción de PI, para la frecuencia de corte del filtro digital. |
PdsVector * pds_vector_new_butterworth_hnum | ( | PdsDfNatural | Order, |
PdsDfReal | Wn | ||
) |
Encuentra el numerador de un filtro Butterworth pasa bajo de orden Order.
Teoría
Usa una transformación bi-linear
Con una frecuencia de corte igual a Por comodidad es escogido
[in] | Order | Orden del filtro Butterworth. |
[in] | Wn | Número entre 0 y 1.0 que indica la proporción de PI, para la frecuencia de corte del filtro digital. |
PdsVector * pds_vector_new_butterworth_hden | ( | PdsDfNatural | Order, |
PdsDfReal | Wn | ||
) |
Encuentra el denominador de un filtro Butterworth pasa bajo de orden Order.
Teoría
Usa una transformación bi-linear
Con una frecuencia de corte igual a Por comodidad es escogido
[in] | Order | Orden del filtro Butterworth. |
[in] | Wn | Número entre 0 y 1.0 que indica la proporción de PI, para la frecuencia de corte del filtro digital. |
int pds_vector_iir_frequency_response | ( | const PdsVector * | hnum, |
const PdsVector * | hden, | ||
PdsVector * | H | ||
) |
Encuentra el módulo de la respuesta en frecuencia, normalizada de 0 a pi del filtro digital conformado por el numerador hnum y denominador hden.
El numero de puntos analizados en la respuesta en frecuencia, es el número de elementos del vector H. Los datos de H serán sobrescritos.
Teoría
[in] | hnum | Coeficientes del numerador del filtro digital. |
[in] | hden | Coeficientes del denominador del filtro digital. |
[out] | H | Donde se guardará el módulo cuadrado de la respuesta en frecuencia del filtro digital. |
int pds_vector_lowpass_rectangular | ( | PdsVector * | h, |
PdsDfReal | Wn | ||
) |
Encuentra los coeficientes de un filtro FIR pasa bajo. Usando el método de la ventana, con ventana rectangular.
Teoría:
[out] | h | Donde se guardarán los coeficientes del filtro digital. |
[in] | Wn | Número entre 0 y 1.0 que indica la proporción de PI, para la frecuencia de corte del filtro digital. Wn indica una frecuencia de corte a Wn*Fs/2, donde Fs es la frecuencia de muestreo. |
PdsVector * pds_vector_new_lowpass_rectangular | ( | PdsDfNatural | N, |
PdsDfReal | Wn | ||
) |
Devuelve un vector con los coeficientes de un filtro FIR pasa bajo. Usando el método de la ventana, con ventana rectangular.
Teoría:
[in] | N | Orden del filtro FIR. |
[in] | Wn | Número entre 0 y 1.0 que indica la proporción de PI, para la frecuencia de corte del filtro digital. Wn indica una frecuencia de corte a Wn*Fs/2, donde Fs es la frecuencia de muestreo. |
int pds_vector_lowpass_hamming | ( | PdsVector * | h, |
PdsDfReal | Wn | ||
) |
Encuentra los coeficientes de un filtro FIR pasa bajo. Usando el método de la ventana, con ventana de Hamming.
Teoría:
[out] | h | Donde se guardarán los coeficientes del filtro digital. |
[in] | Wn | Número entre 0 y 1.0 que indica la proporción de PI, para la frecuencia de corte del filtro digital. Wn indica una frecuencia de corte a Wn*Fs/2, donde Fs es la frecuencia de muestreo. |
PdsVector * pds_vector_new_lowpass_hamming | ( | PdsDfNatural | N, |
PdsDfReal | Wn | ||
) |
Devuelve un vector con los coeficientes de un filtro FIR pasa bajo. Usando el método de la ventana, con ventana de Hamming.
Teoría:
[in] | N | Orden del filtro FIR. |
[in] | Wn | Número entre 0 y 1.0 que indica la proporción de PI, para la frecuencia de corte del filtro digital. Wn indica una frecuencia de corte a Wn*Fs/2, donde Fs es la frecuencia de muestreo. |
int pds_vector_lowpass_hanning | ( | PdsVector * | h, |
PdsDfReal | Wn | ||
) |
Encuentra los coeficientes de un filtro FIR pasa bajo. Usando el método de la ventana, con ventana de Hanning.
Teoría:
[out] | h | Donde se guardarán los coeficientes del filtro digital. |
[in] | Wn | Número entre 0 y 1.0 que indica la proporción de PI, para la frecuencia de corte del filtro digital. Wn indica una frecuencia de corte a Wn*Fs/2, donde Fs es la frecuencia de muestreo. |
PdsVector * pds_vector_new_lowpass_hanning | ( | PdsDfNatural | N, |
PdsDfReal | Wn | ||
) |
Devuelve un vector con los coeficientes de un filtro FIR pasa bajo. Usando el método de la ventana, con ventana de Hanning.
Teoría:
[in] | N | Orden del filtro FIR. |
[in] | Wn | Número entre 0 y 1.0 que indica la proporción de PI, para la frecuencia de corte del filtro digital. Wn indica una frecuencia de corte a Wn*Fs/2, donde Fs es la frecuencia de muestreo. |
int pds_vector_fir_frequency_response | ( | const PdsVector * | h, |
PdsVector * | H | ||
) |
Encuentra el módulo de la respuesta en frecuencia, normalizada de 0 a pi del filtro digital conformado por el numerador h.
Teoría
[in] | h | Coeficientes del filtro digital. |
[out] | H | Donde se guardará el módulo cuadrado de la respuesta en frecuencia del filtro digital. |
int pds_vector_lowpass_to_highpass | ( | PdsVector * | H | ) |
Carga un vector con . Tranforma un filtro pasa bajo con un corte en Wc a un filtro pasa alto con un corte en PI-Wc.
En realidad lo que hace es un corrimiento de PI de la respuesta en frecuencia. Que es equivalente a cambiar el valor de Z por -Z.
[in,out] | H | Donde se encuentra el filtro pasa bajo y donde se guardará el filtro pasa alto. |
PdsVector * pds_vector_new_lowpass_to_highpass | ( | const PdsVector * | H | ) |
Retorna un vector con . Tranforma un filtro pasa bajo con una frecuencia de corte en Wc a un filtro pasa alto con un corte en PI-Wc.
En realidad lo que hace es un corrimiento de PI de la respuesta en frecuencia. Que es equivalente a cambiar el valor de Z por -Z.
[in] | H | Donde se encuentra el filtro pasa bajo y donde se guardará el filtro pasa alto. |
PdsVector * pds_vector_new_lowpass_to_bandpass | ( | const PdsVector * | H | ) |
Retorna un vector con . Crea a partir de un filtro pasa bajoo con un corte en Wc un filtro pasa banda centrado en (PI/2) con ancho de banda Wc.
En realidad lo que hace es comprimir toda respuesta en frecuencia de [-PI,PI] a [-PI/2,PI/2] y dislocarla a PI/2 y -PI/2. Que es equivalente a cambiar el valor de Z por -Z^2. Conociendo que Nel es el numero de elementos de H, entonces el vector entregado tendrá 2N-1 elementos.
[in] | H | Donde se encuentra el filtro pasa bajo. |
PdsVector * pds_vector_new_lowpass_to_bandreject | ( | const PdsVector * | H | ) |
Retorna un vector con . Crea a partir de un filtro pasa bajo con un corte en Wc un filtro rechaza banda centrado en (PI/2) con ancho de rechaza banda PI-Wc.
En realidad lo que hace es comprimir toda respuesta en frecuencia de [-PI,PI] a [-PI/2,PI/2] y dislocarla a 0, PI y -PI. Que es equivalente a cambiar el valor de Z por Z^2. Conociendo que Nel es el número de elementos de H, entonces el vector entregado tendrá 2N-1 elementos.
[in] | H | Donde se encuentra el filtro pasa bajo. |