Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Sistemas de
ecuaciones no
lineales
Definición
f(x, y)=0
y*
g(x, y)=0
x* x
SISTEMA DE ECUACIONES NO LINEALES
10
x 2 + xy =
10
6
(2, 3)
4
y + 3xy 2 =
57
2
0
1 1.5 2 2.5 3 3.5 4 4.5 5
-2
Forma general del Sistema de
Ecuaciones no Lineales
f1 ( x1 , x2 ..........., xn ) = 0 La solución de este
f 2 ( x1 , x2 ..........., xn ) = 0 sistema consta de valores
xi que simultáneamente
. hacen que todas las
. ecuaciones sean iguales a
. cero
f n ( x1 , x2 ..........., xn ) = 0
MÉTODO DE PUNTO FIJO EN
SISTEMAS DE ECUACIONES NO LINEALES
2
x + xy =
10 y + 3xy 2 =
57
iteració
xi yi erri
xn=10/(x+y) n
x=2 y=3
MÉTODO DEL PUNTO FIJO EN
SISTEMAS DE ECUACIONES NO LINEALES
2
x + xy =
10 y + 3xy 2 =
57
iteració
xi yi erri
Variante Seidel n
x=2 y=3
Algoritmo en octave
clc;clear;x=1.5; y=3.5 ;%Método de Punto fijo
disp(' j x y ');
disp('-------------------------------');
for j=1:10
disp([j,x,y]);
x1=10/(x +y);
y1=((57-y)/(3*x1))^0.5;
x=x1;y=y1;
end
Resultado de ejecución
j x y .
1.0000 1.5000 3.5000
2.0000 2.0000 2.9861
3.0000 2.0056 2.9962
4.0000 1.9993 3.0006
5.0000 2.0000 3.0000
6.0000 2.0000 3.0000
7.0000 2.0000 3.0000
8.0000 2.0000 3.0000
9.0000 2.0000 3.0000
10.0000 2.0000 3.0000
Otro algoritmo
clc;clear;x=1.5;y=3.5 ;%Método de Punto fijo
for j=1:10
disp([x,y]);
x1=(10-x*y)^0.5; y1=((57-y)/(3*x))^0.5;
disp([j,x,y]);
x=x1;y=y1;
end
Resultados
Con convergenncia más lento
iteración xi yi
1 1.5 3.5
2 1.45578231 5.166666667
3 0.64724246 5.413376566
1 1.5 3.5
2 2.21428571 -24.375
3 -0.20910518 429.713648
Método de Iteración de Punto fijo para sistemas
de Ecuaciones no Lineales
f 1( x1, x 2) = x12 − 10 x1 + x 2 2 + 8 = 0
2
f 2( x1, x 2) = x1 x 2 + x1 − 10 x 2 + 8 = 0
Solución
Con el despeje de X1 del termino (-10X1) en la primera ecuación y
de X2 del termino de (-10X2) en la segunda ecuación resulta.
X1=(X12+X22 + 8 )/ 10
X2=(X1X22+X1 + 8 ) / 10
Por medio de Iteración por desplazamientos simultáneos
1
X2 =(0(0)2 + 0 + 8 ) / 10 = 0.8
Segunda iteración
2
X1 =((0.8)2+(0.8)2 + 8)/ 10 = 0.928
2
X2 =(0.8(0.8)2 + 0.8 + 8 ) / 10 = 0.9312
Al continuar el proceso iterativo, se encuentra la siguiente
sucesión de valores
k
X1k X2k
0 0.00000 0.00000
0.80000 0.80000
1
2 0.92800 0.93120
k
X1k X2k
3 0.97283 0.97327
4 0.98937 0.98944
5 0.99578 0.99579
6 0.99832 0.99832
7 0.99933 0.99933
8 0.99973 0.99973
9 0.99989 0.99989
10 0.99996 0.99996
11 0.99998 0.99998
12 0.99999 0.99999
13 1.00000 1.00000
Ejemplo 3
Resolver el Sistema no lineal
Punto Fijo con desplazamientos simultáneos
u(x, y)
y1
v(x, y)
x1 x
MÉTODO DE NEWTON RAPHSON EN
SISTEMAS DE ECUACIONES NO LINEALES
Este procedimiento corresponde, analíticamente, a extender el uso
de la derivada, ahora para calcular la intersección entre dos
funciones no lineales.
Al igual que para una sola ecuación, el cálculo se basa en la
expansión de la serie de Taylor de primer orden, ahora de múltiples
variables, para considerar la contribución de más de una variable
independiente en la determinación de la raíz.
Para dos variables, la serie de Taylor de primer orden se escribe,
para cada ecuación no lineal:
∂ui ∂ui
ui+1 = ui + (xi+1 − xi ) + (yi+1 − yi )
∂x ∂y
∂v ∂v
v i+1 =v i + (xi+1 − xi ) i + (yi+1 − yi ) i
∂x ∂y
MÉTODO DE NEWTON RAPHSON EN
SISTEMAS DE ECUACIONES NO LINEALES
∂ui ∂v i
∂x ∂x
J=
∂ui ∂v i
∂y ∂y
MÉTODO DE NEWTON RAPHSON EN
SISTEMAS DE ECUACIONES NO LINEALES
x2 + xy - 10 = 0 y + 3xy2 - 57 = 0
5 2 3 0 2.23821E-12 7 2 27 37 205
x=2 y=3
MÉTODO DE NEWTON RAPHSON EN
SISTEMAS DE ECUACIONES NO LINEALES
Sistema de ecuaciones lineales por el método de Newton Raphson
4.5
3.5
y
3
2.5
iteraciones
x
2
1.5
x 2 + xy =
10 y + 3xy 2 =
57
1
0.5
0
1 2 3 4 5 6
convergencia
Notación
Escalar
Vectorial
Método de Newton para sistemas de ecuaciones no
lineales
∂f n ,i ∂f n ,i ..........
∂f n ,i
∂x1 ∂x2 ∂xn
2° se generaliza Método de Newton para sistemas de ecuaciones no lineales
X(k+1) = ∆y +x(k)
Método de Newton. Ejemplo 2
Sistema
Estimación inicial
Primera
iteración
Resultados Newton Ejemplo 2
Método de Newton. Ejemplo 3
Sistema no lineal
3x 1 − cos( x 2 x 3 ) − 1 2 = 0
x 12 − 81( x 2 + 01 . ) 2 + sen( x 3 + 106. = 0
e − x1x 2 + 20x 3 + 10π / 3 − 1 = 0
Jacobiana
3 x 3 sen( x 2 x 3 ) x 2 sen( x 2 x 3 )
DF( x) = 2 x 1 − 162( x 2 + 01 .) cos( x 3 )
− x 2 e − x1 x 2 − x 1 e − x1 x 2 20
Resultados Newton. Ejemplo 3
clc;clear;x=1;y=1;disp(‘ x y z’);
for j=1:10
f1=x^2+x*y-10; f11=2*x+y;f12=x;
f2=y+3*x*y^2-57;f21=3*y^2; f22=1+6*x*y;
J=[f11 f12;f21 f22];
IJ=inv(J);h=IJ*[-f1;-f2];
x=x+h(1);y=y+h(2);
disp([i,x,y]);
end
Newton-Raphson Multivariable - Modificado
El metodo de Newton-Raphson modificado el cual se describe acontinuacion
consiste en aplicar el metodo de Newton-Raphson multivariable dos
veces(para el caso de un sistema de n ecuaciones no lineales con n
incógnitas, se aplicara n veces), una para cada variable. Cada vez que se
hace esto, se considera las otras variables fijas.
Tomando los valores iniciales xo,yo, se calcula a partir del metodo de
Newton-Raphson univariable un nuevo valor x1 de la forma siguiente:
2.- En segundo paso debemos conocer nuestro valores iniciales los cuales
vamos a iniciar que en arbitrariamente se utilizan x0=0 y y0=0.
3.- como tercer paso debemos derivar cada uno de nuestras ecuaciones
dadas en este caso seria
Encontrar la derivada de df1/dx encontrando el valor de x con la primera
ecuación.
Y encontrando la derivada de df2/dy podemos encontrar el valor de y con la
segunda ecuación.
Practicamente teniendo las derivadas de cada una de las dos ecuaciones
podemos realizar el siguiente paso.
4.- Apartir de este paso se efectua encontrar la primera iteracion la cual
comienza realizando una evaluacion para f1 y df1/dx en [0,0]t y haciendo
eso encontraremos nuevos valores que utilizaremos en el siguiente paso.
5.- Practicamente en este paso seria sustituir valores en una formula
la cual ya se dio a conocer que es la siguiente para sacar el valor de
.
x1 es el siguiente y cual obtendremos el nuevo valor de x.
6.- de igual forma seria con los pasos anteriores apartir del cuarto en
adelante asta el quinto asemos lo mismo con y1 pero en este caso
utilizando los nuevos valores que ya tenemos de x que en este caso
seria sustituir la ecuacion de la siguiente forma que es f2(x1,y0) ya
que en el paso anterior se encontro el paso 5,por lo tanto sacando
todo eso utilizariamos la siguiente ecuacion para efectuar sacar el
valor de y1 que es la siguiente:
7.- en el septimo paso se concluye al la primera iteracion
.
teniendo los valores de x1 y y1 nuevos los cuales seran
utilizados para sacar la segunda iteracion que seria
practicamente lo mismo nada mas que en este caso
sustituiremos x1 y y1 como nuestros valores iniciales y asi
consecutivamente.
clc;clear;x=1;y=1;disp(‘ x y z’);
for j=1:10
f1=x^2+x*y-10; f11=2*x+y;f12=x;
f2=y+3*x*y^2-57;f21=3*y^2; f22=1+6*x*y;
f3=x*y*z-27;f31=y*z;f32=x*z;f33=x*y;
x1=x-f1/f11; x=x1; y1=y-f2/f22;y=y1;z1=z-f3/f33;
disp([x,y,z]);z=z1;
end
Método de Broyden
Iterar −1
x (k +1) = x (k) − A k ⋅ F(x(k) )
w = v; % F(xk−1)
v = F(x); % F del iterado actual
y = v − w; % F(xk) − F(xk−1)
z = − M*y; % − Ak−1-1 * yk
p = − s' *z; % (sk - xk-1)T * Ak−1-1 * yk
q = s' *M; % sk T * Ak−1-1
R = (s+z)*q/p; % Transformación rango 1
M = M+R; % Inversa nueva: Ak-1
s = − M*v; % Paso de Broyden: sk+1
Algoritmo de while incr > tol
Broyden w = v; % F(x(k−1))
v = F(x);
y = v−w; % F(x(k)) − F(x(k−1))
% Inicio z = − M*y; % −inv(A(k−1))*y(k)
v = F(x0) p = − s' *z;
M = inv(DF(x0)) q = s' *M; % s(k)'*inv(A(k−1)
% Inversa Jacobiano R = (s+z)*q/p;
s = − M*v; M = M+R; % inversa de A(k)
x = x0+s; s = − M*v;
% Paso de Newton x = x+s; % Paso de Broyden
incr = norm(s); incr = norm(s);
end
Resultados de Broyden. Ejemplo 3
Alternativas al primer paso
Estimar el Jacobiano por diferencias
divididas
Estimación unidimensional del Jacobiano
A 0 = diag((F( x1 ) − F( x 0 )). /( x1 − x 0 ))