Taller metodos numericos

Solo disponible en BuenasTareas
  • Páginas : 12 (2796 palabras )
  • Descarga(s) : 0
  • Publicado : 26 de enero de 2012
Leer documento completo
Vista previa del texto
Universidad Nacional de Colombia Sede Medellín Solución Taller # 3 de Matlab Métodos Numéricos Tema: Métodos iterativos de Punto Fijo y Newton para sistemas no lineales 1. Considere el sistema no lineal

a. Grafique las funciones en un mismo plano cartesiano para determinar el número de soluciones del sistema dado. Como se sabe la solución del sistema dado, está definida por la intersecciónentre las funciones f1 y f2, por ello graficamos las dos funciones simultáneamente para saber cuántas soluciones posee el sistema. Primero definimos las funciones así: f1=inline('x^2-y^2-4','x','y') f1 = Inline function: f1(x,y) = x^2-y^2-4 f2=inline('exp(-x)+x*y-1','x','y') f2 = Inline function: f2(x,y) = exp(-x)+x*y-1 Al colocar después de la definición las variables x e y dentro de apostrofes, seestá indicando la variable independiente y la variable dependiente de la función dada. Siempre se recurre de la misma manera para definir funciones de dos variables. Para graficar Usamos una nueva instrucción que nos permite elaborar graficos de funciones de dos variables. Graficamos con la instrucción ezplot tomando un intervalo que se pueda considerar representativo para este caso asumamos [-1010], por lo tanto: ezplot(f1,[-10 10]),hold on,grid on ezplot(f2,[-10 10]) El grafico obtenido es el siguiente:

exp(-x)+x y-1 = 0 10

8

6

4

2

0

y

-2

-4

-6

-8

-10 -10

-8

-6

-4

-2

0 x

2

4

6

8

10

Como se puede observar del grafico, el sistema dado tiene solución única. b. Utilice el método de punto fijo para aproximar cada solucióndel sistema dado, escogiendo funciones de iteración apropiadas y aproximaciones iniciales adecuadas e iterando con delta= 1e-5. ¿Cuántas iteraciones fueron necesarias en cada caso? Al despejar de las ecuaciones dadas encontramos las siguientes funciones de iteración de punto fijo adecuadas: g1=inline('sqrt(y^2+4)','x','y') g1 = Inline function: g1(x,y) = sqrt(y^2+4)g2=inline('(1-exp(-x))/x','x','y') g2 = Inline function: g2(x,y) = (1-exp(-x))/x

Para justificar el uso de estas funciones de iteracion para aplicar el método de punto fijo en este problema, debemos demostrar que la suma de las derivadas parciales evaluadas en valor absoluto para un punto inicial (Po,Qo) es menor que 1. Para realizar esto usamos Matlab así: syms x g1='sqrt(y^2+4)' g1 = sqrt(y^2+4) diff (g1,x) ans = 0dg1x=inline('0') dg1x = Inline function: dg1x(x) = 0 clear x syms y diff(g1,y) ans = 1/(y^2+4)^(1/2)*y dg1y=inline('1/(y^2+4)^(1/2)*y') dg1y = Inline function: dg1y(y) = 1/(y^2+4)^(1/2)*y clear y Donde dg1y, y dg1x son las derivadas parciales de g con respecto a y e x respectivamente. Tomemos como punto inicial para la iteración (2,1), y analicemos la condición de las derivadas sobre g1, suponiendo queeste punto está lo suficientemente cerca del punto fijo: abs(dg1y(1))+abs(dg1x(2))

ans = 0.4472 De lo anterior se puede verificar que la condición de derivadas parciales sobre g1 se cumple. Veamos ahora que sucede con g2 g2='(1-exp(-x))/x' g2 = (1-exp(-x))/x syms x diff(g2,x) ans = exp(-x)/x-(1-exp(-x))/x^2

dg2x=inline('exp(-x)/x-(1-exp(-x))/x^2') dg2x = Inline function: dg2x(x) =exp(-x)/x-(1-exp(-x))/x^2 clear x syms y diff(g2,y) ans = 0

dg2y=inline('0') dg2y = Inline function: dg2y(x) = 0 clear y

Al evaluar sobre las derivadas el punto, se tiene: abs(dg2y(1))+abs(dg2x(2)) ans = 0.1485 De lo cual se concluye que la iteración de punto fijo con las funciones g1 y g2 escogidas, converge a la solución del sistema mostrado en el presente problema. Aplicando el método se tiene:help fixptdim.m Entrada - G es el sistema no lineal guardado en el archivo-M G.m - P son los valores supuestos iniciales hacia la solucion - delta es la cota de error - max1 es el numero de iteraciones Salida - P es la aproximacion de seidel hacia la solucion - iter es el numero de iteraciones requeridas - err es el error absoluto Definimos G, como una función inline vectorial. Para este caso...
tracking img