libro analisis jorge figueroa
Post on 28-Sep-2015
104 Views
Preview:
DESCRIPTION
TRANSCRIPT
-
ANLISIS NUMRICO CON
MATLAB
Andres Felipe Amador Rodriguez
Jorge Hernando Figueroa Jimenez
Daniel Suescun Diaz
Ponticia Universidad Javeriana, Cali. 2013
i
-
ii
-
Contenido
Contenido iii
1. Representaciones de Nmeros y Errores 1
1.1. Representacin de un nmero real en una mquina . . . . . . 5
1.2. Aritmtica de precisin nita . . . . . . . . . . . . . . . . . . 12
1.3. Arimtica en una Mquina . . . . . . . . . . . . . . . . . . . . 15
1.4. Prdida de dgitos o cifras signicativas . . . . . . . . . . . . . 17
1.5. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2. Ceros de Funciones 27
2.1. Mtodo de Biseccin . . . . . . . . . . . . . . . . . . . . . . . 28
2.1.1. Convergencia . . . . . . . . . . . . . . . . . . . . . . . 31
2.2. Mtodo de la Regula Falsi . . . . . . . . . . . . . . . . . . . . 35
2.2.1. Convergencia . . . . . . . . . . . . . . . . . . . . . . . 36
2.3. Mtodo de Newton . . . . . . . . . . . . . . . . . . . . . . . . 37
2.3.1. Convergencia . . . . . . . . . . . . . . . . . . . . . . . 40
2.4. Mtodo de la Secante . . . . . . . . . . . . . . . . . . . . . . . 45
2.4.1. Convergencia . . . . . . . . . . . . . . . . . . . . . . . 47
2.5. Mtodo del punto jo . . . . . . . . . . . . . . . . . . . . . . . 48
2.5.1. Convergencia . . . . . . . . . . . . . . . . . . . . . . . 51
2.6. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3. Sistemas de Ecuaciones Lineales 63
3.1. Sistemas fciles de resolver . . . . . . . . . . . . . . . . . . . . 63
3.2. Mtodos Directos de Solucin . . . . . . . . . . . . . . . . . . 66
iii
-
CONTENIDO
3.2.1. Mtodo de la Inversa . . . . . . . . . . . . . . . . . . . 66
3.2.2. Mtodo de Cramer . . . . . . . . . . . . . . . . . . . . 67
3.2.3. Mtodo de Eliminacin Gaussiana . . . . . . . . . . . . 68
3.2.4. Factorizacin LU . . . . . . . . . . . . . . . . . . . . . 74
3.3. Normas Vectoriales y Matrices . . . . . . . . . . . . . . . . . . 79
3.4. Mtodos iterativos para sistemas lineales . . . . . . . . . . . . 83
3.4.1. Mtodo de Jacobi . . . . . . . . . . . . . . . . . . . . . 83
3.4.2. mtodo de Gauss-Seidel . . . . . . . . . . . . . . . . . 85
3.5. Representacin matricial . . . . . . . . . . . . . . . . . . . . . 88
3.6. Nmero Condicional y Renamiento Iterativo . . . . . . . . . 94
3.7. Precondicionamiento o Equilibracin de una Matriz . . . . . . 98
3.7.1. Precondicionamiento mediante equilibracin de las . . 98
3.7.2. Precondicionamiento mediante equilibracin de Colum-
nas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
3.8. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
4. Interpolacin y Ajustes de Curvas 111
4.1. Mtodo Directo . . . . . . . . . . . . . . . . . . . . . . . . . . 112
4.2. Polinomio de Newton . . . . . . . . . . . . . . . . . . . . . . 113
4.2.1. Forma matricial . . . . . . . . . . . . . . . . . . . . . . 114
4.2.2. Nmero condicional . . . . . . . . . . . . . . . . . . . . 114
4.2.3. Mtodo de diferencias divididas . . . . . . . . . . . . . 115
4.3. Polinomio de Lagrange . . . . . . . . . . . . . . . . . . . . . . 118
4.4. El fenmeno de Runge . . . . . . . . . . . . . . . . . . . . . . 124
4.5. Nodos de Chebyshev . . . . . . . . . . . . . . . . . . . . . . . 126
4.6. Interpolacin polinomial a trozos . . . . . . . . . . . . . . . . 130
4.6.1. Trazador Cbico . . . . . . . . . . . . . . . . . . . . . 130
4.7. Ajuste de curvas por mnimos cuadrados . . . . . . . . . . . . 139
4.8. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
5. Integracin y Diferenciacin Numrica 153
5.1. Integracin numrica . . . . . . . . . . . . . . . . . . . . . . . 153
5.1.1. Regla del trapecio . . . . . . . . . . . . . . . . . . . . . 153
5.1.2. Regla de Simpson . . . . . . . . . . . . . . . . . . . . . 154
5.1.3. Regla compuesta del Trapecio . . . . . . . . . . . . . . 159
5.1.4. Regla compuesta de Simpson . . . . . . . . . . . . . . 162
5.1.5. Mtodos adaptativos . . . . . . . . . . . . . . . . . . . 165
5.2. Diferenciacin numrica . . . . . . . . . . . . . . . . . . . . . 169
iv
-
Anlisis Numrico con MATLAB
5.3. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
6. Ecuaciones diferenciales ordinarias 179
6.1. Mtodo de la serie de Taylor . . . . . . . . . . . . . . . . . . . 179
6.2. Mtodo de Euler mejorado . . . . . . . . . . . . . . . . . . . . 184
6.3. Mtodo de Runge-Kutta . . . . . . . . . . . . . . . . . . . . . 186
6.3.1. Mtodo de Runge-Kutta-Felhberg (RKF45) . . . . . . 190
6.4. Mtodos Multipasos Predictor-Corrector . . . . . . . . . . . . 191
6.4.1. Mtodo de Adams-Bashforth-Moulton . . . . . . . . . 192
6.4.2. Mtodo de Milne-Simpson . . . . . . . . . . . . . . . . 194
6.4.3. Comparacin de Mtodos . . . . . . . . . . . . . . . . 204
6.5. Mtodo de Hamming . . . . . . . . . . . . . . . . . . . . . . . 205
6.5.1. Esquema Predictor-Corrector . . . . . . . . . . . . . . 205
6.5.2. Generalizacin del Corrector de Hamming . . . . . . . 206
6.5.3. Estabilidad del Corrector Generalizado del Mtodo de
Hamming . . . . . . . . . . . . . . . . . . . . . . . . . 210
6.5.4. Caso II (Mtodo de Hamming) . . . . . . . . . . . . . 212
6.6. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
Bibliografa 215
ndice alfabtico 216
v
-
CONTENIDO
vi
-
Capitulo1Representaciones de Nmeros y
Errores
La mayora de las computadoras hacen los clculos aritmticos usando el
sistema binario (base 2) y no el sistema decimal (base 10). Cuando se in-troducen nmeros en base 10, la computadora los convierte en nmeros enbase 2 (o quizs en base 16), lleva a cabo los clculos en base 2 y nalmentepresenta los resultados en base 10. La computadora al convertir el nmero enbase 10 a base 2 utiliza la llamada representacin de punto otante y en mu-chos casos trabaja con aproximaciones de los nmeros que quiere representar
dando lugar a errores en los clculos.
Antes de presentar la representacin de punto otante de un nmero real,
se realizar un breve repaso sobre sistemas numricos y notacin cientca.
Si x es un nmero real entonces la representacin de x en una base b es:
x = enen1 e0.d1d2d3 dkdk+1
donde ei y dj son dgitos entre 0 y b 1.Si el valor de x se escribe en forma explcita entonces el valor de x es:
x =en bn + en1 bn1 + + e1 b1 + e0b0 + d1b1 + d2b2+ + dk bk + dk+1 b(k+1) +
A continuacin, se escriben los nmeros x = 13.625 y y = 401.3 en base10, 2, 8 y 16.
1
-
CAPITULO 1. REPRESENTACIONES DE NMEROS Y ERRORES
Ejemplo 1.0.1 (Sistema decimal o base 10). Para representar un nmeroen el sistema decimal se utilizan potencias de 10 junto con los dgitos del 0al 9.
a) Representacion de x en sistema decimal
x = 13.625
= 1 101 + 3 100 + 6 101 + 2 102 + 5 103
b) Representacion de y en sistema decimal
y = 401.3
= 4 102 + 0 101 + 1 100 + 3 101 + 3 102 + 3 103 +
Ejemplo 1.0.2 (Sistema binario o base 2). Para representar un nmero ensistema binario se usan los dgitos 0 y 1.
a) Representacion de x en sistema binario
x = 13.625
= 8 + 4 + 1 + 0.5 + 0.125
= 23 + 22 + 20 + 21 + 23
= 1 23 + 1 22 + 1 20 + 1 21 + 1 23= 1 23 + 1 22 + 0 21 + 1 20 + 1 21 + 0 22 + 1 23
Recordando la representacion de x en sistema decimal y la anterior ensistema binario se tiene (13.625)10 = (1101.101)2. Donde los subndices10 y 2 indican la base en la que se encuentra el nmero.
b) Representacion de y en sistema binario
y = 401.3
= 256 + 128 + 16 + 1 + 0.25 + 0.0625 + = 1 28 + 1 27 + 1 24 + 1 20 + 1 22 + 1 24 +
De forma analoga las representaciones en sistema decimal e binario de yse relacionan como antes. (401.333 )10 = (110010001.0101 )2.
2
-
Anlisis Numrico con MATLAB
Ejemplo 1.0.3 (Sistema octal o base 8). El nmero se escribe usando losdgitos del 0 al 7.
a) Representacion de x en sistema octal.
x = 13.625
= 8 + 5 + 0.625
= 1 81 + 5 80 + 5 81
Como antes se tiene que (13.625)10 = (15.5)8
b) Representacion de x en sistema octal.
y = 401.3
= 384 + 16 + 1 + 0.25 + 0.0625 + = 6 82 + 2 81 + 1 80 + 2 81 + 4 82 +
Luego (401.333 . . .)10 = (621.24 . . .)8
Ejemplo 1.0.4 (Sistema hexadecimal o base 16). Para representar un n-mero en hexadecimal se usan los dgitos del 0 al 9 y las letras A,B,C,D,Ey F en lugar de los nmeros 10, 11, 12, 13, 14 y 15 respectivamente.
a) Representacion de x en sistema hexadecimal.
x = 13.625
= 13 + 0.625
= 13 160 + 10 161= D 160 +A 161
Luego (13.625)10 = (D.A)16
b) Representacion de y en sistema hexadecimal.
y = 401.3
= 256 + 144 + 1 + 0.3125 + 0.01953125 + = 1 162 + 9 161 + 1 160 + 5 161 + 5 162 + Luego (401.333 )10 = (191.55 )16
3
-
CAPITULO 1. REPRESENTACIONES DE NMEROS Y ERRORES
Denicin 1.1 (Notacin cientica en base 10). Un nmero real x se diceque est escrito en notacin cientca en base 10 si se puede representar dela siguiente forma: x = M 10n donde 1 M < 10 (si x 6= 0) y n es unentero. M se conoce como la mantisa, 10 es la base y n es el exponente ocaracterstica.
Ejemplo 1.0.5. Representacion cientica en base de 10 para x = 1231 yy = 0.0000738.
x = 1231 = 1.231 103y = 0.0000738 = 7.38 105
De la misma forma, se puede utilizar la notacin cientca en el sistema
binario. En este caso x = M 2n donde 1 6 M < 2 (si x 6= 0) y n es unentero.
Por ejemplo x = (1101.101)2 = (1.101101)2 23.
MATLAB [9] posee la funcin dec2base(d,b), que convierte un entero
no negativo d en base 10 a una base dada b. El nmero d no puede ser mayorde 252 y b debe ser un entero entre 2 y 36.
Ejemplo 1.0.6. Utilizando MATLAB, transforme 13 base: 2, 5 y 16.
>> n1= dec2base(13, 2)
n1 =
1101
>> n2= dec2base(13, 5)
n2 =
23
>> n3= dec2base(13, 16)
n3 =
D
4
-
Anlisis Numrico con MATLAB
MATLAB tambin posee la funcin bin2dec , que transforma un nmero
binario en su equivalente en base 10.
Ejemplo 1.0.7. >> n=bin2dec('11101')
n =
29
1.1. Representacin de un nmero real en una
mquina
Una mquina generalmente no almacena una cantidad matemtica x sinouna aproximacin binaria a x llamada representacin de punto otante,denotada por (x) que toma la siguiente forma:
x (x) = 1 d1d2d3 dk 2n
donde di es un dgito binario
x (x) = (1)s 1 f 2n, donde f = d1d2d3 dk
La cantidad s indica el signo del nmero, la cantidad 1 f se denominamantisa y se encuentra en base 2, y la cantidad n es el exponente.
La mquina utiliza un formato (longitud de palabra) para almacenar un
nmero real. Constan de mltiplos de 8 bits, donde cada posicin contieneun dgito binario o bit.
El formato de precisin simple usa 32 bits, para almacenar un nmeroreal, el de precisin doble 64 bits y el extendido 128 bits. MATLAB usade precisin doble [9].
En el formato de precisin simple (32 bits), el primer bit est reservadopara el signo del nmero denotado por s en la ecuacin (1.1) (1 para negativoy 0 para positivo ya que (1)1 = 1 y (1)0 = 1); los ocho bits siguientesse utilizan para almacenar un patrn de bits que representan al exponente n;los 23 bits restantes se usan para la mantisa, pero slo se almacena la parte
de la mantisa denotada por f por que el dgito principal siempre es 1.
5
-
CAPITULO 1. REPRESENTACIONES DE NMEROS Y ERRORES
1 bit 8 bits 23 bits
Signo del nmero Exponente Mantisa. Parte fraccionaria f
Figura 1.1: Distribucin de 32 bits
En la gura 1.1 se muestra la distribucin de los 32 bits en un formatode precisin simple.
El valor del exponente de 8 bits vara de (00000000)2 = 0 a (11111111)2 =255 para enteros positivos y no permitira representar exponentes negativos;por esta razn el valor binario del exponente n no se almacena directamente
y en vez de ello se almacena en forma sesgada como un valor no negativo c.La relacin del exponente n en trminos del valor almacenado c y el sesgo bes: n = c b. Para el caso del formato de 32 bits b = 127.Por ejemplo, si el exponente n es 2, entonces n = c b, 2 = c 127,
c = 129.En lugar de almacenar el exponente n = 2 = (00000010)2 se almacenac = 129 = (10000001)2.
Si el exponente n es 5, entonces n = c b, 5 = c 127, c = 122En lugar de almacenar n = 5 = (00000101)2, se almacena c = 122 =(01111010)2.En la gura 1.2 se muestra el valor real del exponente n y el correspondientevalor del exponente sesgado c que se almacenara en el formato.
- 127 -5 0 2 128
2551291271220
(Valor real del exponente n)
(Valor del exponente sesgado c
almacenado en el formato)
Figura 1.2: Valores de los exponentes n y c
Ejemplo 1.1.1. Represente en formato de precisin simple los siguientes
nmeros.
Primero se escribe el nmero en notacin de punto otante base 2 de la
forma (1.1) fl(x) = (1)s(1.f) 2n y luego se lo almacena en el formato.
6
-
Anlisis Numrico con MATLAB
a) Formato de precisin simple para x = 13.625
x = 13.625 = (1101.101)2
= (1.101101)2 23fl(x) = (1)0(1.101101) 23
En este caso s = 0 porque el nmero es positivo, la parte fraccionaria fde la mantisa es f = 101101, el exponente real es n = 3, pero se almacenael exponente sesgado c. n = c 127, 3 = c 127, c = 130 = (10000010)2.La representacin de x = 13.625 en el formato de precisin simple es:
0 10000010 10110100000000000000000
Signo del nmero Exponente Parte fraccionaria f de la mantisa
b) Formato de precisin simple para y = 0.375y = 0.375 = (0.011)2
= (1.1)2 22fl(y) = (1)1(1.1) 22
Como el nmero es negativo s = 1, la parte fraccionaria de la mantisaes f = 1 y el exponente real es n = 2, el exponente sesgado es c = 125 =(01111101)2. La representacin de y = 0.375 en el formato de precisinsimple es:
1 01111101 10000000000000000000000
Signo del nmero Exponente Parte fraccionaria f de la mantisa
En el formato de precisin doble de (64 bits), el primer bit est reservadopara el signo del nmero; los 11 bits siguientes se usan para almacenar elexponente sesgado, y los 52 bits restantes se usan para almacenar la mantisaf . El sesgo b que se usa es 1023. En la gura 1.3 se muestra la correspondenciaentre el valor real del exponente n y el valor sesgado del exponente c.Por ejemplo, el nmero real que representa el formato de precisin doble
(64 bits).
7
-
CAPITULO 1. REPRESENTACIONES DE NMEROS Y ERRORES
- 1023 0 1024
204710230
(Valor real del exponente n)
(Valor del exponente sesgado calmacenado en el formato)
Figura 1.3: Correspondencia entre el valor real y el valor sesgado del exponente
0 10000001001 10011000. . . 0
Signo del nmero Exponente Parte fraccionaria f de la mantisa
Corresponde a un nmero positivo, el valor del exponente sesgado es
c = (10000001001)2 = 1033
luego el exponente real es n = c b, n = 1033 1023 = 10 y la partefraccionaria de la mantisa es f = 10011. Por lo tanto el nmero que representaes:
(1.10011)2 210 = (1 20 + 1 21 + 0 22 + 0 23 + 1 24 + 1 25) 210= 210 + 29 + 26 + 25
= 1632
Los nmeros que representa una mquina estn dentro de un rango nu-
mrico que depende del formato que esta utilice (ya que existen restricciones
para la mantisa y el exponente, impuestas por la longitud de palabra), esto
quiere decir que no todo nmero real se puede representar. Para un formato
de precisin simple (32 bits) el mximo nmero positivo (Mnp) es aproxima-damente 3 1038 y el mnimo nmero positivo (mnp) es aproximadamente1038. El mnimo nmero negativo (mnn) es 3 1038 y el mximo nmeronegativo (Mnn) es 3 1038. En la Figura 1.4 se ilustran los intervalos denmeros representables en el formato de precisin simple.
Cuando el nmero que se quiere representar es 0, se iguala a 0 cada uno delos 31 ltimos bits, de modo que el esquema descrito en la ecuacin (1.1) seomite en este caso. El bit de signo puede ser 0 1. La magnitud ms pequeadiferente de 0 que se puede almacenar es limitada por esta excepcin y es2126 1038 [1].
8
-
Anlisis Numrico con MATLAB
Figura 1.4: Intervalos de nmeros representables
Cuando se hacen clculos en una mquina que usa un formato de pre-
cisin simple y la magnitud del nmero resultante es menor que 1038 seproduce un subdesbordamiento o subujo (underow) y suele drsele el va-
lor de cero; los nmeros que tengan una magnitud mayor a 31038 producenun desbordamiento o sobreujo (overow) y los clculos se interrumpen. En
la gura 1.5 se ilustran los intervalos donde ocurre un overow o underow.
Figura 1.5: Overow o underow
El rango numrico para una mquina que usa un formato de precisin
doble (64 bits) comprende nmeros cuya magnitud est entre 10308 y 10308.Los nmeros en una mquina no estn uniformemente distribuidos; ade-
ms no todo nmero real que se encuentre en el rango numrico de la mquina
se puede representar exactamente.
Por ejemplo el nmero 39.9, tiene una mantisa que es una sucesin binariainnitamente larga (39.9 = 1.0011111100 25) que se debe reducir a 23bits (en precisin simple) para poder almacenarlo.
El mtodo de reduccin dictado por la norma IEEE es el redondeo es-
tadstico en el que se redondea hacia arriba si el valor ms all del bit 23de f excede a 224, se redondea hacia abajo si es menor que 224, y se re-dondea al siguiente valor par o impar si es exactamente 224. Para 39.9,
9
-
CAPITULO 1. REPRESENTACIONES DE NMEROS Y ERRORES
fl(39.9) = 1.00111111001100110011010 25 se redonde hacia arriba. Elvalor del nmero almacenado es 39.90000152587890625 [1].Para ilustrar esta situacin considere una mquina que maneja nmeros
de la forma:
1 d1d2 2n donde n = 1, 0, 1.Los nmeros positivos que maneja esta mquina son:
1.00 21 = (1 20 + 0 21 + 0 22) 21 = 0.51.01 21 = 0.6251.10 21 = 0.751.11 21 = 0.875
1.00 20 = 11.01 20 = 1.251.10 20 = 1.51.11 20 = 1.751.00 21 = 21.01 21 = 2.51.10 21 = 31.11 21 = 3.5
Observe que a medida que los nmeros se alejan de cero la distancia entre
ellos aumenta; para el primer grupo la distancia es 0.125, para el segundogrupo es de 0.25 y para el tercer grupo es de 0.5.El rango numrico de la mquina que se est considerando se encuentra
entre 0.5 y 3.5 para nmeros positivos, y entre 3.5 y 0.5 para nmerosnegativos. Observe que no todos los nmeros reales que se encuentran en el
intervalo cerrado [0.5, 3.5] se pueden representar en esta mquina, por ejem-plo el nmero real 2.1 se almacenara como 2 (por qu?).En general en el sistema numrico de una mquina hay huecos o discontinui-
dades.
En la recta real, dado cualquier nmero real no existe el siguiente nmero
real ms pequeo ni el siguiente nmero ms grande; pero en el sistema
numrico de una mquina si existe. Para ilustrar esta situacin considere el
nmero de una mquina de precisin simple
El nmero es positivo, el exponente sesgado es (10001111)2 = 143, el
10
-
Anlisis Numrico con MATLAB
0 10001111 10010000000000000000001
exponente real es 16 y la mantisa es: (1.100100000000000000000001)2. Elnmero que representa la mquina es:
(1.100100000000000000000001)2 216 = 102400.0078125
El siguiente nmero ms grande en la mquina se halla sumando 223 ala mantisa (o un 1 al ltimo dgito de la mantisa por qu?)
1.10010000000000000000001
+ 1
1.10010000000000000000010
Luego, el nmero siguiente ms grande en la mquina es:
(1.1001 . . . 010)2 216 = (1 20 + 1 21 + 1 24 + 1 222) 216= 102400.015625
El siguiente nmero ms pequeo en la mquina se halla restando 223 ala mantisa,
1.10010000000000000000001
11.10010000000000000000000
El nmero siguiente ms pequeo en la mquina es:
(1.10010 . . . . . . 0)2 216 = 102400En la gura 1.6, x es el nmero y xp y xg denotan respectivamente elsiguiente nmero ms pequeo y el siguiente nmero ms grande.
Se observa que el nmero original de la mquina no slo representa a 102400.0078125sino a muchos nmeros reales que se hallen entre este nmero y sus nmeros
ms cercanos. En otras palabras el nmero original de la mquina representa
cualquier nmero real en el intervalo [102400, 102400.015625). En MATLABla funcin eps representa la distancia de 1 al siguiente nmero en punto
11
-
CAPITULO 1. REPRESENTACIONES DE NMEROS Y ERRORES
Figura 1.6: Overow o underow
otante. En el formato IEEE el valor de eps es: 252 y el valor decimalaproximado es: 2.2204 1016.Como se dijo anteriormente, MATLAB usa el sistema punto-otante IEEE-
64 bits para representar todo nmero [9]. S x = 230, r1 = 222, r2 = 223 yconstruimos una sentencia logica de igualdad a x entre; x + r1 y x + r2,MATLAB asumira que x 6= x+ r1 pero x = x+ r2.Por Qu?
1.2. Aritmtica de precisin nita
La aritmtica de precisin nita signica que los clculos se hacen con un
nmero constante de dgitos, as por ejemplo: si se quiere sumar x = 12.16y z = 8.7243 usando aritmtica de corte a 3 dgitos, el resultado es x + z =12.1 + 8.72 = 20.8; ahora si x y z se suman usando aritmtica de redondeoa tres dgitos, el resultado es x + z = 12.2 + 8.72 = 20.9. Observe que elresultado que se obtiene en ambos casos es una aproximacin al valor exacto
x+ z = 20.8843.En general, cuando se usa aritmtica a k dgitos lo primero que se hacees escribir los nmeros en la forma:
x = 0 d1d2d3 . . . dkdk+1dk+2 . . . 10n, d1 6= 0despus se aproxima x por
fl(x) = 0 d1d2d3 . . . dk 10n
Si se usa corte y redondeo, x se aproxima por
fl(x) = 0 d1d2d3 . . . k 10n
donde k = dk si dk+1 es 0, 1, 2, 3, 4 o k = dk + 1 si dk+1 es 5, 6, 7, 8, 9.
12
-
Anlisis Numrico con MATLAB
Ejemplo 1.2.1. El nmero 22/7 tiene una expansin decimal de la forma:
22
7= 3.142857 = 0.3142857 101
La representacin de punto otante de
227usando corte a 4 dgitos es
fl
(22
7
)= 0.3142 101 = 3.142
Si se usa redondeo a 4 dgitos
fl
(22
7
)= 0.3143 101 = 3.143
Observe que el cuarto dgito ahora es 3 y no 2, esto se debe a que el quintodgito en la expansin de 22/7 es 8 y como 8 es mayor que 5 se le suma 1 alcuarto dgito.
Ejemplo 1.2.2. Escribir el nmero x = 148.17 en la forma de punto otanteusando corte y redondeo a 4, 3 y 2 dgitos.
x = 148.17 = 0.14817 103
corte redondeo
4 dgitos fl(x) = 0.1481 103 = 148.1 fl(x) = 0.1482 103 = 148.23 dgitos fl(x) = 0.148 103 = 148 fl(x) = 0.148 103 = 1482 dgitos fl(x) = 0.14 103 = 140 fl(x) = 0.15 103 = 150El error que resulta al reemplazar un nmero cualquiera x por su forma depunto otante fl(x) se conoce como error de redondeo , independientementede si se aplica corte o redondeo para hallar la forma de punto otante fl(x).A continuacin se dene el error absoluto y el error relativo . Si x es unaaproximacin de x entonces el error absoluto es |x x | y el error relativoes
x xx, x 6= 0.Ejemplo 1.2.3. Error absoluto y error relativo para varios x y x
Error absoluto Error relativo
x = 104 x = 103 1 0.009615384x = 1.04 x = 1.03 0.01 0.009615384x = 0.0104 x = 0.0103 0.0001 0.009615384
13
-
CAPITULO 1. REPRESENTACIONES DE NMEROS Y ERRORES
Observe que el error relativo es el mismo en los tres casos, pero el error
absoluto es distinto en cada caso. Es aconsejable como una medida de preci-
sin trabajar con el error relativo ya que el error absoluto puede ser engaoso.
Un error de slo un metro al determinar la distancia entre la tierra y Jpiter
sera algo asombroso, pero no sera algo aceptable que un cirujano cometiera
un error de esa magnitud al efectuar una incisin [4].
Ejemplo 1.2.4. Si fl(x) es una aproximacin de x con corte a k dgitos.Demuestre que el error relativo que se comete al reemplazar x por fl(x) estacotado por 10k+1.
Suponga que x = 0 d1d2 dkdk+1dk+2 10n, entonces fl(x) = 0 d1d2 dk 10n
|x fl(x)|x
=
0 d1d2 dkdk+1dk+2 10n 0 d1d2 . . . dk 10n0 d1d2 dkdk+1dk+2 10n
=
0.00 dk+1dk+2 0 d1d2 dkdk+1dk+2 . . .
=
0 dk+1dk+2 . . . 10k0 d1d2 dkdk+1dk+2 . . . 6 10.1 10k = 10 10k = 10k+1Luego x fl(x)x
6 10k+1(La desigualdad es porque una cota para el numerador 0 dk+1dk+2 . . .
10k es 0.99 . . . 10k 6 1 10k, y una fraccin alcanza su valor msgrande cuando el denominador es el ms pequeo, en este caso el valor ms
pequeo para 0 d1d2 . . . dkdk+1dk+2 . . . es 0.1).
Ejercicio 1. Demuestre que el error relativo que se comete al reemplazar xpor (x) usando redondeo a k dgitos est acotado por 1/2 10k+1.Sugerencia: se deben considerar dos casos:
Si dk+1 < 5 entonces fl(x) = 0 d1d2 . . . dk 10n.Si dk+1 5 entonces fl(x) = 0 d1d2 . . . dk 10n + 10nk.
14
-
Anlisis Numrico con MATLAB
Denicin 1.2. Se dice que el nmero x aproxima a x con t dgitos (o cifras)signicativos, si t es el entero no negativo ms grande para el cual,x xx
< 5 10tEjemplo 1.2.5. 1) Si x = 3.141592 y x = 3.1x xx
= 0.013239147 = 1.3239147 102 < 5 102x aproxima a x con 2 cifras signicativas.
2) Si x = 100000 y x = 99994x xx = 0.00006 = 0.6 104 < 5 104
x aproxima a x con 4 cifras signicativas
3) Si x = 0.000012 y x = 0.00004x xx = 2.3 < 5 100
x aproxima a x sin cifras signicativas
4) Si x = 0.000012 y x = 0.00001x xx = 0.16 = 1.6 101 < 5 101
x aproxima a x con 1 cifra signicativa
1.3. Arimtica en una Mquina
Para analizar los errores que surgen al efectuar clculos en una mquina
debido a la limitante de la longitud de palabra (precisin simple, precisin
doble etc.) se supondr una mquina que opera en decimal y trabaja arit-
mtica a 5 dgitos usando redondeo. Si fl(x) y fl(z) son las representaciones
15
-
CAPITULO 1. REPRESENTACIONES DE NMEROS Y ERRORES
para x y z, y adems , , y denotan las operaciones suma, resta,multiplicacin y divisin en la mquina entonces:
x z = fl(fl(x) + fl(z))x z = fl(fl(x) fl(z))x z = fl(fl(x) fl(z))x z = fl(fl(x) fl(z))
Ejemplo 1.3.1. Para x = 2/3 = 0.66666 100, fl(x) = 0.66667 100 =0.66667
z = 22/7 = 0.3142857142 101, f l(z) = 0.31429 101 = 3.1429
x z = fl(0.66667 + 3.1429) = fl(3.80957) = 3.8096 = 0.38096 101x z = fl(0.66667 3.1429) = fl(2.47623) = 2.4762 = 0.24762 101x z = fl(0.66667 3.1429) = fl(2.095277143) = 2.0953 = 0.20953 101x z = fl(0.66667 3.1429) = fl(0.21211938) = 0.21212 = 0.21212 100
En la tabla siguiente se muestran los valores de las operaciones en la
mquina, los valores reales y el error relativo en cada operacin.
Operacin Resultados
en la mqui-
na
Valor real Error relati-
vo
x z 3.8096 80/21 0.200 104x z 2.4762 52/21 0.385 105x z 2.0953 44/21 0.295 104x z 0.21212 7/33 0.571 105
Como el error relativo ms grande en las operaciones es 0.295 104 losresultados tienen 5 dgitos signicativos ya que 0.295104 = 2.95105 z, y
x =0 d1d2d3 dpdp+1dp+2 dkdk+1 10nz =0 d1d2d3 dpp+1p+2 kk+1 10n
si se utiliza una mquina decimal que usa una mantisa a k dgitos (corte)entonces
fl(x) =0 d1d2d3 dpdp+1dp+2 dk 10nfl(z) =0 d1d2d3 dpp+1p+2 k 10n
Ahora,
fl(x) fl(z) = 0.000 0 p cifras
p+1p+2 k k - p cifras
10n
x y = fl(fl(x) fl(z)) = 0. p+1 p+2k k - p cifras
10np
17
-
CAPITULO 1. REPRESENTACIONES DE NMEROS Y ERRORES
Por lo tanto el nmero que se usa para representar a x z tendr solamentek p cifras signicativas.La prdida de dgitos signicativos debido al error de redondeo a veces
se puede evitar reformulando el problema o reordenando los clculos o reem-
plazando en el caso de haber una funcin por un polinomio de Taylor.
Ejemplo 1.4.1. El enunciado
x2 + 1 1 implica perdida de cifras signi-cativas para valores de x cercanos a 0 ya que
x2 + 1 1 para x 0 , y serestaran dos nmeros casi iguales.
Si se evala en x = 0.1 y se usa aritmtica a 6 dgitos usando redondeose tiene:
x2 = 0.01 = 0.1 101x2 + 1 = 0.1 101 + 1 = 1.01 = 0.101 101x2 + 1 = 1.004987562 = 0.1004987562 101x2 + 1 1.00499 (redondeo a 6 dgitos)
x2 + 1 1 1.00499 1x2 + 1 1 0.00499 = 0.499 102.Para evitar la prdida de dgitos signicativos el enunciadox2 + 1 1 se puede presentar tambin como
x2 + 1 1 =
(x2 + 1 1
) (x2 + 1 + 1)(x2 + 1 + 1
) = x2x2 + 1 + 1
x2x2 + 1 + 1
0.011.00499 + 1
=0.01
2.00499= 0.498756 102
(redondeo a 6 dgitos)
El valor real de
x2 + 1 1 en x = 0.1 es 0.498756211 102.El error relativo con la expresin
x2 + 1 1 es:
4.88793913 104 < 5 104. (cuatro cifras signicativas).El error relativo con la expresin
x2x2 + 1 1 es:
4.230523758 107 < 5 107 (siete cifras signicativas).Ejemplo 1.4.2. El valor del polinomio 3.5x2 4.9x evaluado en x = 5.8 es89.32.
Si se usa aritmtica de 3 dgitos redondeo, se tiene x2 33.6, 3.5x2 118,
18
-
Anlisis Numrico con MATLAB
4.9x 28.4. Luego 3.5x24.9x 89.6, el error relativo es aproximadamente3.135 103.Si el polinomio se escribe como x(3.5x 4.9) y se evala en x = 5.8 usandoaritmtica de 3 dgitos y redondeo entonces, 3.5x 20.3, 3.5x 4.9 15.4asi tenemos que x(3.5x 4.9) 89.3En este caso el error relativo es 0 (no siempre es as). El error se ha reduci-
do porque en la segunda parte se ha disminuido el nmero de clculos, en la
primera se necesitan 3 multiplicaciones y una resta. En la segunda slo dos
multiplicaciones y una resta.
En general los polinomios deben expresarse en forma anidada antes de reali-
zar una evaluacin, porque as se disminuye al mnimo la cantidad de clculos
aritmticos.
Si el polinomio ax3+bx2+cx+d se expresa como x[x(ax+b)+c]+d Cuntasoperaciones necesita cada expresin para su evaluacin?
Ejemplo 1.4.3. La cantidad
14.0000000024 2 presenta prdida de cifrassignicativas por que se restan nmeros casi iguales.
Una forma alternativa para aproximar esta cantidad es la siguiente.
El polinomio de Taylor de grado 1 para la funcin f(x) =x alrededor de
x0 = 4 es:
P1 (x) =f (x0) + f (x0) (x x0)
P1 (x) =2 +1
4(x 4)Ahora se puede aproximar f(x) por P1(x),y evaluar en x = 4.0000000024
f(x) P1 (x)x 2 + 1
4(x 4)Evaluando en x tenemos
4.0000000024 2 + 14
(4.0000000024 4) = 2 + 14
(0.0000000024)
= 2 +1
4
(24 1010)
= 2 + 6 1010Luego
14.0000000024 2
1
2 + 6 1010 2 =1
6 1010 =1
6 1010
19
-
CAPITULO 1. REPRESENTACIONES DE NMEROS Y ERRORES
Los tres primeros dgitos signicativos son 1.67 109.Encuentre en diferentes calculadoras o en un computador el nmero igual
a
14.0000000024 2 Qu puede concluir?
1.5. Ejercicios
1. Escriba los nmeros 275.5, 79.625 y 22 + 210 en base 2, 8 y 16.
2. Halle en decimal (16.1)8, (1C.AF )16, (1.0011)2, (1001.01)2.
3. Escriba los nmeros del ejercicio 1 en la notacin cientca en el sistema
binario.
4. Veamos cmo hallar el nmero racional en base 10 representada por el
nmero binario (0.01)2
Escribindolo en forma desarrollada:
(0.01)2 = (0 21) + (1 22) + (0 23) + (1 24) +
=k=1
(22)k = 1+k=0
(22)k
= 1 + 11 1/4 = 1 + 4/3 = 1/3.
Es una serie geomtrica de razn 1/4 y primer trmino 1.
Muestre que (0.0011)2 =15
= 0.2 y que (0.001)2 =17.
5. Represente los nmeros 7.2 y 8/7 en un formato de precisin simple(use corte) (Sugerencia: utilice el resultado del ejercicio 4)
6. Obtenga el equivalente decimal de los nmeros dados en los siguientes
formatos
a) Precisin simple
0 10011111 01110000000000000000101
b) Precisin doble
20
-
Anlisis Numrico con MATLAB
1 01111111 11000000000000000000000
0 00001111111 100000000 . . . 00000000011
7. Encuentre en decimal el nmero siguiente y el anterior a los nmeros
del ejercicio 6 a).
8. Demuestre que 4/5 no se puede representar de manera exacta en unamquina que tiene un formato de precisin simple. Cul es el nmero
de mquina ms cercano?.
9. Es 2/3 (1 224) un nmero que se puede representar de manera exac-ta en un formato de precisin simple?
10. Cules de los siguientes nmeros se pueden representar exactamente
en un formato de precisin simple?
1040, 21, 1/5, 1/3 y 1/256.
11. Sea x = 216 + 28 + 29 + 210. Si x denota el nmero de mquinams cercano a x en un formato de precisin simple Cul es el valor de|x x|?.
12. Convierta los siguientes nmeros binarios en su forma decimal.
a) 1.0110101
b) 11.0010010001
13. Los nmeros del ejercicio anterior son aproximadamente
2 y pi. Halleel error de dichas aproximaciones; es decir, halle
a)
2 1.0110101 (use 2=1.41421356237309 . . . )b) pi 11.0010010001 (use pi=3.14159265358979 . . . )
14. La serie innita 1 + 12
+ 13
+ 14. . . es divergente. Escriba un programaque evale esta suma. Es divergente la serie de la computadora? En
caso negativo, por qu no?
21
-
CAPITULO 1. REPRESENTACIONES DE NMEROS Y ERRORES
15. El trmino epsilon de la mquina es el menor valor positivo tal que la
mquina es capaz de distinguir entre (1 + ) y 1. Este valor dependedel hardware y de cmo el compilador de un lenguaje de programacin
almacena la mantisa de un nmero de punto otante. El epsilon de la
mquina para una mantisa normalizada (1 f) donde f se almacena enubicaciones de n bits es igual a 2n. Para una mantisa no normalizada(1f) que se almacena en ubicaciones de n bits, el epsilon de la mquinaes 21n. El error al almacenar una cantidad x tiene una cota superior |x|. (Akai, p. 60-61).Determine el epsilon de su mquina.16. El epsilon de la mquina (ver el problema 15) permite estimar una
cota superior para el error en una operacin. Sea f(x, y)el resultadoverdadero de una operacin sobre x y y y sea el epsilon de la mquina.El error E al calcular y almacenar f(x, y) est acotado por
E 6 B = |f (x, y) |+ (1 + )(xfx
+ yfy)Los trminos con las derivadas parciales explican los errores en la ope-
racin debidos a representaciones inexactas de x y y; la multiplicacinpor (1 + ) y la adicin de |f(x, y)| explica los errores al almacenarel resultado.
Con el resultado del problema 15 (o un valor cticio de 10
7para
), estimar la cota superior B para el error en z en las operacionessiguientes. (Akai, p. 61).
a) z = 1.897 + 9.635
b) z = 4.058 13.27c) z = 2.345 19.28d) z = 19.28 2.34517. Aplique la aritmtica de redondeo a tres dgitos para realizar los si-
guientes clculos. Calcule los errores absolutos y relativos con el valor
exacto determinado por lo menos a 5 dgitos.
a) (121 0.327) 119
b)
1314 6
7
2e 5.422
-
Anlisis Numrico con MATLAB
c)
pi 227
117
18. Repita el ejercicio anterior aplicando la aritmtica de corte a 3 dgitos.
19. Sea f(x) =x cosx senxx senxa) Encuentre lim
x 0f(x)
b) Aplique la aritmtica de redondeo a cuatro dgitos para evaluar
f(0.1).
c) Reemplace las funciones trigonomtricas con su tercer polinomio
de Maclaurin y repita la parte b).
d) El valor real es f(0.1) = 1.99899998. Encuentre el error relativode los valores obtenidos en las partes b) y c).
20. Suponga que los puntos (x0, y0) y (x1, y1) se encuentran en una rectay que y1 6= y0. Se cuenta con dos frmulas para hallar la interseccin xde la lnea:
x =x0y1 x1y0y1 yo x = x0
(x1 x0)y0y1 yo
a) Demuestre que ambas frmulas son algebraicamente correctas.
b) Use los datos (x0, y0) =(1.31, 3.24), (x1, y1) =(1.93, 4.26) y laaritmtica de redondeo a tres dgitos para calcular la interseccin
x en ambas frmulas Cul de los mtodos es mejor? (Burden, p.28).
21. El polinomio de Taylor de grado n para f(x) = ex esni=0
xi
i!.
Use este polinomio y la aritmtica de corte a tres dgitos para encontrar
una aproximacin a e5 mediante cada uno de los siguientes mtodos.
a) e
5 9i=0
(5)ii!
=9i=0
(1)i5ii!
23
-
CAPITULO 1. REPRESENTACIONES DE NMEROS Y ERRORES
b) e5 = 1/e5 19i=0
(5)i
i!
Cul frmula da mayor exactitud?.
22. Sugiera cmo se podra evitar la prdida de dgitos signicativos en los
siguientes clculos si x 0:a)
x2 + 1 xb) x3(senx x)c) (cosx ex)/ senxd) senhx tanhx23. Suponga que a 6= 0 y que b24ac > 0 y conside la ecuacin ax2+bx+c =
0. Sus races se pueden hallar mediante la conocida frmula:
a)
x1 = (b+b2 4ac)/(2a) x2 =(b
b2 4ac)/(2a)
Pruebe que estas races pueden calcularse mediante las frmulas
equivalentes
b)
b) x1 = (2c)/(b+b2 4ac
)x2 = (2c)/
(bb2 4ac
)Indicacin: Racionalice el numerador.
Observacin: Cuando
b2 4ac |b|, hay que proceder con cuidadopara evitar la prdida de precisin por cancelacin. Si b > 0, entoncesx1 debera ser calculado con la segunda frmula y x2 con la primerfrmula; mientras si b < 0, entonces x1 debera ser calculado usando laprimera frmula y x2 debera ser calculado usando la segunda.
24. Use la frmula adecuada para calcular x1 y x2, tal como se explica enel anterior ejercicio, para hallar las races de las siguientes ecuaciones
de segundo grado. (Use aritmtica de corte a 6 dgitos).
24
-
Anlisis Numrico con MATLAB
a) x2 1000.001x+ 1 = 0b) x2 + 10000.0001x+ 1 = 0
25. Determine los tres primeros dgitos signicativos de los nmeros
a) [(8.0000000025)1/3 2]1Sugerencia: Utilice serie de Taylor para aproximar (8 + x)1/3
b)
1015
1015 ln(1 + 1015) 1Sugerencia: Utilice la serie de Taylor para aproximar ln(1 + x)
c)
0.13 1015cos(1010) 1 use radianes.Sugerencia: Utilice serie de Taylor para aproximar cosx
25
-
CAPITULO 1. REPRESENTACIONES DE NMEROS Y ERRORES
26
-
Capitulo2Ceros de Funciones
En este capitulo se estudia el problema de encontrar los valores que hacen
que una funcin de una variable se anule (Figura 2.1), es decir; dada una
funcin f : R R, debemos encontrar los valores de x para los cualesf(x) = 0. Dada una funcin f , una raz o cero de f , es un nmero c tal quef(c) = 0.
Figura 2.1: Puntos de corte con el eje X para la funcin f(x)
A continuacin se consideran varios de los mtodos clasicos para resolver
27
-
CAPITULO 2. CEROS DE FUNCIONES
este problema.
2.1. Mtodo de Biseccin
Si f es una funcin continua sobre el intervalo [a, b] y si f(a) f(b) < 0,entonces f debe tener por lo menos un cero o raz en (a, b) (Figura 2.2).
a c b
f(a)
[ |
f(b)
]
f(a)f(b)
-
Anlisis Numrico con MATLAB
Si f(a)f(c) > 0, entonces f(c)f(b) < 0 y en este caso se renombra a ccomo a.
En ambos casos se ha generado un nuevo intervalo que contiene un cero
de f , y el proceso puede repetirse.Lo anterior genera las sucesiones {an}, {bn} y {cn} (gura 2.3). Se dejacomo ejercicio para el lector demostrar que las dos primeras son monotonas
crecientes y decrecientes respectivamente, adems se encuentran acotadas, lo
cual garantiza la convergencia de ambas sucesiones.
Figura 2.3: Representacin graca sucesiones generadas en el mtodo de Bi-
seccin
Ejemplo 2.1.1. La funcin f(x) = x sinx 1 tiene un cero en el intervalo[0, 2], porque f(0) = 1 y f(2) = 0.818595.
29
-
CAPITULO 2. CEROS DE FUNCIONES
Figura 2.4: Graca de la funcin f(x) = x sinx 1
Si se denota a1 = a = 0, b1 = b = 2 y c1 = (a1 + b1)/2, entonces c1 = 1Ahora f(c1) = f(1) = 0.158529, luego la funcin tiene un cero en elintervalo [c1, b1] = [1, 2]; se renombra a2 = c1 y b2 = b1.El nuevo punto medio es c2 = (a2 + b2)/2 = (1 + 2)/2 = 1.5 y f(c2) =
f(1.5) = 0.496242Puesto que f(1) = 0.158529 y f(1.5) = 0.496242, el cero esta en elintervalo [a2, c2] = [1, 1.5] y se renombra como [a3, b3]En la tabla de abajo se muestran las primeras nueve iteraciones del mtodo
de biseccin para f(x) = x senx 1 con a = 0 y b = 2.Finalmente tenemos que c = 1.114157141 es el cero de f(x) = x senx1.
Para detener el mtodo de biseccin y dar una aproximacin del cero de
una funcin se pueden usar varios criterios, los cuales son conocidos como
criterios de parada.
Uno de los criterios de parada consiste en examinar si |f(cn)| < , donde esuna tolerancia previamente establecida (por ejemplo = 103). Otro criterioque se puede utilizar es examinar s |bn an| /2 < .Tambin se puede usar como criterio de parada el error relativo entre dos
aproximaciones del cero de f , |(cn cn1)/cn| < .En el ejemplo anterior si = 0.005, el procedimiento se parara en laoctava iteracin con el criterio |f(cn)| < , ya que:
30
-
Anlisis Numrico con MATLAB
n Extremo
izquierdo
an
Extremo
derecho
bn
Punto
medio
cn
Valor de la
funcin
f(cn)
Error Relativo
|(cn cn1)/(cn)|
1 0 2 1 0.158529
2 1 2 1.5 0.496242 0.333333
3 1 1.5 1.25 0.186231 0.2
4 1 1.25 1.125 0.015051 0.111111
5 1 1.125 1.0625 -0.071827 0.0588235
6 1.0625 1.125 1.09375 -0.028362 0.0285714
7 1.09375 1.125 1.109375 -0.006643 0.0140845
8 1.1093750 1.125 1.1171875 0.004208 0.0069930
9 1.1093750 1.1171875 1.11328125 -0.001216 0.0035087
|f(c8)| = |f(1.1171875)| = 0.004208 < = 0.005
pero si se usa el criterio |(cn cn1)/cn| < , el procedimiento se detendraen la novena iteracin porque:
c9 c8c9 = 1.11328125 1.11718751.11328125
= 0.0035087 < = 0.005Cuando se generan aproximaciones por medio de una computadora, se
recomienda jar un nmero mximo de iteraciones N que debera realizar lamquina. Esto con el n de contar con un resguardo para evitar la posibilidad
de que el proceso de clculo caiga en un ciclo innito cuando la sucesin
diverge (o cuando el programa no esta codicado correctamente).
2.1.1. Convergencia
Teorema 2.1 (Convergencia Biseccin). Supongamos que f es continua en[a, b] y f(a)f(b) < 0. Sea {cn}n=0 la sucesin de puntos medios de los in-tervalos generados por el mtodo de biseccin. Entonces {cn} converge a unpunto c [a, b] tal que f(c) = 0 y, adems
|cn c| 6 b a2n
, n > 1
31
-
CAPITULO 2. CEROS DE FUNCIONES
Demostracin. El teorema del valor intermedio garantiza la existencia de
c [a, b] tal que f(c) = 0. Por construccin del mtodo, para todo n > 1, setiene que
bn an = b a2n1(2.1)
Adems c esta en cada intervalo (an, bn). La distancia entre cn y c no puedesuperar la mitad de la longitud de cada intervalo, es decir
|c cn| 6 bn an2
De (2.1) se tiene que
|c cn| 6ba2n1
2=b a
2n(2.2)
Aplicando limite cuando n, en la desigualdad anterior se tiene quela sucesin de puntos medios converge a la raz c.
q
Utilizando (2.1) se puede demostrar que las sucesiones an y bn convergena c.De acuerdo con el teorema anterior, en el mtodo de biseccin es posible
determinar cuantas iteraciones son necesarias para aproximar el cero de una
funcin con una exactitud especca, ya que el error despus de n iteracioneses |c cn| 6 (b a)/2n.Ejemplo 2.1.2. Para determinar el nmero de iteraciones necesarias para
aproximar el cero de f(x) = x senx 1 con una exactitud de 102 en elintervalo [0, 2], se debe hallar un nmero n tal que:
|c cn| 6 b a2n
< 102
Es decir (2 0)/(2n) < 102, n > 7.643 . . .. Se necesitan aproximada-mente unas 8 iteraciones.Observe en la tabla de aproximaciones que el cero de f(x) = x senx 1es c = 1.114157141 y c8 = 1.1171875.El error real es |c c8| = 0.003030359 3 103. El error real es menorque el error dado por el teorema; en la mayora de casos la cota de error
dada por el teorema es mayor que el nmero de iteraciones que realmente se
necesitan. Para este ejemplo, |c c7| = 0.004782141 < 102 = 0.01.
32
-
Anlisis Numrico con MATLAB
El mtodo de biseccin tiene la desventaja que es lento en cuanto a con-
vergencia, es decir que se necesita un n grande para que |c cn| sea pequeo.Otros mtodos requieren menos iteraciones para alcanzar la misma exacti-
tud, pero entonces no siempre se conoce una cota para la precisin.
El mtodo de biseccin suele recomendarse para encontrar un valor apro-
ximado del cero de una funcin, y luego este valor se rena por medio de
mtodos ms ecaces. La razn es porque la mayora de los otros mtodos
para encontrar ceros de funciones requieren un valor inicial cerca de un cero;
al carecer de dicho valor, pueden fallar por completo.
Resolver una ecuacin en una variable como por ejemplo: xex = 1 esequivalente a resolver la ecuacin xex 1 = 0, o a encontrar el cero dela funcin f(x) = xex 1. Para aproximar el cero de f o la raz de laecuacin, se puede hacer la grca de f y determinar un intervalo donde ftenga un cero. Tambin se pueden probar nmeros a y b de tal manera quef(a)f(b) < 0. Para el caso de f(x) = xex 1, por ejemplo, f(0) = 1,f(1) = e 1 1.71828 entonces f tiene un cero en el intervalo [0, 1]. Pero sitomamos valores no apropiados para a y b, es posible que el criterio que seconstruyo falle y no se detecte la raiz que se busca (Figura 2.5)
Figura 2.5: Intervalo de busqueda erroneo para la funcin f(x) = xex 1
Cuando hay races de mltiplicidad diferente de 1, el mtodo de biseccin
33
-
CAPITULO 2. CEROS DE FUNCIONES
quiz no sea vlido, ya que la funcin podra no cambiar de signo en puntos
situados a cualquier lado de sus races (Figura 2.6)
Figura 2.6: Raices mltiples
La grca es fundamental para aclarar la situacin. En este caso sera
posible hallar los ceros o races trabajando con la derivada f (x), que es ceroen una raz multiple.
A continuacin se da un codigo basico en MATLAB, que implementa el
mtodo de Biseccin, Se deja como ejercicio para el lector, cambiar el codigo
para que dada una tolerancia, calcule el nmero de iteraciones necesarias
para que la aproximacin al cero, cumpla con la tolerancia (2.2).
Algoritmo 1 (Algoritmo Biseccin). Dada una funcin continua f, dos n-
meros a y b tales que, a 0.
while (b-a)/2 > tol
c=(a+b)/2;
if f(c)==0
a=c;
b=c;
end
if sign(f(a))==sign(f(b))
a=c;
34
-
Anlisis Numrico con MATLAB
else
b=c;
end
end
2.2. Mtodo de la Regula Falsi
Supongamos que f(x) es continua en un intervalo [a, b] con f(a).f(b) < 0.El mtodo consiste en aproximar la grca de f(x) por una recta que une(a, f(a)) y (b, f(b)). El corte c de la recta con el eje X se usa para generardos subintervalos, [a, c] y [c, b], donde:
c =b f(b)(
b af(b) f(a)
)=af(b) bf(a)f(b) f(a)
Se escoge el intervalo que contenga la raz , examinando los productos;f(a)f(c) y f(c)f(b) y se repite el proceso anterior. La Figura 2.7 muestra laevolucin geometrica de las rectas secantes que se van generando. El mtodo
anterior es conocido como mtodo de la Falsa posicin o Regula Falsi.
35
-
CAPITULO 2. CEROS DE FUNCIONES
!"# $%
!! " "
#$ %&'% ()&* # &+%,-.% &)'+&/)(%
!
"
#
$
"! % "
$
! "
! " # " $
0 ! % 1(*$&')$'%2 3% *4'+%$%$ 5)& ,+&6
,)& (*$(57&+*$%& 87% %$ %5 ()&* 9: -%.*
(*$
& 1
% !
;
,%%,-5)?) 5)& &%()$'%& -*. .%(')& @% ,%$*. -%$@+%$'% A)&') 87% ! 87%@%
%$(%..)@) %$'.% @*& +'%.)@*& &7(%&+B*&2
#&'% ,
-
Anlisis Numrico con MATLAB
La siguiente rutina describe la iteracin basica del mtodo de la Regula
Falsi. El valor absoluto de la funcin evaluada en cada iteracion, es utilizado
como criterio de parada. Se deja como ejercicio para el lector la implemen-
tacin de otros criterios de parada, y codigos que permitan visualizar la
funcin.
Algoritmo 2 (Algoritmo Regula Falsi). Dada una funcin f dos veces dife-
renciable, dos nmeros a y b tales que, a 0.
c=a;
while abs(f(c)) > tol
c=(a*f(b)-b*f(a))/(f(b)-f(a));
if f(c)==0
a=c;
b=c;
end
if sign(f(a))==sign(f(b))
a=c;
else
b=c;
end
end
2.3. Mtodo de Newton
El mtodo de Newton o tambin llamado mtodo de Newton-Raphson,
es uno de los mtodos mas tiles y mejor conocido para aproximar el cero de
una funcin.
Suponga que c es un cero de f , es decir, f(c) = 0 y que x0 es unaaproximacin de c. El polinomio de Taylor de grado uno para f alrededor dex0 y su correspondiente residuo es:
f(x) = f(x0) + f(x0)(x x0) +
f (z)2
(x x0)2 , (2.4)
z esta entre x0 y x.
37
-
CAPITULO 2. CEROS DE FUNCIONES
Si en la ecuacin (2.4) se reemplaza x por c y usando el hecho que f(c) = 0,se obtiene:
0 = f(x0) + f(x0)(c x0) +
f (z)2
(c x0)2 (2.5)
si x0 est sucientemente cerca de c, entonces en el ltimo sumando de laecuacin (2.5) el trmino (c x0)2 ser pequeo, comparado con la suma delos dos primeros trminos.
Si se desprecia este trmino se puede usar la expresin (2.5) para encontrar
una aproximacin al cero de f .
0 f(x0) + f (x0)(c x0) (2.6)
Despejando c en la ecuacin (2.6), se obtiene:
c x0 f(x0)/f (x0)
El mtodo de Newton comienza con una aproximacin inicial x0 del cerode la funcin a partir de la cual se dene una sucesin {xn} de aproximacionesdenidas por:
xn+1 = xn f(xn)
f (xn), n > 0 (2.7)
Desde un punto de vista geomtrico, lo que hace el mtodo de Newton
es construir la recta tangente a la grca de f en un punto cercano x0 a cy encontrar el cero de la recta tangente, x1 ( gura 2.8). La aproximacinx2 es el cero de la recta tangente a la grca de f en el punto x1 y assucesivamente.
38
-
Anlisis Numrico con MATLAB
Figura 2.8: Interpretacin geomtrica
Ejemplo 2.3.1. Para aproximar una solucin de la ecuacin 3x+sen x = ex,se puede tomar f(x) = 3x + senx ex. Observe que f(0) = 1 y f(1) =1.123189, segn el teorema del valor intermedio existe un cero de f en elintervalo [0, 1].
Si se aplica el mtodo de Newton comenzando con x0 = 0 se tiene:
f(x) = 3x+ senx exf(x) = 3 + cosx ex
x1 = x0 f(x0)f (x0)
= 0 (1)3
=1
3
x2 = x1 f(x1)f (x1)
=1
3 0.068417728
2.549344521= 0.360170713
x3 = x2 f(x2)f (x2)
= 0.360170713 6.2798651 104
2.502262549= 0.33357967
Para esta funcin |(x3 x2)/x3| = 6.96 104 < 103, |f(x3)| = 5.744108 < 107 y |x3 x2| = 2.50967 104 < 103.
39
-
CAPITULO 2. CEROS DE FUNCIONES
Los criterios de parada mencionados en el mtodo de biseccin tambin
pueden ser utilizados en el mtodo de Newton. A continuacin se estudiara
la convergencia, expandiendo f(x) alrededor de xn:
f(x) = f(xn) + (x xn)f (xn) + (x xn)2
2f(zn), zn (xn, x)
Haciendo x = c y teniendo en cuenta que f(c) = 0 se tiene,
0 = f(xn) + (c xn)f (xn) + (c xn)2
2f(zn), zn (xn, c)
0 =f(xn)
f (xn)+ (c xn) + (c xn)2 f
(zn)
2f (xn)
c = xn + f(xn)f (xn
+ (c xn)2 f(zn)
2f (xn)
c = (xn f(xn)
f (xn)
)+ (c xn)2 f
(zn)
2f (xn)
Usando (2.7) se obtiene(xn f(xn)
f (xn
) c = (xn c)2 f
(zn)
2f (xn)
xn+1 c = (xn c)2 f(zn)
2f (xn)
S se dene el error en el paso n-esmo por: en = xn c, entonces
en+1 = e2n
(f(zn)
2f (xn)
), zn (xn, c) (2.8)
2.3.1. Convergencia
Teorema 2.3 (Convergencia Newton). Sea f una funcin dos veces diferen-ciable en un intervalo alrededor de c con f(c) = 0 y f (c) 6= 0. Si x0 esta losucientemente cerca a c, la iteracin (2.7) del mtodo de Newton convergea c.
40
-
Anlisis Numrico con MATLAB
Demostracin. Considere un intervalo I = [c , c+ ], con > 0. Se toma
M =1
2maxxI
f (x)f (x)Una condicin inicial x0 I tal que M |0| < 1. Usando (2.8) se tiene que
|1| M |0|2 = M |0||0| < |0| luego x1 I, ya que:
|1| < |x1 c| <
< x1 c < + c < x1 < + cx1 [c , c+ ]Adems,
M |1| M2|0|2 < 1M |1| (M |0|)2 < 1Suponga que xn I y M |n| < 1, entonces
|n+1| M |n|2 = M |0||0| < |n| Por lo tanto xn+1 I y
M |n+1| (M |n|)2 < 1 (2.9)Se tiene que xn I y M |n| < 1 para todo n. Adems, de (2.9) se tiene
M |n+1| (M |0|)2n
|n+1| 1M
(M |0|)2n
Al ser M |0| < 1, lmn n = 0 y por lo tanto xn c. Tomando limites en(2.8)
lmn
n+12n
=f (c)2f (c)
Por la continuidad de f y porque zn c cuando nq
41
-
CAPITULO 2. CEROS DE FUNCIONES
La convergencia del mtodo se puede garantizar, si
M |x0 c| = M |0| < 1es decir, si
|x0 c| < 112
maxxIf (x)f (x) lo cual indica, que tan cerca debe estar x0 de la raz c. La estructura de lacondicin anterior, indica que el mtodo presentara problemas de convergen-
cia, si una de las iteraciones se anula en la primera o segunda derivada de f .Ms adelante se trabajar un algunas ejemplos donde el mtodo de Newton
no converge.
Por otro lado, la relacin de los errores que se describe en (2.8), indica
que cada error es proporcional a la segunda potencia del error previo. Es
decir, que si se comienza con una aproximacin del cero de f con 1 dgitocorrecto, despus de una iteracin se tendra dos dgitos correctos; despus
de dos iteraciones cuatro dgitos correctos; y despus de tres iteraciones ocho
dgitos correctos, etc.
Ejemplo 2.3.2. Halle una expresin para aproximar la raz cuadrada de un
nmero R > 0. Use la expresin para aproximar
5.
x =R
x2 = R
x2 R = 0, x es la raz cuadrada de RSe puede aplicar el mtodo de Newton a la funcin f(x) = x2 R.
xn+1 = xn f(xn)
f (xn)
xn+1 = xn x2n R
2xn,
xn+1 =1
2
(xn +
R
xn
)
Para aproximar
5, se usa la frmula con R = 5 y si se toma x0 = 2entonces
42
-
Anlisis Numrico con MATLAB
x1 =1
2
(x0 +
5
x0
)= 2.25
x2 =1
2
(x1 +
5
x1
)= 2.236111111 . . .
x3 =1
2
(x2 +
5
x2
)= 2.236067978 . . .
en una calculadora
5 = 2.236067977 . . .
Existen funciones y puntos iniciales para los que el mtodo de Newton
fracasa. La Figura 2.9 muestra una funcin en la que la grca tiene una
forma especial y la cual genera que la sucesin entre en un ciclo innito, es
decir, diverge.
La Figura 2.10 muestra una funcin y una condicin inicial x0, que hace queel mtodo se indetermine. Porque divergen las iteraciones anteriores ?
Figura 2.9: Divergencia mtodo de Newton.
43
-
CAPITULO 2. CEROS DE FUNCIONES
Figura 2.10: Divergencia mtodo de Newton.
En el mtodo de Newton hay que evaluar dos funciones en cada iteracin,
f(xn) y f(xn). Para algunas funciones f (xn) no es una expresin sencilla yse requieren ms operaciones aritmticas para evaluarla que para la funcin.
Esto hace que el mtodo de Newton sea ms costoso, por ejemplo que el
mtodo de biseccin, en el que en cada iteracin la funcin se evala una vez.
La siguiente rutina describe la iteracin basica mtodo de Newton. El
valor absoluto de la funcin evaluada en cada iteracion, es utilizado como
criterio de parada. Se deja como ejercicio para el lector la implementacin de
otros criterios de parada, y codigos que permitan visualizar las rectas que se
van generando. Adems, es importante implementar algunas restriccin, ya
que si la funcin no cumple con las condiciones de convergencia del mtodo,
el denominador se puede indeterminar o se puede entrar en un ciclo innito.
Algoritmo 3 (Algoritmo Newton). Dada una funcin f, su derivada g, una
condicin inicial x0 y una tolerancia tol> 0.
c=x0-(f(x0)/g(x0));
44
-
Anlisis Numrico con MATLAB
while abs(f(c))>tol
x0=c;
c=x0-x0-(f(x0)/g(x0));
end
2.4. Mtodo de la Secante
El mtodo de la secante, es otro mtodo para aproximar el cero de una
funcin en el que en cada iteracin se evala la funcin y no la derivada. A
continuacin se presenta este mtodo.
Utiliza la misma frmula del Mtodo de Newton:
xn+1 = xn f(xn)
f (xn)
Pero en lugar de utilizar la derivada f (xn), este valor se aproxima por
f (xn) f(xn) f(xn1)
xn xn1
Al reemplazar esta aproximacin de f(xn) en la frmula de Newton seobtiene:
xn+1 = xn f(xn)(xn xn1)f(xn) f(xn1) n > 1, (2.10)
Ya que el clculo de xn+1 requiere conocer xn y xn1, se debe dar alprincipio dos aproximaciones iniciales x0 y x1.
La interpretacin geomtrica del mtodo de la secante es similar a la del
mtodo de Newton. La recta tangente a la curva se reemplaza por una recta
secante. El cero de f se aproxima por el cero de la recta secante a f , ( Figura(4.10)). Si x0 y x1 son las aproximaciones iniciales, la aproximacin x2 esla interseccin de la recta que une los puntos (x0, f(x0)) y (x1, f(x1)). Laaproximacin x3 es la interseccin de la recta que une los puntos (x1, f(x1))y (x2, f(x2)) y as sucesivamente.
45
-
CAPITULO 2. CEROS DE FUNCIONES
Figura 2.11: Interpretacin geomtrica del Mtodo de la secante.
Ejemplo 2.4.1. Efecte tres iteraciones del mtodo de la secante para la
funcin f(x) = x senx 1 con x0 = 1 y x1 = 2.
x2 = x1 f(x1)(x1 x0)f(x1) f(x0)
= 2 (2 sen 2 1)(2 1)(2 sen 2 1) (sen 1 1) = 1.162240449
x3 = x2 f(x2)(x2 x1)f(x2) f(x1) = 1.236422098
x4 = x3 f(x3)(x3 x2)f(x3) f(x2) = 1.113511445
Para este caso f(x4) = 0.000896772969, ademas |f(x4)| < 0.0009.Este ejercicio se resolvi con el mtodo de biseccin en la seccin anterior
y en la novena iteracin |f(x9)| = 0.001216 . . .
46
-
Anlisis Numrico con MATLAB
2.4.1. Convergencia
Teorema 2.4 (Convergencia Secante). Sea f una funcin dos veces dife-renciable en un intervalo que contiene a una raz c de f y supongamos quef (c) 6= 0. Si x0 y x1 estan lo sucientemente proximos a c, entoces la suce-sin denida en (2.10) converge a c.
Demostracin. Los detalles de la demostracin se pueden encontrar en [2].
De la demostracin extraemos algunos aspectos importantes. Dado un > 0y un intervalo I = [c , c+ ].x0 y x1 estan lo sucientemente proximos a c, si M max{|0|, |1|} < 1 y|0| , |1| , donde
M = maxxI
f (x)2f (x)
q
Si
f (c)2f (c) es grande, habra que tomar x0 y x1 muy proximos a c, ademssi la primera o segunda derivada se anula, el mtodo no funciona bien.
El mtodo de la secante converge a la solucin ms lentamente que el mtodo
de Newton, pero tiene la ventaja de no usar la derivada en cada iteracin.
A continuacin se describe un codigo para el mtodo de la Secante. Se
utiliza como criterio de parada el valor absoluto de la funcin evaluada en
cada iteracion. Se deja como ejercicio para el lector la implementacin de
otros criterios de parada, y codigos que permitan visualizar las rectas que se
van generando.
Algoritmo 4 (Algoritmo Secante). Dada una funcin f dos veces diferen-
ciable, dos condiciones iniciales x0,x1 y una tolerancia tol> 0.
c=x1-(f(x1)*(x1-x0))/(f(x1)-f(x0));
while abs(f(c))>tol
x0=x1;
x1=c;
c=x1-(f(x1)*(x1-x0))/(f(x1)-f(x0));
end
47
-
CAPITULO 2. CEROS DE FUNCIONES
2.5. Mtodo del punto jo
Dada una funcin f(x), se dice que p es un punto jo de f , s f(p) = p.Geomtricamente un punto jo representa el corte entre la graca de f y larecta y = x. La gura 6.2 muestra una funcin f(x) que posee 5 puntos jos.
f(x)
y = x
Figura 2.12: Representacin graca del punto jo.
El Mtodo de Punto Fijo (tambin conocido como iteracin de punto
jo), es otro mtodo para hallar los ceros de f(x). Para resolver f(x) = 0, sereordena en una forma equivalente:
f(x) = 0
x g(x) = 0x = g(x)
Observe que si c es un cero de f(x), f(c) = 0 y c = g(c).
Para aproximar un cero de f se utiliza la iteracin de punto jo
xn+1 = g(xn), n = 0, 1, 2, 3, . . . (2.11)
48
-
Anlisis Numrico con MATLAB
donde x0 es una aproximacin inicial del cero de f .
Ejemplo 2.5.1. f(x) = x2 2x 3 = 0, tiene dos ceros. x = 3 y x = 1Supngase que se reordena para lograr la forma equivalente:
x2 2x 3 = 0x2 = 2x+ 3
x =
2x+ 3
x = g(x) =
2x+ 3
Si se comienza con x0 = 4 y se itera con la iteracin de punto jo 2.11, losvalores sucesivos de x son:
x0 = 4
x1 = g(x0) =
2(4) + 3 = 3.31662
x2 = g(x1) =
2(3.31662) + 3 = 3.10375
x3 = g(x2) =
2(3.10375) + 3 = 3.03439
x4 = g(x3) =
2(3.03439) + 3 = 3.01144
x5 = g(x4) =
2(3.01144) + 3 = 3.00381
Parece que los valores convergen a x = 3. Otro reordenamiento de f(x) =0 es
x2 2x 3 = 0x(x 2) 3 = 0
x =3
x 2 = g(x)
49
-
CAPITULO 2. CEROS DE FUNCIONES
Si nuevamente se comienza con x0 = 4, los valores sucesivos de x son:
x0 = 4
x1 = g(x0) =3
4 2 = 1.5
x2 = g(x1) =3
1.5 2 = 6
x3 = g(x2) =3
6 2 = 0.375x4 = 1.263158x5 = 0.919355x6 = 1.02762x7 = 0.990877x8 = 1.00305Parece que ahora x converge al otro cero de f , x = 1. Considrese untercer reordenamiento
x2 2x 3 = 02x = x2 3
x =x2 3
2= g(x)
Comenzando de nuevo con x0 = 4 se obtiene:
x0 = 4
x1 = 6.5
x2 = 19.625
x3 = 191.070
Resulta evidente que las iteraciones son divergentes.
La diferencia en el comportamiento de los tres reordenamientos se puede
apreciar considerando las grcas en los tres casos. El punto jo de x = g(x)es la interseccin de la recta y = x, y la curva y = g(x). En la gura 6.1se presentan los tres casos. Se comienza en el eje x con x0, se efecta undesplazamiento vertical hacia la curva, luego uno horizontal hacia la recta
50
-
Anlisis Numrico con MATLAB
y = x, luego uno vertical hacia la curva y nuevamente una horizontal haciala recta. Este proceso se repite hasta que los puntos en la curva convergen
a un punto jo o bien divergen. Parece que los diferentes comportamientos
dependen de que la pendiente de la curva sea mayor, menor o de signo opuesto
a la pendiente de la recta (que es igual a 1)Cuando se tiene la ecuacin f(x) = 0, existen muchas formas de reorde-narla en la forma x = g(x), por ejemplo para la ecuacin anterior x22x3 =0 otras alternativas son:
x2 2x 3 = 0x2 = 2x+ 3
x3 = 2x2 + 3x
x =3
2x2 + 3x
= g1(x)
x2 2x 3 = 0x(x 2) = 3
x 2 = 3x
x =3
x+ 2
= g2(x)
x2 2x 3 = 0x2 2x 3
2x 2 = 0
x (x2 2x 3)2x 2 = x
= g3(x)
Observe que la iteracin de g3(x), es el mtodo de Newton aplicado a g(x)Una pregunta que surge en este momento es cul de las funciones g sirvepara aproximar el punto jo de g? (o en forma equivalente el cero de f).A continuacin se presenta un teorema que da condiciones sucientes para
la existencia y unicidad del punto jo de una funcin.
2.5.1. Convergencia
Teorema 2.5. Si g es continua [a, b] y g(x) [a,b] para toda x [a, b],entonces g tiene un punto jo en [a, b]. Si adems g(x) existe en (a, b) yexiste una constante positiva K < 1 con |g(x)| 6 K, para todo x (a, b),entonces el punto jo en [a, b] es nico.
Demostracin. Si g(a) = a o si g(b) = b, entonces g tendr un punto jo enun extremo del intervalo [a, b]. Si se supone que g(a) 6= a y g(b) 6=b entoncesse debe tener que: g(a) > a y g(b) < b (por que g(x) [a, b] para todox [a, b])
g(a) a > 0 y g(b) b < 0. Si se dene t(x) = g(x) x, t es continua en[a, b] y t(a) = g(a) a > 0 ademas de t(b) = g(b) b < 0, Por el teorema
51
-
CAPITULO 2. CEROS DE FUNCIONES
del valor intermedio existe un c (a,b) tal que t(c) = 0, es decir g(c) c = 0,g(c) = c, luego c es un punto jo de g.Si se supone adems que |g(x)| 6 K < 1 y que c1 y c2 son dos puntosjos de g en [a, b] con c1 6= c2, por el teorema del valor medio, existe unnmero z entre c1 y c2 tal que
g(c2) g(c1)c2 c1 = g
(z) o |g(c2) g(c1)| = |g(z)||c2 c1|
Como c1 y c2 son puntos jos de g, g(c2) = c2 y g(c1) = c1, entonces|c2 c1| = |g(c2) g(c1)| = |g(z)||c2 c1| 6 k|c2 c1| < 1|c2 c1| (porque|g(x)| 6 k < 1)Luego, |c2 c1| < |c2 c1|, lo cual es una contradiccin, por lo tanto elpunto jo de g en [a, b] es nico.
q
Ejemplo 2.5.2. La funcin g(x) = (x2 3)/2 en el intervalo [2, 4] tiene unpunto jo nico. c = 3 es un punto jo de g porque g(3) = (32 3)/2 = 3.Observe que g(x) = x y en el intervalo [2, 4] g(x) > 0. g es creciente yg(x) [1/2, 6.5], adems |g(x)| > 1. (ya que g(x) = x y x (2, 4) ).El ejemplo anterior muestra que las hiptesis del teorema 2.5.1 son su-
cientes para garantizar un punto jo nico, pero no son necesarias.
El siguiente resultado da algunas pistas sobre los procedimientos que se
deben seguir y algunos que se deben excluir para escoger funciones que pro-
duzcan sucesiones que converjan a un punto jo.
Teorema 2.6 (Convergencia Punto jo). Sea g una funcin continua en[a, b] tal que g(x) [a, b] para toda x en [a, b]. Adems suponga que existeg en (a, b) y una constante positiva K < 1 tal que |g(x)| 6 K, para todax (a, b), entoncesPara todo x0 en (a, b), la sucesin denida por xn+1 = g(xn), converge alnico punto jo x en [a, b].
Demostracin.
|xn x| = |g(xn1) g(x)|= |g(z)||g(xn1) g(x)| (Por el teorema del valor medio)
|xn x| 6 K|xn1 x|( porque |g(x)| 6 K, x (a, b))
52
-
Anlisis Numrico con MATLAB
El teorema anterior implica que existe un punto jo nico en [a, b], ahorasi se aplica esta desigualdad inductivamente se obtiene:
|xn x| 6 K |xn1 x| 6 K2 |xn2 x| 6 6 Kn |x0 x||xn x| 6 Kn |x0 x|
lmn
|xn x| lmn
Kn |xo x| = 0
porque si |k| < 1, lmnKn = 0. Luego {xn} converge a x. q
Como consecuencia inmediata del teorema tenemos.
Corolario 2.1. S g satisface las hiptesis del teorema anterior, una cotapara el error al aproximar el punto jo x de g por xn esta dada por:
|xn x| 6 Kn max {x0 a, b x0}
Demostracin. Por el teorema anterior |xn x| 6 Kn|x0 x|.como x [a, b], |x0 x| 6 max {x0 a, b x0}.Luego, |xn x| 6 Kn max {x0 a, b x0}.
q
La iteracin del punto jo, presenta dos conguraciones geometricas. La
gura 2.13 muestra la conguracin en escalera, convergente y divergente.
La gura 2.14 da un ejemplo de la conguracin oscilante.
53
-
CAPITULO 2. CEROS DE FUNCIONES
!"#$%&'()*#"+
! "#
$!! " % #
! ! &' (#')' *+' #
!
" ! ,
$$
!$#
" !! #-./#01
#
!
" ! " #
" ! % /1 02)3'45')0#1 )2 '& .2/'7
8! "'1 $#! , (1)9 #7 :1 41;7
C! "'1 # , $#!& $#! ,
'
#
? ')(2)0'&
$#! , "
'
#
"
A
$
%
'! & "
.'42 #
!
,
'
#
'& @#3'45')('7 B& D;10#/ 3'4 *+' > % #
#
%
%
'A
$#
! " #(7
B/ .420'&2 #('41(#32 #
!
, $#
! .+'@' 4'.4'&')(14&' 5'2-;'(4#01-')('
02)@'41)@2 *+' '/ .+)(2 EF2 ! '& '/ .+)(2 @' #)('4&'00#;2) @' /1& D+)0#2)'&
) , # ' ) , $#!7 G2@'-2& 3#&+1/#=14 0+1(42 01&2&H $1! > %
$!! % A $6!
$!! " A $0! " %
$!! % >A $@!
$!! % " 7
!
"!!"
# # "
!$" # $
!
%&'()*' ('+,)&-)+.)
!)+ )*(/0)&/"
"!!"
!
"
!$" % $
!
%&'()*' 12,)&-)+.)
!)+ )*(/0)&/"
IJ
Figura 2.13: Ejemplo de iteracin en escalera.
54
-
Anlisis Numrico con MATLAB
!
"!!"
# # "
!$" # $
%&'()*' ('+,)&-)+.) !'*(/01+.)"
!"
!$"! # #
!
"!!"
"
!$" # #
!
%&'()*' 2/,)&-)+.) !'*(/01+.)"
!"
!$"! % #
!"#$%& '()('( !"! #$ #%#&'$( )*+*, -(. ! "! /# 01#.#
!2 #" # $
!
! #
" # $ !
"
3 #
"!# %"&
42 #" # $
"
' #
" # $
!" ' #
" !
3 #
"!# (" )
-2 #" # $
"
!
#
" # $
!&
"
"
! #
"
3 #
"!# !*"*
52 #" # $
&
!
'
!
"
!
#
" # $
+ "
!
! ! #
"!
"
! #
"
3 #
"!# $ (
!" #$%&'(') *&%+,&*-') (% '+(%. )/0%+*'+!
*"&+"#, '()(-( 6#! ! 7.! "!89: 5# $ #" #; # 7.!
7!.0# 51
-
CAPITULO 2. CEROS DE FUNCIONES
Adems
|g(x)| = 12x+ 3
5.15042 . . .
Por lo tanto se necesitan unas seis iteraciones para lograr una aproxima-
cin exacta dentro de 102.
Este ejercicio ya se resolvi al comienzo de esta seccin y se obtuvo x5 =3.00381. Observe que el error real |x5 x| = |3.00381 3| = 0.00381 0.
56
-
Anlisis Numrico con MATLAB
x1=f(x0);
while abs(f(x1)-f(x0))>tol
x0=x1;
x1=f(x1);
end
2.6. Ejercicios
1. A n de localizar las races de la ecuacin x3 +x = 6
a) Mediante evaluaciones en enteros determine un intervalo de lon-
gitud 1 que contenga una raz.
b) Aplique tres iteraciones del mtodo de biseccin para reducir la
longitud de este intervalo en un factor de 0.125.
2. Sea f(x) = (x + 2)(x + 1)2x(x 2). En cul cero de f converge elmtodo de biseccin en los siguientes intervalos?
a)[-1.5,2.5] b)[-0.5,2.4] c)[-0.5,3] d)[-3,-0.5]
3. Use el teorema (error en el mtodo de biseccin) para obtener una cota
del nmero de iteraciones que se requieren para alcanzar una aproxi-
macin con una exactitud de 103 a la solucin de x3 + x 4 = 0 quese encuentra en el intervalo [1, 4]. Obtenga una aproximacin de la razcon este grado de exactitud.
4. Verdadero o falso?
a) Si g(19.6) = 19.6, entonces 19.6 se denomina punto jo de g.
b) La funcin x2 + 2x tiene exactamente dos ceros reales.
c) Si f(a) = 1 y f(b) = 2, entonces f(x) tiene al menos un ceroentre a y b.
d) Despus de siete iteraciones del mtodo de biseccin, el intervalo
en curso tiene una longitud menor que el 1 % de la longitud delintervalo original.
57
-
CAPITULO 2. CEROS DE FUNCIONES
e) Diez iteraciones del mtodo de biseccin reducen la longitud L1del intervalo que contenga una raz por un factor de 1/102, as lalongitud es L1/100.
f ) La ecuacin (ex)2 = 4 tiene exactamente dos soluciones (reales).
5. Determine cuntas races tiene ex (x2 1)(x2 4) = 0.6. Aplique el mtodo de Newton para obtener soluciones con una exacti-
tud de 105 para:
a) (x 2)2 lnx = 0 para 1 6 x 6 2 y para e 6 x 6 4b) senx ex = 0 para 0 6 x 6 1 y para 3 6 x 6 4, y 6 6 x 6 7
7. Se puede usar el mtodo de NewtonRaphson para resolver f(x)=0siendo f(x)=(x-3)1/2 tomando x0 = 4 como valor inicial? por qu?.
8. Suponga que A es un nmero real y positivo.
a) Pruebe que A puede escribirse como A = q 22m, siendo1/4 6 q < 1 y m un entero.b) Use el apartado a) para probar que la raz cuadrada de A es
A1/2 = q1/2 2m.
Observacin. Si se toma p0 = (2q+1)/3, siendo 1/4 6 q < 1,y se usa la frmula de Newton, entonces despus de tres ite-
raciones, x3 ser una aproximacin a q1/2con 24 cifras bina-
rias de precisin. Este es el algoritmo que los computadores
usan habitualmente para hallar races cuadradas. (Mathews,
p.96).
9. Halle, con una precisin de diez cifras decimales, el valor de x para elque es mnima la distancia vertical entre las grcas de las funciones
f(x) = x2 + 2 y g(x) = (x/5) sen(x).10. Se construye una caja sin tapa a partir de una hoja metlica rectangular
que mide 10 por 16 centmetros. Cul debe ser el lado de los cuadradosque hay que recortar en cada esquina para que el volumen de la caja
sea 100 centmetros cbicos? Precisin: 0.000000001 centmetros.
58
-
Anlisis Numrico con MATLAB
11. La funcin descrita por f(x) = ln(x2 + 1) e0.4x cos pix tiene una can-tidad innita de ceros.
a) Determine, con una exactitud de 106 el nico cero negativo.
b) Determine, con una exactitud de 106 los cuatro ceros positivosms pequeos.
12. El valor acumulado de una cuenta de ahorros que se basa en pagos
peridicos puede calcularse con la ecuacin de anualidad vencida.
A =P
i[(1 + i)n 1]
En esta ecuacin, A es el monto de la cuenta, P es la cantidad que sedeposita peridicamente e i es la tasa de inters por periodo para losn periodos de depsito. A un ingeniero le gustara tener una cuenta deahorros con un monto de $ 750000 dlares al momento de retirarse den-tro de 20 aos, y puede depositar $ 1500 dlares mensuales para logrardicho objetivo. Cul es la tasa mnima de inters a que puede invertirse
este dinero, suponiendo que es un inters compuesto mensual?.
13. Un mtodo de Newton-Raphson modicado para races mltiples. Si
p es una raz de multiplicidad M, entonces f(x)= (x - p)Mq(x), dondeq(p) 6= 0.
a) Pruebe que h(x) = f(x)/f (x) tiene una raz simple en p.
b) Pruebe que si se aplica el mtodo de Newton-Raphson para hallar
la raz simple p de h(x), entonces se obtiene g(x) = xh(x)/h(x)que, en este caso, es
g(x) = x f(x)f(x)
(f (x))2 f (x) f (x)
c) La funcin f(x) = sen(x3) tiene en p = 0 un cero triple. Partiendode p0 = 1 calcule p1, p2 y p3 usando el mtodo de Newton-Raphsonmodicado. (Mathews, p.97).
59
-
CAPITULO 2. CEROS DE FUNCIONES
14. Aplique el mtodo de la secante para obtener soluciones con una exac-
titud de 103 para las ecuaciones dadas.
a) x3 2x2 5 = 0, x [1, 4]b) x cosx = 0, x [0, pi/2]15. La ecuacin ex = cos x tiene una raz cerca de 1.29. Diga cul delas tres funciones siguientes sera preferible utilizar como funcin de
iteracin a n de localizar la raz
g1(x) = cos1(ex)
g2(x) = ln(sec x) = ln(cosx)g3(x) = x 0.01(ex cosx)
16. Use el manejo algebraico para demostrar que las siguientes funciones
tienen un punto jo en p exactamente cuando f(p) = 0, donde f(x) =x4 + 2x2 x 3.
a) g1(x) = (3 + x 2x2)1/4
b) g2(x) =
(x+ 3 x4
2
)1/2
c) g3(x) =
(x+ 3
x2 + 2
)1/2
d) g4(x) =3x4 + 2x2 + 3
4x3 + 4x 1i. Efecte cuatro iteraciones, si es posible hacerlo, en las funciones
g. Use x0 = 1.
ii. Cul funcin, a su juicio, dar la mejor aproximacin a la solu-
cin?
17. Aplique el teorema de punto jo para demostrar que g(x) = pi +0.5 sen(x/2) tiene un punto jo nico en [0, 2pi]. Use la iteracin depunto jo para obtener una aproximacin al punto jo con una exac-
titud de 10
2. Use el corolario para estimar la cantidad de iteraciones
60
-
Anlisis Numrico con MATLAB
necesarias para lograr una exactitud de 102 y despus compare estaestimacin terica con la cantidad que realmente se requiere.
18. En cada una de las siguientes ecuaciones, determine un intervalo [a, b]para la cual la iteracin de punto jo converge. Estime la cantidad de
iteraciones necesarias para obtener aproximaciones con una exactitud
de 105 y realice los clculos.
a) x =2 ex + x2
3
b) x =
(ex
3
)1/2c) x = 5x
61
-
CAPITULO 2. CEROS DE FUNCIONES
62
-
Capitulo3Sistemas de Ecuaciones Lineales
Se considera un sistema de ecuaciones lineales con n ecuaciones y n in-cognitas, de la forma:
a11x1 + a12x2 + a13x3 . . .+ a1nxn = b1a21x1 + a22x2 + a23x3 . . .+ a2nxn = b2.
.
.
an1x1 + an2x2 + an3x3 . . .+ annxn = bn
con forma representacin matricial
AX = b o
a11 a12 . . . a1na21 a22 . . . a2n.
.
.
.
.
.
.
.
.
.
.
.
an1 an2 . . . ann
x1x2.
.
.
xn
=
b1b2.
.
.
bn
(3.1)
donde A Rnn, b Rn. Solucionar el sistema (3), es hallar un vectorX Rn tal que AX = b.
3.1. Sistemas fciles de resolver
Consideremos A una matriz diagonal.
63
-
CAPITULO 3. SISTEMAS DE ECUACIONES LINEALES
A =
a11 0 00 a22 0.
.
.
.
.
.
.
.
.
.
.
.
0 0 ann
Entonces el sistema AX = b tiene la siguiente foma
a11x1 = b1a22x2 = b2.
.
.
annxn = bn
La solucin es xi = (bi)/aii, para i = 1, 2, . . . , n con aii 6= 0.
Algoritmo 6 (Algoritmo matriz Diagonal). Dada un sistema de ecuaciones
lineal Ax = b, con matriz A diagonal y no singular.
n=length(b);
for i=1:n
x(i)=b(i)/A(i,i);
end
Si A es Triangular Superior (A no singular).
A =
a11 a12 a1n0 a22 a2n.
.
.
.
.
.
.
.
.
.
.
.
0 0 ann
Entonces el sistema AX = b que resulta es:
a11x1 + a12x2 + a13x3 . . .+ a1nxn = b1
a22x2 + a23x3 . . .+ a2nxn = b2.
.
.
annxn = bn
64
-
Anlisis Numrico con MATLAB
El sistema se resuelve con sustitucin hacia atrs. Se llama sustitucin
hacia atrs por que el primer valor que se halla es xn, luego xn1 y as hastax1.
xn =bn
anny
xi =
bi n
j=i+1
aijxj
aiipara i = n 1, n 2, . . . , 1 (aii 6= 0).
Algoritmo 7 (Algoritmo matriz triangular superior). Dada un sistema de
ecuaciones lineal Ax = b, con matriz A triangular superior y no singular.
n=length(b);
x(n)=b(n)/A(n,n);
for i=n-1:-1:1
s=0;
for k=i+1:n
s=s+A(i,k)*x(k);
end
x(i)=(b(i)-s)/A(i,i);
end
Si A es Triangular inferior.
A =
a11 0 . . . 0a21 a22 . . . 0.
.
.
.
.
.
.
.
.
.
.
.
an1 an2 . . . ann
El sistema resultante es:
a11x1 = b1a21x1 + a22x2 = b2.
.
.
.
.
.
an1x1 + an2x2 +an3x3 + . . .+ annxn = bn
El sistema se resuelve con sustitucin hacia adelante
65
-
CAPITULO 3. SISTEMAS DE ECUACIONES LINEALES
x1 =b1a11
xi =
bi i1j=1
aijxj
aiipara i = 2, 3, . . . , n (aii 6= 0).
Ejercicio 3. Construya el codigo de una funcin en MATLAB que dado un
sistema de ecuaciones lineal con matriz de coecientes triangular inferior,
calcule el vector solucin X.
Una matriz A es ortogonal si su inversa es igual a su transpuesta; es decirA1 = At. En este caso, el sistema AX = b tiene como solucin X = Atb, yaque si AX = b entonces:
AX = AAtb
= AA1b
= Ib
= b
3.2. Mtodos Directos de Solucin
Un mtodo directo se reere a un procedimiento para calcular una so-
lucin a partir de una forma que es matemticamente exacta; los mtodos
directos proporcionan una respuesta en un nmero jo de pasos, y slo estn
sujetos a errores de redondeo.
3.2.1. Mtodo de la Inversa
La solucin del sistema Ax = b es x = A1b (A no singular). El clculo dela matriz inversa involucra muchas operaciones. MATLAB posee la funcin
inv que calcula la inversa de una matriz cuadrada.
Ejemplo 3.2.1. La matriz de Hilbert H de tamao m n, esta dada por:
Hij = 1/(i+ j 1) i {1, 2, . . . ,m}, j {1, 2, . . . , n}
El codigo en MATLAB que la genera:
66
-
Anlisis Numrico con MATLAB
for i=1:m
for j=1:n
H(i,j)=1/(i+j-1);
end
end
La matriz de Hilbert para m = n = 3 es
H =
1 1/2 1/3
1/2 1/3 1/4
1/3 1/4 1/5
y tomando el vector columna b = (111). Encontrar la solucin de Hx = b.
>> tic, x=inv(H)*b, toc
x =
3
-24
30
Elapsed time is 0.008232 seconds.
Los comandos tic y toc generan el tiempo de computo de la operacin.
3.2.2. Mtodo de Cramer
La solucin es xi = |Ai| / |A|, i = 1, 2, . . . n. Donde
A =
a11 a12 . . . a1na21 a22 . . . a2n.
.
.
.
.
.
.
.
.
an1 an2 . . . ann
y Ai =
a11 a12 . . . b1 . . . a1na21 a22 . . . b2 . . . a2n.
.
.
.
.
.
.
.
.
.
.
.
an1 an2 . . . bn . . . ann
Se necesitan (n+ 1) determinantes y el costo de operaciones de un determi-nante de orden n requiere de aproximadamente n! multiplicaciones divisionesy sumas/restas. MATLAB posee la funcin det que encuentra el determinan-
te de una matriz cuadrada.
67
-
CAPITULO 3. SISTEMAS DE ECUACIONES LINEALES
3.2.3. Mtodo de Eliminacin Gaussiana
Dados dos sistemas de ecuaciones. Diremos que ellos son equivalentes, si
poseen el mismo conjunto solucion. Iniciamos introduciendo las operaciones
elementales entre las. Son transformaciones que admite la matriz aumentada
de un sistema y que generan un sistema equivalente.
La ecuacin Ei (o la la i) puede multiplicarse por una constante dis-tinta de cero. Esta operacin se denota por Ei Ei.La ecuacin Ej (o la la j) puede multiplicarse por una constante distintade cero y sumarse a la ecuacin Ei (o la i). Esta operacin se denota por(Ei + Ej) Ei.El orden de las ecuaciones Ei y Ej ( o la i y la la j) puede intercambiarse.Esta operacin se denota por Ei Ei.El Mtodo de Eliminacin Gaussiana consiste en transformar mediante
operaciones elementales entre las a la matriz aumentada del sistema [A.
.
.b]
en una matriz de la forma [A.
.
.b], donde A es una matriz triangular superiory as el sistema AX = b se transforma en un sistema equivalente AX = b
que es un sistema fcil de resolver ya que es triangular superior y se puede
resolver con sustitucin hacia atrs.
Ejemplo 3.2.2. Resolver el sistema lineal usando el mtodo de eliminacin
gaussiana.
x1 + 2x2 + x3 = 5
2x1 + 4x3 = 22
4x1 + 2x2 + 2x3 = 18
La matriz aumentada del sistema es:
E1E2E3
1 2 12 0 44 2 2
.
.
.
.
.
.
.
.
.
52218
a11 = 1 es el elemento pivote, para anular los elementos que estn de-bajo de la primera columna se usan los multiplicadores. Los multiplicado-
res son los nmeros por los que se multiplica la la pivote para restar-
la de las correspondientes las posteriores. M21 = a21/a11 = 2/1 = 2 yM31 = a31/a11 = 4/1 = 4.
68
-
Anlisis Numrico con MATLAB
E2 2E1E3 4E1
1 2 10 4 20 6 2
.
.
.
.
.
.
.
.
.
5122
a22 = 4 es el elemento pivote, para anular el elemento que esta debajo dela segunda columna se usa el multiplicador M22 = a32/a22 = 6/ 4 = 1.5.
E3 1.5E2
1 2 10 4 20 0 5
.
.
.
.
.
.
.
.
.
51220
Finalmente se obtiene el sistema:
x1 + 2x2 + x3 = 5
4x2 + 2x3 = 125x3 = 20
usando sustitucin hacia atrs se tiene que x3 = 4, x2 = 1 y x1 = 3, luegola solucin del sistemas es X = (3,1, 4).Ejemplo 3.2.3. Resolver el sistema
0.03x1 + 58.9x2 = 59.2
5.31x1 6.10x2 = 47.0
a) Usando eliminacin Gaussiana.
E1E2
(0.03 58.95.31 6.10.
.
.
.
.
.
59.247.0
)
El multiplicador M21 = 5.31/0.03 = 177
E2 177E1
(0.03 58.9
0 10431.4.
.
.
.
.
.
59.210431.4
)
69
-
CAPITULO 3. SISTEMAS DE ECUACIONES LINEALES
El sistema triangular que resulta es:
0.03x1 + 58.9x2 = 59.2
10431.4x2 = 10431.4
La solucin exacta del sistema es X = (x1, x2) = (10, 1).
b) Usando eliminacin Gaussiana y aritmtica de 3 dgitos por corte.Para resolver el sistema usando eliminacin gaussiana y corte a tres dgi-
tos, primero se escribe la matriz aumentada del sistema con los nmeros
a tres dgitos usando corte (en este caso queda igual) y despus se apli-
ca eliminacin gaussiana ( en cada operacin se trabaja con tres dgitos
usando corte).
E1E2
(0.03 58.95.31 6.10.
.
.
.
.
.
59.247.0
)
El multiplicador es M21 = 5.31/0.03 = 177
E2 177E1
(0.03 58.9
10400.
.
. 59.2
.
.
. 10300
)0.03x1 + 58.9x2 59.210400x2 10300
Si X denota la solucin aproximada del sistema, entoncesX = (x1, x2) = (30, 0.99)
c) Usando eliminacin gaussiana y artmtica de 3 dgitos por redondeo.Para resolver el sistema usando eliminacin gaussiana y redondeo a 3
dgitos, primero se escribe la matriz aumentada del sistema redondeando
los nmeros a tres dgitos, pero en este caso queda igual ya que slo tienen
tres dgitos, luego se aplica eliminacin gaussiana. (en cada operacin se
trabaja con tres dgitos usando redondeo).
(0.03 58.95.31 6.10.
.
.
.
.
.
59.247.0
),
70
-
Anlisis Numrico con MATLAB
El multiplicador es 177.
E2 177E1
(0.03 58.9
0 10400.
.
.
.
.
.
59.210500
)
0.03x1 + 58.9x2 59.210400x2 10500
Si X denota la solucin aproximada del sistema entonces X = (x1, x2) =(10, 1.01)Observe que en b) y c) aunque los clculos se hicieron con tres cifras, en
las respuestas no se tiene exactitud de tres cifras. La discrepancia se debe
al error de redondeo. Recuerde que se llama error de redondeo independien-
temente si en los clculos se usa corte o redondeo. Como las computadoras
usan aritmtica cuya precisin esta jada de antemano, es posible que cada
vez que se realice una operacin aritmtica se introduzca un pequeo error.
El ejemplo anterior pone de maniesto que la eliminacin gaussiana puede
llevar aparejado un error apreciable en la solucin de un sistema de ecuacio-
nes lineales cuando se resuelve en un computador.
A continuacin, se discutir cmo minimizar los efectos del redondeo y se
evitarn condiciones que pueden provocar la amplicacin de los errores de
redondeo.
Si, en el proceso de eliminacin gaussiana, resulta que el elemento que
se usar como pivote es cero, este elemento no puede usarse como pivote
para eliminar elementos de la columna que estn por debajo de la diagonal
principal. En este caso se intercambia la la que tiene el pivote cero por otra
la en la que el elemento que quede como pivote no sea cero. Este proceso se
llama Pivoteo y el criterio para decidir que la escoger se llama estrategia de
pivoteo. La estrategia de pivoteo trivial consiste en localizar la primera la
por debajo de la la en la que el pivote es cero e intercambiarla.
Ejemplo 3.2.4. Dado un sistema de ecuaciones AX = b y se desea resolveren MATLAB utilizando eliminacin Gaussiana, se utiliza la notacin X =A\b. Este metodo es mucho ms rapido que el calculo de la inversa. Si seconsidera una matriz de Hilbert
top related