a es una raz de f(x) si f(a) = 0. Esto a veces no se puede hacer porque no se consigue exactamente el cero. a es raz de f(x) > 0 |f(a)| 2.2.- Mtodos para ecuaciones generales. 2.2.1.- Mtodo de las sustituciones sucesivas. !ada f(x)" consiste en reescri#irla en la forma x = $(x) (aislando x % sumando x a am#os lados de la ecuaci%n). & continuaci%n" a partir de una x inicial (llam'mosla x0) se sigue el mecanismo( )n*+ = f(xn) &l ca#o de cierto n,mero de iteraciones" tendremos que xn - f(xn) ...> xn ser/ la raz. El error aproximado de esta ecuaci%n se calcula usando el error normalizado( 2.2.2.- Mtodo de la bsqueda por incrementos. &ntes de aplicar un m'todo de #,squeda de races" se de#e analizar la funci%n para identificar el n,mero exacto de races 0 poder asi hacer m/s eficiente la aplicaci%n del m'todo de #,squeda" pas/ndole al algoritmo la informaci%n de los intervalos en los que 'stas se encuentran. 1na manera de hacerlo es representar gr/ficamente la funci%n para identificar los cruces con el e2e x. 3tra opci%n es una #,squeda incremental al inicio del programa. Esto consiste en empezar en un extremo del intervalo de inter's 0 realizar evaluaciones de la funci%n con peque4os incrementos a lo largo del intervalo. 5i la funci%n cam#ia de signo" se supone que la raz est/ dentro del incremento. 1n pro#lema potencial en los m'todos de #,squeda por incremento es el de escoger la longitud del incremento. 5i la longitud es mu0 peque4a" la #,squeda llega a consumir demasiado tiempo. 6or otro lado" si la longitud es demasiado grande" existe la posi#ilidad de que races mu0 cercanas entre s pasen inadvertidas( 1n remedio parcial para estos casos consiste en calcular la primera derivada de la funci%n al inicio 0 al final de cada intervalo. 7uando la derivada cam#ia de signo" puede existir un m/ximo o un mnimo en ese intervalo" lo que sugiere una #,squeda m/s minuciosa para detectar la posi#ilidad de una raz. 2.2..- Mtodo de la biseccin. conocido tam#i'n como de corte #inario" de partici%n de intervalos" del intervalo mitad" o de 8olzano" es un tipo de #,squeda incremental en el que el intervalo se divide siempre a la mitad. 5i la funci%n cam#ia de signo so#re un intervalo" se eval,a el valor de la funci%n en el punto medio. 9a posici%n de la raz se determina situ/ndola en el punto medio del su#intervalo" dentro del cual ocurre un cam#io de signo. El proceso se repite hasta o#tener una me2or aproximaci%n. 5i f(xa) f(xr) : 0 x# = xr 5i f(xa) f(xr) > 0 xa = xr 5i f(xa) f(xr) = 0 xr es la raiz. Es un m'todo lento porque solo quita medio intervalo en cada paso. El error o#tenido( 2.2.!.- Mtodo de la secante. Mtodo de la Regula "alsi. .;'todo de la <egula =alsi. &l igual que el de la #isecci%n" #asa su funcionamiento en que siempre tiene acotada la raz. Es l%gico pensar que si f(xa) es mucho m/s cercana a cero que f(x#)" la raz ser/ m/s cercana a xa. Este m'todo usa esa premisa" de manera que se #asa en trazar una lnea recta entre am#os puntos" 0 toma el punto de corte de dicha lnea recta con el e2e de las x" como el >punto medio?" xr" el cual se calcula de la forma siguiente( El resto del algoritmo es exactamente igual al de la #isecci%n( 5i f(xa) f(xr) : 0 x# = xr 5i f(xa) f(xr) > 0 xa = xr 5i f(xa) f(xr) = 0 xr es la raiz. &unque pueda parecer lo contrario" a veces este m'todo es menos eficiente que el de la #isecci%n" especialmente en funciones con una curvatura importante" como por e2emplo potenciales. 3tra desventa2a de este m'todo es la unilateralidad" es decir" conforme avanzan las iteraciones" uno de los puntos limitantes del intervalo tiende a permanecer fi2o" lo que puede llevar a una mala convergencia. .;'todo de la secante. @raza una recta tangente a la funci%n usando una diferencia finita dividida hacia atr/s( Ao garantiza que la raz est' acotada. 6uede que no conver2a. 2.2.#.- Mtodos de $e%ton-Rap&son. El m'todo de AeBton.<aphson hace lo mismo que el de la secante" pero haciendo la derivada de la funci%n( 2.2.'.- Mtodo de M(ller. El m'todo de ;Cller a2usta una par/#ola (polinomio de D puntos). 7onsiste en o#tener los coeficientes de la par/#ola que pasa por los D puntos. 9a funci%n que a2usta es( av 2 + bv + c )1* donde v = (x E x0) !e manera que tenemos que( para v = 0 ....> aF0 G * #F0 * c = f0 para v = h+ ....> aFh+ G * #Fh+ * c = f+ para v = hG ....> aFhG G * #FhG * c = fG con lo que( c = f0 0 &lgoritmo( xG" x0" x+ (creciente) +.. Evaluaci%n de fG" f0" f+ G.. !eterminar a" #" c D.. 5e calculan las races H.. 5e escoge la raz m/s cercana a x0( xr I.. Jf xr > x0 @hen xG" x0" x+ :..... xG" xr" x0 Else xG" x0" x+ :..... xr" x0" x+ K.. Jf |f(x)| : @ol or |x+.xG| : xacc !evolver xr raiz Else $oto + &l ser una f%rmula cuadr/tica permite el c/lculo tanto de races reales como comple2as. 2.2.+.- Mtodo de Ridders. Este m'todo es una variante m/s poderosa del m'todo de la <egula =alsi. El algoritmo sigue los siguientes pasos( +.. 9a raz est/ en Lx+" xGM .....> f(x+)Ff(xG) : 0 G.. 5e calcula f(xD) con D.. =actorizaci%n de funci%n exponencial que transforma la funci%n residuo en una recta( f(x+) E Gf(xD)e N * f(xG)e GN = 0 ====> H.. 5e aplica la falsa posici%n a f(x+)" f(xD)e N 0 f(xG)e N (en lugar de aplicarlo a f(x+)" f(x+)" f(x+) como en el m'todo original)( xH siempre Lx+" xGM f(x+)Ff(xH) : 0 xG = xH f(x+)Ff(xH) > 0 x+ = xH f(x+)Ff(xH) = 0 xH es raz. 2.2.,.- Mtodo de -an .i/ngaarden-De00er-1rent. 7onocido como m'todo de 8rent. Jntenta o#tener una r/pida convergencia sin penalizar la seguridad de encontrar la raz. com#ina la confia#ilidad del m'todo de #isecci%n con la velocidad del m'todo de la secante. 9a idea es que se comienza con un cam#io de signo en el intervalo" del cual no se sale. Entonces se tiene tres alternativas para realizar el siguiente paso( El paso de #isecci%n (lento) El paso de la secante (mediano) El paso Ocuadr/tico inversoO (r/pido) 5i la iteraci%n resulta #astante #ien" se toma el paso r/pido. En el caso de que se est' en el paso de la secante o cuadr/tico inverso 0 no me2ora" se toma el paso de #isecci%n( 2..- Mtodos para ecuaciones polinmicas. 2..1.- 2n3lisis de las ra4ces. 6(x) = anx n * an.+x n.+ * ... * a+x * a0 32o( para evaluar eficientemente un polinomio en visual #asic" se agrupar/n los t'rminos" como en el siguiente e2emplo( f(x) = Px P * Kx K * Ix I ....> f(x) = (((Px*K)x*I)x*H)Q 6ara hacer un cuadrado( xFx 0 no xRG 6ara hacer una raiz cuadrada( sqr(x) % sqrt(x) en la ,ltima versi%n de v#" pero nunca xR(+SG)" porque se desperdiciaran recursos al realizar G operaciones (dividir 0 exponenciar). a) @eorema del resto( >el resto < que resulta al dividir un polinomio 6(x) entre x.u es igual a 6(u)?. #) @eorema del factor( >(x.u) es un factor del polinomio 6(x) si 0 solo si 6(u) = 0?. 6(u) = 0 = < 6(x) = N(x)F(x.u) 2..2.- 5squema de 6orner. Evalua eficientemente funciones polin%micas de una forma monomial. 8asa su estrategia en( 6(x) = N(x)F(x.u) * < 6(x) = anx n * an.+x n.+ * ... * a+x * a0 N(x) = #n.+x n.+ * #n.Gx n.G * ... * #+x * #0 0 nos queda( 6(x) = N(x)F(x G * px * q) * <x * 5 an = #n.G 6(x) = anx n * an.+x n.+ * ... * a+x * a0 an.+ = #n.D * pF#n.G N(x) = #n.Gx n.G * #n.Dx n.D * ... * #+x * #0 an.G = #n.H * pF#n.D * qF#n.G a+ = pF#0 * qF#+ * < a0 = #0Fq * 5 #n.G = an #n.D = an.+ EpF#n.G #n.H = an.G E pF#n.D E qF#n.G #i = ai*G E pF#i*+ E qF#i*G ... < = a+ E pF#0 E qF#+ 5 = a0 E qF#0 2...- Mtodo de 1airsto%. Es un m'todo iterativo relacionado con los m'todos de ;Cller 0 de AeBton.<aphson. 6(x) = N(x)F(x G * px * q) 6artimos de unos valores iniciales p0 0 q0. 6(x) = N(x)F(x G * pix * qi) * <x * 5 Estrategia( 7am#iar los valores de p 0 q para que < = 5 = 0 < : 0 5 : 0 pi*+ = pi * Tpi qi*+ = qi * Tqi 6(x) = N(x" p" q)F(x G * px * q) * <(p" q)x * 5(p" q) 6ro#lemas del m'todo( ha0 que seleccionar #ien p0 0 q0 porque si no" puede no converger. 2.!.- 7istemas de ecuaciones no lineales. donde U es la matriz 2aco#iana (matriz nxm con las derivadas parciales de una funci%n de m varia#les 0 n funciones componentes)( 7ada etapa del c/lculo es un sistema de ecuaciones.