Este documento presenta el método de Newton para resolver sistemas de ecuaciones no lineales. Explica el algoritmo básico de Newton e incluye 19 ejercicios para aplicar el método a diferentes sistemas no lineales, variando los puntos iniciales y verificando la convergencia. Cada ejercicio propone implementar el método de Newton para resolver un sistema particular.
1. Universidad Peruana Unión
Ingeniería Civil
Métodos Numéricos y Programación
Laboratorio 6
0.1. Introducción a Sistemas No Lineales
Uno de los métodos más populares para resolver sistemas de ecuaciones no lineales es el
método de Newton. Dada una función Fn : Rn
7→ Rn
y un sistema Fn(x) = 0. El Método
de Newton consiste en repetir consecutivamente, para k = 0, 1, 2, ...,hasta que
°
°Fn(xk
)
°
° < ε,
donde ε > 0, en la siguiente regla:
xk+1
= xk
−
Fn(xk
)
F0
n(xk)
Note que xk
denota un vector de aproximación de la solución del sistema de ecuaciones
Fn(x) = 0, además, x0
es el vector inicial y F0
n(xk
) es el Jacobiano de Fn en xk
.
Algoritmo 0.1 (Algoritmo Básico de Newton) Sea x0
∈ Rn
un punto inicial lo suficien-
temente cerca de la solución y ε > 0 el parámetro de precisión deseado:
Paso 1: Si
°
°F(xk
)
°
° < ε, detenerse, xk
es la aproximación buscada. Caso contrario, ir al paso
2.
Paso 2: hacer k ←− k + 1
Paso 3: xk+1
= xk
− (F0
n(xk
))−1
Fn(xk
) Volver al paso 1.
Naturalmente, el sistema F(x) = 0 puede no tener solución, entonces es posible modificar
el algoritmo para que finalice después de un número determinado de iteraciones indicando la
posibilidad de infactibilidad.
Ejercicio 0.1 En algún lenguaje de su preferencia, implemente el método de Newton para
sistema de ecuaciones no lineales
Una Implementación Básica:
function.....= NEWTON_NL(x, prec)
iter =....
while norm(Fn(x))>....
iter = ...............
x =.................
if ...........
error(’parece que newton no converge’);
end
end
1
2. Ejercicio 0.2 Se quiere resolver el sistema de ecuaciones no lineales
−x + 2y − 4 = 0
(x − 6)2
− y + 2 = 0
Al ejecutar newton, con los siguientes puntos iniciales
∙
1
2
¸
y
∙
9
3
¸
Solución:
Definamos el sistema de ecuaciones y el Jacobiano
F(x) =
∙
−x1 + 2x2 − 4
(x1 − 6)2
− x2 + 2
¸
;
F0
n(xk
) = J(x) =
"
df
dx1
df
dx2
dg
dx1
dg
dx2
#
=
∙ ¸
Al ejecutar el programa newton, con un punto inicial
∙
1
2
¸
con un parámetro de precisión
0,000001, observamos: ∙
4._______________
4._______________
¸
(¡Verifíquelo!)
Ahora ejecutando newton, con otro punto inicial
∙
9
3
¸
te-nemos:
que converge a otra raíz
∙
8._______________
6._______________
¸
(¡Verifíquelo!).
Ejercicio 0.3 Haga sus respectivas gráficas del ejercicio anterior y comente, porqué el mismo
sistema de ecuaciones no lineales, para puntos distintos converge a dos raices distintas
Ejercicio 0.4 Se quiere resolver el sistema de ecuaciones no lineales
(x − 3)2
− y + 4 = 0
x + 2y − 16 = 0
Al ejecutar newton, verifique con los siguientes puntos iniciales
∙
1
2
¸
y
∙
6
10
¸
2
3. Ejercicio 0.5 Consideremos el siguiente sistema de ecuaciones no li-neales de 3 incógnitas y
3 ecuaciones:
7x1x2 + 5x2 − x2
3 sen x1 − 12 = 0
−x4
1 + cos2
x2 + 2x3
3 − 8 = 0 (1)
6x1 + 2x2 − x3 + 34 = 0
Observe que
F(x) =
⎡
⎣
7x1x2 + 5x2 − x2
3 sen x1 − 12
−x4
1 + cos2
x2 + 2x3
3 − 8
6x1 + 2x2 − x3 + 34
⎤
⎦
y
J(x) =
⎡
⎣
7x2 − x2
3 cos x1 7x1 + 5 −2x3 sen x1
−4x3
1 −2 cos x2 sen x2 6x2
3
6 2 −1
⎤
⎦
Si usamos como punto inicial x0
=
⎡
⎣
10
20
−50
⎤
⎦ y como parámetro de precisión ε = 10−6
, una
implementación computacional básica nos otorga:
x13
=
⎡
⎣
−4, 23134959407946
−1, 56752981158965
5, 47684281234392
⎤
⎦
(¡verifíquelo!)
Ejercicio 0.6 Se quiere resolver el sistema de ecuaciones no lineales
5x2
1 + 6x1x2 + 5x2
2 − 4x1 + 4x2 − 4 = 0
x2
1 + x2
2 − 1 = 0
Al ejecutar newton con punto inicial
∙
1
1
¸
y con una precisión de prec=0.000001
Ejercicio 0.7 Se quiere resolver el sistema de ecuaciones no lineales
x3
+ y3
− 2xy = 0
x2
+ y2
− 1 = 0
Al ejecutar Newton, verifique con los siguientes puntos iniciales
∙
1
2
¸
Ejercicio 0.8 Se quiere resolver el sistema de ecuaciones no lineales
2x4
− 2x2
y + y2
− 2y3
+ y4
= 0
3x2
− 2xy − 6y2
+ 3 = 0
Ejercicio 0.9 Resolver el sistema de ecuaciones no lineales
x3
+ x2
y − xz + 6 = 0
ex
+ ey
− z = 0
y2
− 2xz − 4 = 0
3
4. Use el método de Newton, con el punto inicial
⎡
⎣
−1
−2
1
⎤
⎦ y con parámetro de precisión
ε = 10−6
Ejercicio 0.10 Del gráfico adjunto
1. Plantear el sistema de ecuaciones no lineales
2. Obtener aproximaciones iniciales del gráfico para las raices.
3. Resuelva el sistema de ecuaciones planteado en la parte (1) con el método de Newton,
pruebe con los puntos iniciales
∙
−12
2
¸
y .
∙
12
−2
¸
Itere hasta que
°
°x(k)
− x(k−1)
°
°
∞
<
10−6
Ejercicio 0.11 Resolver el sistema de ecuaciones no lineales
sen(xy) + z = 1
2 sen(xz) + y = 2
3 sen(yz) + x = 3
pruebe con un punto inicial
⎡
⎣
0
0
0
⎤
⎦ y con parámetro de precisión ε = 10−6
.y también anote su
Jacobiano
J(x) =
⎡
⎣
⎤
⎦
iter x1 x2 x3
1
2
...
4
5. Ejercicio 0.12 Resolver el sistema de ecuaciones no lineales
3x − cos(yz) = 1/2
4x2
− 625y2
+ 2y = 1
e−xy
+ 20z + 10π−3
3
= 0
pruebe con un punto inicial
⎡
⎣
1
2
3
⎤
⎦ y con parámetro de precisión ε = 10−6
.y también anote su
Jacobiano
J(x) =
⎡
⎣
⎤
⎦
iter x1 x2 x3
1
2
...
Ejercicio 0.13 Resolver el sistema de ecuaciones no lineales
6x − 2 cos(yz) = 1
9y +
p
x2 + sen(z) + 1,06 + 0,9 = 0
60z + 3e−xy
+ 10π = 3
Use el método de Newton, con el punto inicial
⎡
⎣
0
0
0
⎤
⎦ y con parámetro de precisión ε = 10−6
y también anote su Jacobiano
J(x) =
⎡
⎣
⎤
⎦
x =
iter =
Ejercicio 0.14 Resolver el sistema de ecuaciones no lineales
x3
+ x2
y − xz = −6
ex
+ ey
− z = 0
y2
− 2xz = 4
5
6. Use el método de Newton, con el punto inicial
⎡
⎣
−1
−2
1
⎤
⎦ y con parámetro de precisión ε = 10−6
y también anote su jacobiano
J(x) =
⎡
⎣
⎤
⎦
x =
iter =
Ejercicio 0.15 Resolver el sistema de ecuaciones no lineales
4x − y + z = xu
−x + 3y − 2z = yu
x − 2y + 3z = zu
x2
+ y2
+ z2
= 1
Use el método de Newton , con el punto inicial
⎡
⎢
⎢
⎣
7
5
6
7
⎤
⎥
⎥
⎦ Itere hasta que
°
°x(k)
+ x(k−1)
°
°
∞
< 10−6
y anote su Jacobiano
J(x) =
⎡
⎣
⎤
⎦
x =
iter =
Ejercicio 0.16 Consideremos el siguiente sistema de ecuaciones no li-neales de 3 incógnitas
y 3 ecuaciones:
7x1x2 + 5x2 − x2
3 sen x1 − 12 = 0
−x4
1 + cos2
x2 + 2x3
3 − 8 = 0 (2)
6x1 + 2x2 − x3 + 34 = 0
6
7. Observe que
F(x) =
⎡
⎣
7x1x2 + 5x2 − x2
3 sen x1 − 12
−x4
1 + cos2
x2 + 2x3
3 − 8
6x1 + 2x2 − x3 + 34
⎤
⎦
y
J(x) =
⎡
⎣
7x2 − x2
3 cos x1 7x1 + 5 −2x3 sen x1
−4x3
1 −2 cos x2 sen x2 6x2
3
6 2 −1
⎤
⎦
Si usamos como punto inicial x0
=
⎡
⎣
10
20
−50
⎤
⎦ y como parámetro de precisión ε = 10−6
, una
implementación computacional básica nos otorga:
x13
=
⎡
⎣
−4, 23134959407946
−1, 56752981158965
5, 47684281234392
⎤
⎦
(¡verifíquelo!)
Ejercicio 0.17 Se quiere resolver el sistema de ecuaciones no lineales
5x2
1 + 6x1x2 + 5x2
2 − 4x1 + 4x2 − 4 = 0
x2
1 + x2
2 − 1 = 0
Al ejecutar NEWTON_NL con punto inicial
∙
1
1
¸
y con una precisión de prec=0.000001
Ejercicio 0.18 Se quiere resolver el sistema de ecuaciones no lineales
2x4
− 2x2
y + y2
− 2y3
+ y4
= 0
3x2
− 2xy − 6y2
+ 3 = 0
Ejercicio 0.19 Resolver el sistema de ecuaciones no lineales
x3
+ x2
y − xz + 6 = 0
ex
+ ey
− z = 0
y2
− 2xz − 4 = 0
Use el método de Newton, con el punto inicial
⎡
⎣
−1
−2
1
⎤
⎦ y con parámetro de precisión
ε = 10−6
7