Red de conocimiento informático - Material del sitio web - Cómo utilizar Matlab para implementar la convolución de dos secuencias de longitud finita

Cómo utilizar Matlab para implementar la convolución de dos secuencias de longitud finita

Principios matemáticos básicos

Supongamos que hay dos secuencias arbitrarias de longitud finita A(n) y B(n), donde las expresiones matemáticas precisas de A(n) y B(n) se muestran en la Figura 1 a continuación. . Entonces, la convolución de estas dos secuencias de longitud finita debería ser C (n) = A (n) * B (n), y su expresión específica se muestra en la Figura 2 a continuación.

2

Funciones de correlación

Los comandos conv y deconv en Matlab no solo se pueden usar para la multiplicación y división de polinomios, sino también para la convolución y solución. de dos secuencias de longitud finita.

El formato de sintaxis de la función conv proporcionada por Matlab es: w=conv(u, v), donde u y v son vectores de secuencias de longitud finita y w es el vector de secuencia después de la convolución de u. y v. Si las longitudes de los vectores u y v son N y M respectivamente, entonces la longitud del vector w es N+M-1. Si los vectores u y v son coeficientes de dos polinomios, entonces w es el coeficiente del producto de los dos polinomios. Echemos un vistazo a la directiva deconv. Función: Encuentra la deconvolución de un vector y realiza una división polinómica. Formato de sintaxis: [q,r]=deconv(v,u), los parámetros q y r devuelven el polinomio cociente y el polinomio resto del polinomio v dividido por el polinomio u respectivamente. Consulte el siguiente paso para ver ejemplos específicos.

3

Ejemplos de instrucciones conv y deconv

Consulte a continuación ejemplos específicos. Encontraremos la diferencia entre polinomio (x2+2x+1) y polinomio. (2x2+x +3), y luego encuentra el cociente del producto y (x2+2x+1). Tenga en cuenta que el vector c representa el polinomio (2x4+5x3+7x2+7x+3).

FIN

Ejemplo de convolución de dos secuencias de longitud finita

Forma matemática de una secuencia específica

En este paso, comenzamos con La forma matemática muestra una secuencia de longitud finita específica como se muestra a continuación.

Solución 1: convolución por turnos

En este ejemplo, realizaremos el cálculo de convolución de acuerdo con el primer paso del método principal en la Figura 2, es decir, convolución por turnos. . Consulte la figura a continuación para conocer el código y los resultados específicos. La Figura 1 es el proceso de generación de una serie de tiempo de longitud finita. La Figura 2 es el código específico para la convolución según el primer paso del método principal en la Figura 2, es decir, el método de suma cíclica. Figura 2.

Solución 2: método de secuencia de punto de partida 0

El siguiente es el segundo método, es decir, el "método de secuencia de punto de partida 0". Las instrucciones utilizadas son las instrucciones que presentamos en. las instrucciones de la función conv. El código específico se muestra en la siguiente figura.

Solución 3: método de secuencia de intervalos no ternarios

El siguiente es el segundo método, el "método de secuencia de punto de partida 0", la instrucción utilizada es la función conv que introdujimos en el instrucción del método principal. El código específico se muestra en la siguiente figura. La Figura 1 es el código del cálculo y la Figura 2 es el resultado del cálculo.

Dibujar un gráfico comparativo

En este paso, dibujamos los resultados del cálculo de la segunda solución y la tercera solución en un gráfico para comparar. El primero es el cálculo de ". 0 método del punto de partida". Como resultado, el segundo es el resultado del cálculo del "método del intervalo no trigémino". system(kc,CC),text(18,6,'método de intervalo no trivial') % extrae el resultado de resolver el método III

xlabel('n')

6

Resumen

Con lo anterior se puede concluir lo siguiente:

1. “Solución Tres” La “Solución Tres” es la más sencilla y versátil;

p >

2. La "Solución 2" se usa cuando N1 o (y) M1 es menor que 0 al comienzo de la secuencia, lo cual es más difícil

3. los más engorrosos e ineficientes.

3.