Polinomios y fracciones polinómicas
Un polinomio de grado n de coeficientes a1,a2...,an,an+1 es la expresión
a1xn+a2xn-1+...+anx+an+1
en MATLAB se representa por el vector fila p=[a1,a2...,an,an+1]
El polinomio p=x3-2x2+x-2 se representa por el vector p=[1 -2 1 -2]
Los polinomios se pueden representar de forma simbólica mediante la función
>> p=[1 -2 1 -2]; >> poly2sym(p) ans =x^3 - 2*x^2 + x - 2
A su vez un polinomio en forma simbólica se puede convertir en el vector formado por sus coeficientes mediante
>> syms x; >> sym2poly(x^3-2*x-4) ans = 1 0 -2 -4
Valor de un polinomio
Calculamos el valor de polinomio cuando se conoce el valor la variable
Sea p= x5- 3.5x4 + 2.75x3 + 2.125x2 - 3.875x + 1.25
Cuando se expresa un polinomio de forma simbólica se utiliza la función
>> syms x; >> p=x^5-3.5*x^4+2.75*x^3+2.125*x^2-3.875*x+1.25; >> subs(p,x,1.5) ans = -0.6250
La función
>> p=[1 -3.5 2.75 2.125 -3.875 1.25]; >> x=1.5; >> polyval(p,x) ans = -0.6250 >> x=0:0.5:2; >> polyval(p,x) ans = 1.2500 0 -0.2500 -0.6250 0
La función
>> x=-1:0.1:3; >> y=polyval([1 -3.5 2.75 2.125 -3.875 1.25],x); >> plot(x,y) >> grid on >> xlabel('x') >> ylabel('y') >> title('Gráfica de un polinomio')
Suma de polinomios
Queremos sumar los polinomios p1=x3-2x-4 y p2=x2+3x+4
De forma simbólica
>> syms x; >> p1=x^3-2*x-4; >> p2=x^2+3*x+4; >> p1+p2 ans =x^3 + x^2 + x
Para sumar dos polinomios en forma de vectores, los vectores tiene que tener las mismas dimensiones
>> p1=[1 0 -2 -4]; >> p2=[2 3 4]; >> p1+p2 ??? Error using ==> plus Matrix dimensions must agree. >> p2=[0 2 3 4]; >> p1+p2 ans = 1 2 1 0
Producto de dos polinomios
Queremos multiplicar los polinomios p1=x3-2x-4 y p2=x2+3x+4
De forma simbólica
>> syms x; >> p1=x^3-2*x-4; >> p2=x^2+3*x+4; >> p=p1*p2 p =-(x^2 + 3*x + 4)*(- x^3 + 2*x + 4) >> expand(p) ans =x^5 + 3*x^4 + 2*x^3 - 10*x^2 - 20*x - 16
Producto de dos polinomios mediante la función
>> p1=[1 0 -2 -4]; >> p2=[1 3 4]; >> p=conv(p1,p2) p = 1 3 2 -10 -20 -16
Cociente
De forma simbólica
>> syms x; >> p1=x^3+5*x^2+11*x+13; >> p2=x^2+2*x+4; >> p=p1/p2 p =(x^3 + 5*x^2 + 11*x + 13)/(x^2 + 2*x + 4) >> simplify(p) ans =x + (x + 1)/(x^2 + 2*x + 4) + 3
La función
>> p1=[1 5 11 13]; >> p2=[1 2 4]; >> [q r]=deconv(p1,p2) q = 1 3 r = 0 0 1 1
Derivada
La regla de derivación de cada término de un polinomio es
Mediante la función
>> syms x; >> p=x^3+4*x^2-3*x-2; >> diff(p) ans =3*x^2 + 8*x - 3 >> diff(p,2) ans =6*x + 8
La función
>> p=[1 4 -3 -2]; >> polyder(p) ans = 3 8 -3
También calcula la derivada del producto de dos polinomios o del cociente de dos polinomios
>> p1=[1 1]; >> p2=[1 -3]; >> polyder(p1,p2) ans = 2 -2 >> [q d]=polyder(p1,p2) q = -4 d = 1 -6 9
Integral
La integral de cada uno de los términos del polinomio se calcula mediante la fórmula
La función
>> syms x; >> p=4*x^3+4*x^2-2*x-2; >> int(p) ans =x^4 + (4*x^3)/3 - x^2 - 2*x
La función
>> p=[4 4 -2 2]; >> polyint(p) ans = 1.0000 1.3333 -1.0000 2.0000 0
Raíces de un polinomio
Cuando se expresa un polinomio de forma simbólica se utiliza la función
>> syms x; >> p=x^5-3.5*x^4+2.75*x^3+2.125*x^2-3.875*x+1.25; >> solve(p) ans = 2 -1 1/2 i/2 + 1 1 - i/2
Cuando se expresa un polinomio como vector formado por los coeficientes, se emplea la función
>> p=[1 -3.5 2.75 2.125 -3.875 1.25]; >> roots(p) ans = 2.0000 -1.0000 1.0000 + 0.5000i 1.0000 - 0.5000i 0.5000
Conocidas las raíces del polinomio podemos calcular el vector que guarda los coeficientes mediante
>> r=[2 -1 1+0.5i 1-0.5i 0.5]; %raíces del polinomio >> poly(r) ans = 1.0000 -3.5000 2.7500 2.1250 -3.8750 1.2500
Obtenemos el polinomio
Factorización
La función
>> syms x; >> p=x^3-6*x^2+11*x-6; >> factor(p) ans =(x - 3)*(x - 1)*(x - 2)
Expansión
La función
>> syms x; >> p=(x - 3)*(x - 1)*(x - 2); >> expand(p) ans =x^3 - 6*x^2 + 11*x - 6 >> p=(x-1)^3+2*(x+3)^2+x^2-2*x-2; >> expand(p) ans =x^3 + 13*x + 15
Fracciones polinómicas
La expansión de una fracción polinómica en fracciones más simples,
Si m<n es una fracción propia y si m≥n se conoce como fracción impropia.Trataremos en primer lugar, las fracciones propias.
1.-Raíces reales distintas
Cuando las raíces son r1, r2,...rn, son reales y distintas, expresamos el cociente como
Las constantes c1, c2,...cn, se denominan residuos.
>> a=[1 -2]; >> b=[1 -1 -6 0]; >> [c,r]=residue(a,b) c = 0.0667 -0.4000 0.3333 r = 3 -2 0
2.-Raíces complejas distintas
Si r es la raíz compleja de una ecuación, también es raíz su compleja conjugada r*. Entonces el residuo c correpondiente a la raíz r es igual al conjugado c* del residuo correpondiente a la raíz r*.
>> a=[1 -2 1]; >> b=[1 3 4 2]; >> [c,r]=residue(a,b) c = -1.5000 + 2.0000i -1.5000 - 2.0000i 4.0000 r = -1.0000 + 1.0000i -1.0000 - 1.0000i -1.0000
Para eliminar los números complejos, sumamos las dos primeras fracciones, que en general se expresan
Con c=-1.5, d=2, a=-1, b=1, obtenemos
Finalmente,
3.-Raíces repetidas
Supongamos que la raíz r1 se ha repetido k veces y las otras raices serán rk+1, rk+2...rn
Sea
>> a=[5 -1]; >> b=[1 0 -3 -2]; >> [c,r]=residue(a,b) c = 1.0000 -1.0000 2.0000 r = 2.0000 -1.0000 -1.0000
4.-Fracciones impropias
Si el grado m del polinomio A es mayor que el grado n del polinomio B (m≥n), entonces
Donde Q(x) es un polinomio de grado m-n, y el resto R(x) es un polinomio de gardo inferior a n.
La función
>> a=[1 2 3]; >> b=[1 1 -6]; >> [c,r,q]=residue(a,b) c = -1.2000 2.2000 r = -3 2 q = 1
Recuperando la fracción polinómica original
La función
>> c=[-1.2 2.2]; >> r=[-3 2]; >> q=[1]; >> [a b]=residue(c,r,q) a = 1 2 3 b = 1 1 -6