matlab19

Polinomios en Matlab

Las operaciones algebraicas con polinomios requieren declarar un vector con los coeficientes del polinomio.

Sean los polinomios A(x)= x3 + 4x2 + 6x + 8  ,  B(x)= x3 + 3x2 + 5x +12  y  C(x)= 2x3 + 5x – 4

en Matlab los polinomios se define así:

A = [1 4 6 8]
B = [1 3 5 12]
C = [2 0 5 -4]

observe que la carencia de un término se debe declarar colocando cero para respetar la posición de cada término.

Producto de polinomios

Para multiplicar ambos polinomios se multiplica cada término del primer polinomio por cada término del segundo polinomio, luego se suman los productos semejantes. Los términos se ordenan de mayor a menor grado. Ejemplo. Multiplicar los polinomios

La Multiplicación de polinomios en Matlab se realiza con ayuda del comando convolución. El producto se obtiene escribiendo lo siguiente:

M = conv(A,B)

el resultado es

M =
1   7   23   58   102   112    96

que corresponde al polinomio de sexto grado

M(x) = x6 + 7x5 + 23x4 + 58x3  + 102x2 + 112x + 96

División

La división es la desconvolución de un polinomio de mayor grado por otro de igual o menor grado.

La función desconvolución puede usarse para dividir un polinomio entre otro. Por ejemplo,

>>[q,r] = deconv(c, d)

Ejemplo

Para dividir un polinomio por otro se ordena de mayor a menor grado cada polinomio y se busca un múltiplo de divisor que permita eliminar a cada término del dividendo hasta obtener un cero o residuo.

Dividir x5 -x4 – x3 – 7x2 – 5x + 3  por x2 -3x +1

Produce el vector q que muestra los coeficientes del polinomio cociente, y el vector r son los coeficientes del polinomio residuo.

G = [1 -1 -1 -7 -5 3]
a = [1 -3 1]
[q,r]=deconv(G,A)
q = 1 2 4 3
r = 0 0 0 0 0 0 0

Verificar que los resultados siguientes son válidos

[q,r]=deconv(B,A)
q = 1
r = 0 -1 -1 4
[q,r]=deconv(B,M)
q = 0
r = 1 3 5 12

Adición

MATLAB no mantiene una función directa proveniente del polinomio. La suma de polinomios se da si ambos vectores son del mismo tamaño. Sumando los polinomios anteriores en MATLAB esto es:

>> D = A + B
D  =
2     7     11     20

Expresado algebraicamente como D( x ) = 2x3 + 7x2 + 11x + 20

Cuando dos polinomios son de orden diferente, en el polinomio de más bajo orden se le deben colocar ceros para hacerlo del mismo orden,  como en el siguiente ejemplo.

Considere la suma de los polinomios C y D escribiendo en MATLAB:

>> E = C + [0 0 0 D]
E  =
1   7   23   60   109   123     116

la respuesta es un polinomio de sexto grado

E(x) = x6 + 7 x5 + 23x4 + 60x3 + 109x2 + 123x + 116


Derivación

Para llevar a cabo la realización de la derivada se usa la función  polyder en MATLAB.

Se tiene el polinomio E(x) = x6 + 7 x5 + 23x4 + 60x3 + 109x2 + 123x + 116

>> P = [ 1  7  23  60  109  123  116 ] ;
>> F = polyder (P)
F   = 6    35     92     180      218     123

el resultado  de la derivación es un polinomio de quinto grado

F = 6x5  + 35x4 + 92x3 + 180x2 + 218x + 123