Raíces de Funciones
roots
Hay muchas funciones de MATLAB que permiten operar sobre los arreglos como si sus entradas fueran coeficientes o raíces de ecuaciones polinomiales. Por ejemplo, introduce
>> c = [ 1 -15 59 -81 36 ]
Y después
>> r = roots( c)
Con ello, las raíces del polinomio x4 –15x3 + 59x2 – 81x + 36 se imprimirán y además se almacenaran en el vector r. De acuerdo al polinomio anterior las raíces del polinomio c son:
r = 9.7720 3.0000 1.2280 1.0000
Una vez encontradas las raíces del polinomio MATLAB dice que estas raíces son vectores columna.
Siguiente ejemplo. Sea el polinomio x4 –16x3 + 22x + 116, hallar sus raíces.
En este caso se deben introducir en MATLAB también los términos nulos ya que MATLAB no tiene forma de saber cuáles son a menos que se indiquen, por lo tanto el polinomio se introduce como:
>> p = [ 1 –16 0 22 116 ] >> r = roots ( p ) r = 15.8839 2.2995 -1.0917 + 1.4086i -1.0917 - 1.4086i
Dos de las raíces son complejas, y MATLAB trabaja indistintamente con números reales y complejos. Prueba multiplicar r(3)*r(4) y el resultado debe ser un número real (3.1759).
fzero
Otra función que se utiliza para hallar la raíz de una función no lineal es fzero
x = fzero(fun,x0)
>> f1=inline('x.^4-15*x.^3+59*x.^2-81*x+36') >> z = fzero(f1,2) z = 1.2280 >> z = fzero(f1,5) z = 3.0000 >> z = fzero(f1,0) z = 3.0000 >> z = fzero(f1,10) z = 9.7720
Con distintos valores iniciales se exploran o buscan las distintas raíces reales de la función.