PFC JuanLlamas

download PFC JuanLlamas

of 127

Transcript of PFC JuanLlamas

  • 7/22/2019 PFC JuanLlamas

    1/127

    UNIVERSIDAD NACIONAL DE EDUCACIN A DISTANCIA

    ESCUELA TCNICA SUPERIOR DE INGENIERA INFORMTICA

    Proyecto de Fin de Carrera de Ingeniero Informtico

    LABORATORIO VIRTUAL EN EJS PARA EL

    APRENDIZAJE DE MTODOS NUMRICOS DE

    INTEGRACIN Y CLCULO DE RACES

    JUAN LLAMAS MARTNEZ

    Dirigido por: ALFONSO URQUA MORALEDA

    Curso: 2012/2013 (Octubre 2012)

  • 7/22/2019 PFC JuanLlamas

    2/127

  • 7/22/2019 PFC JuanLlamas

    3/127

    LABORATORIO VIRTUAL EN EJS PARA EL APRENDIZAJE DE

    MTODOS NUMRICOS DE INTEGRACIN Y CLCULO DE RACES

    Proyecto de Fin de Carrera de modalidad oferta general

    Realizado por: JUAN LLAMAS MARTNEZ(firma)

    Dirigido por: ALFONSO URQUA MORALEDA(firma)

    Tribunal calificador:

    Presidente: D./Da. ...............................................................................................................................

    (firma)

    Secretario: D./Da. ...............................................................................................................................

    (firma)

    Vocal: D./Da. ......................................................................................................................................

    (firma)

    Fecha de lectura y defensa: ...................................................... ...........................................................

    Calificacin: .............. .............................................................. ...........................................................

  • 7/22/2019 PFC JuanLlamas

    4/127

  • 7/22/2019 PFC JuanLlamas

    5/127

    1

    RESUMEN

    La finalidad del presente proyecto es crear un entorno virtual online en el

    que los alumnos puedan adquirir los conocimientos necesarios para comprender

    paso a paso cada uno de los mtodos numricos expuestos.

    Se podrn estudiar varios mtodos de resolucin de races y varios mtodos

    de integracin. Entre los mtodos de resolucin de races tenemos el mtodo de la

    biseccin, el mtodo de Newton, el mtodo del punto fijo y el mtodo de Gauss. Por

    otro lado en cuanto a los mtodos de integracin tenemos el mtodo de Euler, el

    mtodo de Euler modificado y el mtodo de los trapecios.

    Para el desarrollo de las simulaciones de cada uno de los mtodos se ha

    empleado la herramienta EJS (Easy Java Simulations). Una vez creadas las

    simulaciones se fusionan en un entorno web intuitivo y atractivo. Se pretende que la

    compresin de los trminos y caractersticas de los mtodos sea lo ms sencilla

    posible de cara al alumno.

    LI STA DE PALABRAS CLAVE

    EJS, mtodo de Newton, mtodo de Gauss, mtodo de Euler, mtodo de la

    biseccin, mtodo del punto fijo, mtodo de los trapecios, entorno virtual, mtodos

    numricos.

  • 7/22/2019 PFC JuanLlamas

    6/127

    2

    ABSTRACT

    The purpose of this project is to create an online virtual laboratory in which

    students can acquire the knowledge necessary to understand each step of the

    exposed numerical methods.

    Several root-finding and integration algorithms are explained in the virtual

    laboratory. Among the root-finding methods is the bisection method, Newton's

    method, the fixed-point iteration methodand the Gausss method. On the other handin terms of integration methods have the Euler method, the modified Euler method

    and the trapezoids methos.

    Easy Java Simulations (Ejs) has been used for developing the virtual

    laboratories of the numerical methods. The laboratories have been structured into an

    attractive and intuitive web environment. In order to facilitate the student learning,

    the content of the laboratories has been kept as simple as possible.

    .

    KEYWORDS

    EJS, Newton method, Gauss, Euler'smethod, the bisection method, fixed

    point method, method of trapezoids, virtual environment, numerical methods.

  • 7/22/2019 PFC JuanLlamas

    7/127

    3

    NDICE

    NDICE ........................................................................................................................ 3NDICE DE FIGURAS..................................................................................................... 7NDICE DE TABLAS...................................................................................................... 91.INTRODUCCIN,OBJETIVOS Y ESTRUCTURA........................................................ 11

    1.1.INTRODUCCIN...................................................................................... 111.2.OBJETIVOS............................................................................................. 121.3.ESTRUCTURA......................................................................................... 16

    2.MTODO DE LA BISECCIN................................................................................... 212.1.INTRODUCCIN...................................................................................... 212.2.DESCRIPCIN......................................................................................... 212.3.OBJETIVO DOCENTE............................................................................... 262.4.FUNCIONALIDAD DEL LABORATORIO VIRTUAL....................................... 262.5.DESARROLLO DEL LABORATORIO VIRTUAL............................................ 292.6.ACTIVIDADES PEDAGGICAS................................................................. 352.7.CONCLUSIONES...................................................................................... 35

    3.MTODO DENEWTON-RAPHSON.......................................................................... 373.1.INTRODUCCIN...................................................................................... 373.2.DESCRIPCIN DEL MTODO.................................................................... 373.3.OBJETIVO DOCENTE............................................................................... 42

    3.4.FUNCIONALIDAD DEL LABORATORIO VIRTUAL....................................... 43

  • 7/22/2019 PFC JuanLlamas

    8/127

    4

    3.5.DESARROLLO DEL LABORATORIO VIRTUAL........................................... 463.6.ACTIVIDADES PEDAGGICAS................................................................. 51

    3.7.CONCLUSIONES...................................................................................... 52

    4.MTODO DEL PUNTO FIJO..................................................................................... 534.1.INTRODUCCIN...................................................................................... 534.2.DESCRIPCIN DEL MTODO.................................................................... 534.3.OBJETIVO DOCENTE............................................................................... 564.4.FUNCIONALIDAD DEL LABORATORIO VIRTUAL....................................... 574.5.DESARROLLO DEL LABORATORIO VIRTUAL............................................ 594.6.ACTIVIDADES PEDAGGICAS................................................................. 624.7.CONCLUSIONES...................................................................................... 63

    5.MTODO DE GAUSS.............................................................................................. 655.1.INTRODUCCIN...................................................................................... 655.2.DESCRIPCIN DEL MTODO.................................................................... 655.3.OBJETIVO DOCENTE............................................................................... 705.4.FUNCIONALIDAD DEL LABORATORIO VIRTUAL....................................... 705.5.DESARROLLO DEL LABORATORIO VIRTUAL............................................ 745.6.ACTIVIDADES PEDAGGICAS................................................................. 795.7.CONCLUSIONES...................................................................................... 81

    6.MTODO DE EULER Y EULER MODIFICADO.......................................................... 836.1.INTRODUCCIN...................................................................................... 836.2.DESCRIPCIN DEL MTODO.................................................................... 84

  • 7/22/2019 PFC JuanLlamas

    9/127

    5

    6.2.1.DESCRIPCIN DEL MTODO DE EULER............................................ 846.2.1.DESCRIPCIN DEL MTODO DE EULER MODIFICADO....................... 86

    6.3.OBJETIVO DOCENTE............................................................................... 91

    6.4.FUNCIONALIDAD DEL LABORATORIO VIRTUAL....................................... 916.5.DESARROLLO DEL LABORATORIO VIRTUAL............................................ 946.6.ACTIVIDADES PEDAGGICAS................................................................. 966.7.CONCLUSIONES...................................................................................... 98

    7.MTODO DE LOS TRAPECIOS.............................................................................. 1017.1.INTRODUCCIN.................................................................................... 1017.2.DESCRIPCIN DEL MTODO.................................................................. 1027.3.OBJETIVO DOCENTE............................................................................. 1067.4.FUNCIONALIDAD DEL LABORATORIO VIRTUAL.................................... 1067.5.DESARROLLO DEL LABORATORIO VIRTUAL......................................... 1097.6.ACTIVIDADES PEDAGGICAS............................................................... 1127.7.CONCLUSIONES.................................................................................... 113

    8.ESTRUCTURA WEB............................................................................................. 1159.CONCLUSIONES Y TRABAJOS FUTUROS............................................................... 121

    9.1.CONCLUSIONES.................................................................................... 1219.2.TRABAJOS FUTUROS............................................................................ 122

    BIBLIOGRAFA........................................................................................................ 123

  • 7/22/2019 PFC JuanLlamas

    10/127

    6

  • 7/22/2019 PFC JuanLlamas

    11/127

    7

    NDICE DE FIGURAS

    Figura 1. Estructura CD-Rom ............................................................................. 18Figura 2. Grfica ejemplo mtodo de la biseccin ............................................. 25Figura 3. Laboratorio virtual mtodo de la biseccin ......................................... 27Figura 4. Aviso error al acotar el intervalo mtodo de la biseccin ................... 28Figura 5. Ejemplo paso a paso mtodo de la biseccin ...................................... 29Figura 6. Modelo general del mtodo de Newton-Raphson ............................... 38Figura 7. Grfica de la funcin f(x) = x2-4 en el intervalo [-3,3] ....................... 39Figura 8. Aproximaciones races mtodo de Newton - Raphson ....................... 40Figura 9. Grfica ejemplo 1 mtodo NewtonRaphson ................................... 41Figura 10. Grfica ejemplo 2 mtodo NewtonRaphson ................................. 42Figura 11.Laboratorio virtual mtodo Newton ................................................... 44Figura 12. Mensaje paso a paso mtodo Newton ............................................... 45Figura 13. Pasos de clculos del mtodo de Newton .......................................... 46Figura 14. Ejemplo grfico alternativo mtodo del punto fijo ........................... 56Figura 15. Laboratorio virtual mtodo del punto fijo ......................................... 57Figura 16. Pasos de clculos mtodo del punto fijo ........................................... 58Figura 17. Laboratorio virtual mtodo de Gauss ................................................ 71Figura 18. Pasos de clculos mtodo de Gauss .................................................. 72Figura 19. Clculos finales mtodo de Gauss ..................................................... 73Figura 20. Obtencin resultado mtodo de Gauss .............................................. 74Figura 21. Grfica mtodo de Euler ................................................................... 84Figura 22. Grfica aproximacin del mtodo de Euler ....................................... 87Figura 23. Laboratorio virtual mtodo de Euler y Euler mejorado .................... 92Figura 24. Pasos mtodo de Euler ...................................................................... 93

  • 7/22/2019 PFC JuanLlamas

    12/127

    8

    Figura 25. Pasos mtodo de Euler mejorado ...................................................... 93Figura 26. Grfica mtodo de los trapecios [wikipedia, 2012] ......................... 102Figura 27. Laboratorio virtual mtodo de los trapecios .................................... 107Figura 28. Clculos mtodo de los trapecios .................................................... 108Figura 29. Clculos finales mtodo de los trapecios ........................................ 108Figura 30. Flash estructura web ........................................................................ 115Figura 31. Men estructura web ....................................................................... 116Figura 32. EJS estructura web .......................................................................... 116Figura 33. Que vas a aprender. Estructura web ................................................ 117Figura 34. Noticias estructura web ................................................................... 118

  • 7/22/2019 PFC JuanLlamas

    13/127

    9

    NDICE DE TABLAS

    Tabla 1. Valores ejemplo 1 mtodo Newton.41

    Tabla 2. Valores ejemplo 2 mtodo de Newton42

    Tabla 3. Valores ejemplo 1 mtodo del punto fijo54

    Tabla 4. Valores ejemplo 1 mtodo de Euler89

    Tabla 5. Valores ejemplo 2 mtodo de Euler90

  • 7/22/2019 PFC JuanLlamas

    14/127

    10

  • 7/22/2019 PFC JuanLlamas

    15/127

    11

    1

    INTRODUCCIN,OBJETIVOS Y ESTRUCTURA

    1.1. INTRODUCCINLa aparicin y el perfeccionamiento incesante de los ordenadores de alta

    velocidad han conducido a una transformacin autnticamente revolucionara de la

    Ciencia en general y de las Matemticas, en particular. Ha cambiado la tecnologa

    de las investigaciones cientficas, han aumentado inmensamente las posibilidades de

    los estudios tericos, del pronstico de proceso complejos y de la proyeccin de las

    construcciones de ingeniera. nicamente gracias a la aplicacin de la simulacin

    matemtica y de nuevos mtodos numricos destinados para los ordenadores se hizo

    posible resolver grandes problemas cientficotcnicos.

    Hay muchos tipos de mtodos numricos, unos ms precisos que otros, otros

    ms complejos y ms difciles de comprender pero todos ellos comparten una

    finalidad comn y es que son herramientas poderosas para la resolucin de

    problemas.

    Bajo un estudio detallado se pretende dar a conocer algunos de ellos,

    aquellos que se han considerado bsicos para comprender por parte de un alumno

    que desee profundizar en el mundo de la simulacin matemtica. Los mtodos

    numricos pueden manejar sistemas complejos y comunes en la Ingeniera.

  • 7/22/2019 PFC JuanLlamas

    16/127

    12

    La idea del laboratorio virtual ha surgido como resultado de considerar muy

    til crear un entorno virtual para la enseanza docente, que permita al usuario

    interactuar, mediante una simulacin interactiva, con los mtodos numricos bsicos

    de Ingeniera. Supone un aporte extra al aprendizaje docente de los alumnos de

    primeros cursos de Ingeniera, permitiendo a los mismos realizar un seguimiento del

    desarrollo de ejercicios basados en los mtodos descritos.

    El punto fuerte de los laboratorios virtuales es que permiten al alumno

    experimentar por s mismo con un modelo especialmente diseado para ilustrar los

    conceptos que se pretende ensear al alumno. Esta posibilidad de experimentar por

    s mismo resulta motivador para el alumno, incentivndole por tanto en el estudio de

    la materia.

    Teniendo en cuenta lo que se pretende desarrollar el siguiente paso es buscar

    un entorno de desarrollo que pueda aportarnos las caractersticas necesarias para

    desarrollar la idea del laboratorio virtual. Easy Java Simulations (simulaciones

    sencillas en Java), tambin conocido como EJS, es una herramienta de autor creada

    en Java que ayuda a no programadores a crear simulaciones interactivas en Java,

    habitualmente con fines de enseanza o aprendizaje. EJS [Esquembre, 2011] es un

    programa que le ayuda a crear otros programas, en concreto simulaciones cientficas

    en general con fines pedaggicos.

    1.2.OBJETIVOS

    Los objetivos que se pretenden con el laboratorio virtual de mtodos

    numricos es que aquellos alumnos de primeros cursos de Ingeniera que deseen

  • 7/22/2019 PFC JuanLlamas

    17/127

    13

    profundizar en el desarrollo de problemas basados en mtodos numricos,

    dispongan de una herramienta de fcil manejo, intuitiva y a su alcance que les

    permita desarrollar simulaciones y clculos paso a paso de estos mtodos.

    Se ha decidido desarrollar los mtodos numricos que se consideran ms

    bsicos y se han estructurado en dos grupos. Por un lado los mtodos de resolucin

    de races y por otro lado los de integracin.

    Dentro del grupo de los mtodos de resolucin de races los escogidos han

    sido el mtodo de la biseccin, el mtodo de Newton, el mtodo del punto fijo y el

    mtodo de Gauss.

    El mtodo de la biseccin ha sido seleccionado porque es un mtodo muy

    sencillo de aprender, de poner en prctica y de poder simular sobre una grfica.

    Ayuda al alumno a comprender la idea base de cmo se debe obtener la raz de una

    ecuacin. Para aprender otros mtodos numricos ms complejos lo mejor es

    empezar con un mtodo bsico y sencillo de comprender, es por ello que se ha

    puesto como el primer mtodo del laboratorio y como el primer mtodo que debe

    aprender un alumno. Con este mtodo se espera que el alumno que lo estudie

    aprenda un algoritmo de bsqueda de races que trabaja dividiendo el intervalo de

    partida a la mitad y seleccionando el subintervalo que contiene la raz buscada.

    A continuacin se ha decidido introducir el mtodo de Newton. El mtodo de

    Newton es un buen ejemplo para compararlo con el mtodo de la biseccin,

    haciendo entender a un alumno que existen otros mtodos para resolver races, con

    sus pros y contras respecto al anterior. Este mtodo ejemplifica claramente que se

    pueden dar casos en los que no se converja en una raz, lo que se considera bsico a

    la hora de que un alumno se ponga a afrontar este tipo de problemas. Tambin se

  • 7/22/2019 PFC JuanLlamas

    18/127

    14

    espera de este mtodo que se aprenda a encontrar el mximo y mnimo de una

    funcin, encontrando los ceros de su primera derivada.

    Dentro de este grupo de mtodos tambin se encuentra el mtodo del punto

    fijo. Dicho mtodo se ha introducido por considerarse un mtodo sencillo y a la vez

    potente para resolver races. Es importante que un alumno que se vaya a enfrentar a

    la resolucin de un problema, que requiera la aplicacin de un mtodo numrico,

    disponga del conocimiento de varios de ellos y sepa cul es mejor emplear en cada

    caso. De este mtodo se espera que un alumno acabe sabiendo cmo obtener una

    raz, o solucin, de una ecuacin de la forma ( ) = 0, la misma que debe ser

    transformada en una ecuacin equivalente de punto fijo ( ) = 0, de tal forma que al

    reordenar la ecuacin ( ) = 0, se ubique de tal forma que se defina = ( ).

    El mtodo de Gauss tambin ha sido incluido en este grupo. Se ha

    considerado importante que los alumnos dispongan tambin de un mtodo para la

    resolucin de sistemas de ecuaciones. El mtodo de Gauss es un mtodo sencillo y

    fcil de comprender que sirve para resolver sistemas de ecuaciones de diferentes

    tamaos y que adems refleja los diferentes resultados que puedes obtener al

    resolver un sistema ecuacional. Se espera incluyendo este mtodo en el laboratorio

    virtual que un alumno disponga de un mecanismo sencillo para enfrentarse a la

    resolucin de sistemas de ecuaciones.

    En el otro grupo de mtodos numricos se han introducido el mtodo de

    Euler, el mtodo de Euler mejorado y el mtodo de los trapecios. Estos mtodos se

    utilizan como mtodos de integracin.

    La finalidad de introducir el mtodo de Euler y el de Euler mejorado es que

    se puedan comparar ambos mtodos entre s. El alumno comprender cmo se

  • 7/22/2019 PFC JuanLlamas

    19/127

    15

    realizan los clculos mediante el mtodo de Euler y a su vez vea cmo ha

    evolucionado dicho mtodo, mtodo de Euler mejorado, de tal forma que se llegue

    tambin a una solucin ptima. El mtodo de Euler es el mtodo ms simple de

    integracin y se considera bsico para comenzar a conocer mtodos que resuelvan

    problemas de este tipo. Se espera que un alumno que trabaje con el mtodo de Euler

    en el laboratorio virtual aprenda a realizar un procedimiento de integracin

    numrica para resolver ecuaciones diferenciales ordinarias a partir de un valor

    inicial dado.

    Dentro del grupo de mtodos de integracin se ha decidido incluir tambin el

    mtodo de los trapecios. El mtodo de los trapecios es un mtodo para calcular

    aproximadamente el valor de la integral definida. Junto con el mtodo de Euler, el

    mtodo de los trapecios es tambin un mtodo simple y fcil de comprender, bsico

    en el aprendizaje de mtodos numricos de integracin. Se espera que el alumno que

    estudie dicho mtodo a travs del laboratorio virtual obtenga el conocimiento

    necesario para poder calcular aproximadamente el valor de la integral definida.

    Dentro de cada mtodo numrico tiene que haber una introduccin del

    mtodo que se pretende explicar as como una descripcin detallada del mismo. Se

    debe contar con un buen ejemplo ilustrativo que sirva al alumno a entender con todo

    lujo de detalles la finalidad del mtodo, un entorno de simulacin visual que ayude a

    comprender el mtodo y una serie de actividades que abarquen todos los tipos de

    problemas que se pudiera encontrar un alumno en los primeros cursos de Ingeniera.

    Finalmente una serie de conclusiones y comparaciones con otros mtodos que

    clarifiquen definitivamente las caractersticas del mismo.

  • 7/22/2019 PFC JuanLlamas

    20/127

    16

    Una vez un alumno haya trabajado de forma precisa con el laboratorio virtual

    debe ser capaz de aplicar los mtodos numricos de manera eficiente en la solucin

    de problemas que involucran modelos matemticos, procurando que la solucin

    obtenida mediante la aplicacin de los diferentes algoritmos sea ptima.

    1.3. ESTRUCTURAEl proyecto est estructurado en ocho captulos, el primero de ellos es una

    introduccin en la que se precisa el desarrollo del proyecto, lo que se ha obtenido y

    lo que se pretenda. Se detalla el punto de partida de los objetivos que se desean

    alcanzar. Se especifican los objetivos del laboratorio virtual. Se indica la audiencia a

    la que va dirigido, las caractersticas que posee y la idea del por qu se ha

    desarrollado un laboratorio con los mtodos numricos que contiene. A

    continuacin se ha considerado dedicar un captulo de la memoria a cada uno de los

    mtodos numricos que se abordan en el laboratorio virtual.

    Cada captulo que trata un mtodo numrico est estructurado de la siguiente

    forma:

    Una primera introduccin para comentar por encima la idea fundamental del

    mtodo numrico en cuestin. En esta seccin se precisa adems la finalidad del

    mtodo y para qu sirve.

    A continuacin se describe el mtodo con todo lujo de detalle, cmo

    funciona y cmo se realizan los clculos del mismo. Se presenta la frmula

    matemtica del mtodo as como el proceso a travs del cul se ha llegado a la

  • 7/22/2019 PFC JuanLlamas

    21/127

    17

    misma. En esta misma seccin tambin se presentan ejercicios resueltos que ayudan

    a comprender de mejor forma el mtodo numrico.

    Se crea una seccin denominada objetivo docente, en la que se describe lo

    que se pretende conseguir con el mtodo numrico, qu es lo que va aprender el

    alumno y para qu le puede servir el emplear el laboratorio virtual en el aprendizaje

    del mismo.

    Posteriormente se muestra la funcionalidad del laboratorio virtual, en esta

    seccin se describe cmo funciona el mtodo numrico en el laboratorio virtual. Se

    describen las partes de las que est formado y las caractersticas que un alumno debe

    conocer para poder trabajar con l. Se adjuntan imgenes del laboratorio y se detalla

    la funcionalidad de cada uno de los botones y acciones que se pueden realizar con

    l.

    A continuacin se dan todo lujo de detalles sobre el desarrollo del laboratorio

    virtual, esta es la seccin dedicada a exponer el cmo ha sido desarrollado el

    laboratorio virtual con la herramienta EJS, los mtodos Java desarrollados para que

    funcione, cmo se ha implementado la parte grfica del mismo y la relacin entre el

    cdigo y los componentes visuales.

    Antes de concluir cada mtodo se presenta una seccin de actividades

    pedaggicas. Es importante que un alumno que trabaja con mtodos numricos

    realice una serie de ejercicios que le ayuden a comprender y entender mejor el

    mtodo. Se dedica una seccin a exponer una serie de actividades que el alumno

    puede realizar con el laboratorio virtual.

  • 7/22/2019 PFC JuanLlamas

    22/127

    18

    Por ltimo se describen las conclusiones que se han obtenido con el

    desarrollo del mtodo numrico en el laboratorio virtual. Esta seccin sirve para

    presentar con detalle si se han alcanzado los objetivos para los que se creaba un

    laboratorio virtual para el mtodo numrico en cuestin.

    A continuacin, una vez abordado un captulo para cada uno de los mtodos

    numricos, se presenta un captulo dedicado a explicar detalladamente las partes que

    contiene el entorno web que se ha creado para introducir todos y cada uno de los

    mtodos numricos. Se detallan las diferentes secciones de las que est compuesto

    el entorno web del laboratorio virtual, explicando adems la seccin de noticias y la

    seccin de contacto que completan, junto con los mtodos numricos, el laboratorio

    virtual en su conjunto.

    Finalmente se presenta un captulo dedicado a la conclusin obtenida con el

    desarrollo del proyecto y un apartado sobre los trabajos futuros que se pretenden o

    son posibles desarrollar a posteriori.

    A la memoria del proyecto le acompaa un CDRom que se encuentra

    estructurado tal y como muestra laFigura 1:

    Figura 1. Estructura CD-Rom

  • 7/22/2019 PFC JuanLlamas

    23/127

    19

    En la carpeta Memoria se alberga el presente documento con informacin

    detallada del estudio y desarrollo del proyecto.

    En la carpeta Cdigo EJS se encuentra el cdigo Java obtenido en el

    desarrollo de cada uno de los mtodos numricos mediante la herramienta EJS.

    En la carpeta Aplicacin EJS se encuentra la herramienta que se ha utilizado

    para el desarrollo del laboratorio virtual

    En la carpeta Entorno Webse encuentra la pgina web con el laboratorio

    virtual como tal, para su prueba y visualizacin en un navegador web.

  • 7/22/2019 PFC JuanLlamas

    24/127

    20

  • 7/22/2019 PFC JuanLlamas

    25/127

    21

    2

    MTODO DE LA BISECCIN

    2.1.INTRODUCCIN

    Este mtodo tiene como base o motivacin el teorema del valor intermedio

    [Negrn, n.d]. En particular si la funcin es continua y y son dados tales

    que ( ) ( ) , entonces definimos c = . Si (c) = 0, entonces terminamos.

    De lo contrario reemplazamos con c manteniendo la diferencia de signos.

    2.2.DESCRIPCIN

    La finalidad del mtodo de la biseccin es encontrar races a una funcin

    dada dentro de un intervalo [ , ]. Comenzaremos definiendo en primer lugar los

    teoremas en los que est basado el mtodo de la Biseccin.

    Teorema de Bolzano: Sea una funcin continua en [ , ]

    tal que ( ) ( ) , es decir, que tiene distinto signo en y en . Entonces,

    existe perteneciente (a, b) tal que (c) = 0.

    El Teorema de Bolzano afirma que si una funcin es continua en un intervalo

    cerrado y acotado y en los extremos del mismo sta toma valores con signos

    opuestos, entonces existe al menos una raz de la funcin en el interior del intervalo.

  • 7/22/2019 PFC JuanLlamas

    26/127

    22

    Demostracin:

    Supongamos que (a) < 0 y (b) > 0. Sea T el conjunto formado por todos

    los valores perteneciente [a, b] para los que ( ) < 0. El conjunto T est acotado

    superiormente por b y, adems, no es vaco ya que a pertenece a T. Por ello el

    conjunto T tiene un extremo superior c. Se cumple que (c) = 0. Vemoslo:

    Si (c) > 0, entonces por la propiedad de la conservacin del signo de las

    funciones continuas existira un intervalo en el que la funcin sera tambin positiva.

    En este caso existiran valores menores que c que serviran de cota superior de T y

    por ello c no sera el extremo superior de T como hemos supuesto.

    Si (c) < 0, entonces existira un intervalo en el que la funcin sera negativa

    y por tanto existiran valores de a la derecha de c para los que la funcin sera

    negativa y por tanto c no sera el extremo superior de T. Por tanto (c) tiene que

    tomar el valor cero: (c) = 0.

    Si ( ) > 0 y ( ) < 0 el razonamiento es similar.

    Teorema del valor intermedio: Sea continua en [ , ], y

    tal que ( ) < ( ) entonces, para cualquier k tal que ( ) < k < ( ) existe

    perteneciente ( , ) tal que (x) = k.

    Bsicamente el Teorema del Valor Intermedio nos dice que toda funcin

    continua en un intervalo cerrado, una vez que alcanz ciertos valores en los

    extremos del intervalo, entonces debe alcanzar todos los valores intermedios.

  • 7/22/2019 PFC JuanLlamas

    27/127

    23

    Demostracin:

    Para la demostracin aplicamos el teorema de Bolzano en la funcin ( ) =

    ( ) - k, la cual es continua, por serlo ( ), ( ) < 0 y ( ) > 0. El teorema nos

    permite afirmar que existir c perteneciente ( , ) tal que (c) = 0 y en

    consecuencia (c) = k.

    El mtodo de la biseccin se basa en estos teoremas y se emplea para

    aproximar ceros de funciones.

    Supngase que queremos encontrar los ceros de una funcin ( ) continua.

    Dados dos puntos y tal que ( ) y ( ) tengan signos distintos, sabemos por el

    Teorema de Bolzano que ( ) debe tener, al menos, una raz en el intervalo [ , ].

    El mtodo de biseccin divide el intervalo en dos, usando un tercer punto

    c = . En este momento, existen dos posibilidades: ( ) y (c), (c) y ( )

    tienen distinto signo. El mtodo de biseccin se aplica al subintervalo donde el

    cambio de signo ocurre. Este proceso puede aplicarse tantas veces como sea

    necesario para alcanzar la precisin que se requiera.

    Anlisis de Error:

    Como ( ) ( ) 0, sabemos que existe un nmero tal que ( )=0.

    Mediante induccin matemtica es fcil ver que:

    bn+1an+1 = (bnan)(2.1)

  • 7/22/2019 PFC JuanLlamas

    28/127

    24

    Esto es as ya que el largo del intervalo se divide a la mitad en cada iteracin

    del algoritmo. Nuevamente usando induccin matemtica obtenemos que:

    bn+1an+1 = (ba),(2.2)

    Se puede observar que como [an, cn] [cn, bn] tenemos que:

    |cn- cnan= bncn= (bnan)(2.3)

    Combinando la Ec.(2.2) y la Ec.(2.3) anteriores obtenemos que:

    |cn- (ba),(2.4)

    Basados en este anlisis de convergencia podemos hacer las siguientes

    observaciones:

    El mtodo tiene convergencia segura. Esto es dada la condicin inicial

    ( ) ( ) , el mtodo converge a una raz a en [ , ]. Esta propiedad conocida

    como convergencia global es una de las caractersticas fuertes del mtodo de la

    biseccin y la mayora de los mtodos no la poseen.

    El error en las aproximaciones generadas por el mtodo se reduce a la mitad

    en cada paso.

    La convergencia lineal caracterizada por la ltima ecuacin es lenta

    comparada con otros mtodos [Negrn, n.d]. Esto es as ya que el mtodo slo usa

    evaluaciones de la funcin y comparaciones.

  • 7/22/2019 PFC JuanLlamas

    29/127

    25

    Ejemplo 1.- Se considera la funcin : continua y acotada.

    Demostrar que la ecuacin ( ) - = 0 tiene al menos una raz real.

    Consideramos la funcin ( ) = ( ) - . Dicha funcin es continua por ser

    diferencia de funciones continuas. Por ser acotada en existe un M que pertenece

    a (0, +) tal que -M < ( ) < M para todo . Por tanto, para todo tenemos que

    ( ) - M < 0 y ( ) +M > 0 y por tanto (M) = (M) - M < 0 y (-M) =

    (-M) + M > 0. Por el Teorema de Bolzano existe c en el intervalo [-M; M] tal que

    (c) = 0:

    Ejemplo 2.-Encontrar un intervalo en el que se pueda asegurar que existe

    alguna solucin de la siguiente ecuacin.

    = (2.5)

    Haciendo un dibujo aproximado podemos determinar un intervalo dnde

    encontrar la solucin de la ecuacin. VerFigura 2.

    Figura 2. Grfica ejemplo mtodo de la biseccin

  • 7/22/2019 PFC JuanLlamas

    30/127

    26

    Podemos observar en laFigura 2 que la solucin de la ecuacin se encuentra

    entre t=0 y t=1. Aplicamos ahora el Teorema de Bolzano para demostrarlo. (t) se

    trata de una funcin continua en el intervalo (-1, +) ya que es suma y cociente de

    continuas y no se anula el denominador. Por otro lado,

    (0) (1) = (2.6)

    Por tanto, el Teorema de Bolzano asegura que existe c que pertenece a (0, 1)

    tal que (c) = 0.

    2.3.OBJETIVO DOCENTE

    El objetivo del mtodo de la biseccin es dar a conocer al alumno un mtodo

    rpido y sencillo de bsqueda de races para ecuaciones no lineales. Se trata de un

    mtodo bsico en el aprendizaje de este tipo de mtodos numricos de bsqueda de

    races. Elemental para poder ser comparado con otros mtodos de bsqueda de

    races como el mtodo de Newton.

    Se trata de un mtodo que se estudia en los ltimos aos de Bachillerato o en

    los primeros cursos de Ingeniera, con lo que se considera elemental para el buen

    desarrollo acadmico de un futuro ingeniero.

    2.4.FUNCIONALIDAD DEL LABORATORIO VIRTUAL

    Grficamente podemos visualizar el laboratorio virtual en laFigura 3:

  • 7/22/2019 PFC JuanLlamas

    31/127

    27

    Figura 3. Laboratorio virtual mtodo de la biseccin

    En la parte superior del laboratorio virtual el alumno introduce el valor de la

    funcin que desea someter a estudio y pulsar intropara que se visualice la grfica

    correspondiente en la parte central.

    En la parte central se visualizar la grfica de la funcin de entrada y el

    alumno podr mover los cursores azul y amarillo para acotar el intervalo [a, b]

    respectivamente. Si en algn momento el alumno no colocase correctamente los

    intervalos el sistema generar un aviso indicndole que no ha colocado

    correctamente el intervalo y no se lo permitir. Por ejemplo si coloca el intervalo tal

    que se cumpla que ( ) ( ) > 0, lo cual no est permitido, el sistema mostrar el

    aviso mostrado en laFigura 4.

  • 7/22/2019 PFC JuanLlamas

    32/127

    28

    Figura 4. Aviso error al acotar el intervalo mtodo de la biseccin

    Una vez el alumno introduzca los datos de entrada podr pulsar el botn

    Calcular para obtener el valor de la raz dentro del intervalo correspondiente si

    sta existiera.

    En el laboratorio virtual tambin se dispone de una opcin en la que el

    estudiante puede ejecutar el procedimiento paso a paso para ver cmo va

    evolucionando el intervalo en la grfica. La grfica ir mostrando el nuevo intervalo

    que se genera en cada iteracin y los nuevos valores de los extremos del mismo. El

    alumno podr observar como cada vez la regin de acotamiento es ms pequea y se

    acerca cada vez ms al valor que hace 0 a la funcin. Por ejemplo para la funcin

    ( ) = 10-1, tras pulsar el botn paso a paso la grfica va cambiando tal y

    como nos muestra laFigura 5.

  • 7/22/2019 PFC JuanLlamas

    33/127

    29

    Figura 5. Ejemplo paso a paso mtodo de la biseccin

    2.5.DESARROLLO DEL LABORATORIO VIRTUAL

    A continuacin se explica cmo se ha desarrollado el laboratorio virtual del

    mtodo de la biseccin con la herramienta EJS.

    EJS est basado en el modelo vista controlador. En la parte de la vista se

    desarrolla la interfaz grfica mediante la cual interactuar el alumno con el

    programa. Tal y como se puede observar en la Figura 3 la interfaz del mtodo de la

    biseccin se centra en tres zonas agrupadas en un elemento principal de tipo panel

    denominadoplottingFrame. Dentro de este panel se ha incluido, en la parte superior,

    un panel que contiene a su vez un elemento de tipo campo de texto que evala la

    funcin. Adems se incluyen dos campos de texto que controlan el tamao del eje X

    de la grfica para acotar su tamao, xminy xmax.

  • 7/22/2019 PFC JuanLlamas

    34/127

    30

    El campo de texto que evala la funcin est conectado con un mtodo Java

    que pinta la grfica de dicha funcin, esto quiere decir que cuando se introduce el

    valor de la funcin y se pulsa introse llamar al mtodo que contiene el siguiente

    cdigo en Java:

    _view.trace.clear();while(x0)

    {

  • 7/22/2019 PFC JuanLlamas

    35/127

    31

    _view.alert("atencion", "No permitido","f(a)*f(b)>0 nopuede ser mayor que 0");_view.cursorA.setX(-1);a = -1;b = 1;_view.cursorB.setX(1);

    }if(a>=b){_view.alert("atencion", "No permitido","A no puede sermayor o igual que b");_view.cursorA.setX(-1);_view.cursorB.setX(1);a = -1;b = 1;}//variables necesarias para el paso a pasopA = a;pB = b;}

    Simplemente disponemos de dos variable globales a y b en las que

    asignamos el valor del marco correspondiente (marco azul para a y marco amarillo

    para b) segn lo mueva por la grfica el usuario. Si el movimiento del marco no es

    correcto el sistema mostrar el mensaje de error correspondiente.

    En la parte inferior del elemento principal plottingFramese ha colocado un

    panel que contiene un campo de texto asociado a la variable Java que muestra el

    resultado de la raz, y dos botones denominados calcular y paso a paso. Todo

    ello se puede observar con detalle en laFigura 3.

    El botn calcular lanza un evento que llama al siguiente programa Java y

    que constituye el ncleo fundamental del clculo mediante el mtodo de la

    biseccin.

    public doublecalcularRaiz(){doublep=a;inti=1;

    while( _view.function.evaluate(p)!=0 &i0)a=p;

  • 7/22/2019 PFC JuanLlamas

    36/127

    32

    elseif(_view.function.evaluate(p)*_view.function.evaluate(b)>0)

    b=p;i = i + 1;eps = Math.abs(p-pa)/p;

    }returnp;

    }

    Podemos observar que principalmente se trata de un bucle que se repite hasta

    que encontramos el valor que hace igual a 0 la funcin o hasta que se cumple el

    nmero de iteraciones que el usuario desee.

    Los datos de entrada son a, b, el nmero de iteraciones y la funcin que

    se vaya a someter a estudio. En cada iteracin, en la variable p se introduce el

    valor de la suma del intervalo a + b dividido entre 2. Si el valor de la funcin para

    p multiplicado por el valor de la funcin para a es mayor quecero entonces a

    pasa a tomar el valor p. Si en cambio, el valor de la funcin para p multiplicado

    por el valor de la funcin para b es mayor que cero b pasa a tomar el valor p.

    Una vez salimos del bucle, si ha sido porque hemos encontrado el valor que hace 0 a

    la funcin lo mostramos en el laboratorio virtual como dato de salida.

    El siguiente fragmento de cdigo java muestra cmo se tienen en cuenta los

    errores que se deben mostrar si el alumno acota de forma incorrecta el intervalo

    [a,b]

    public voidalgoritmo () {if(_view.function.evaluate(a)*_view.function.evaluate(b)>0){

    _view.alert("atencion", "No permitido","f(a)*f(b)>0 nopuede ser mayor que 0\nMueva los cursores de la grfica"hasta encontrar un intervalo vlido");}

    else{

    raiz = calcularRaiz();System.out.println("La raz es: "+raiz);

    }

  • 7/22/2019 PFC JuanLlamas

    37/127

    33

    }

    Tal y como se ha indicado anteriormente el laboratorio virtual tambin

    dispone de una seccin en la que el alumno puede ejecutar paso a paso el algoritmo.

    Cada vez que se pulsa el botn de paso a paso se realiza una llamada al siguiente

    mtodo de cdigo Java. Simplemente el sistema en cada pulsacin a dicho botn

    aplicar una iteracin en el clculo del mtodo de la biseccin. Crear el nuevo

    intervalo, lo mostrar grficamente en el laboratorio virtual y mostrar un mensaje

    explicativo de los clculos realizados. El alumno los estudiar y comprender y

    cuando lo desee pulsar de nuevo el botn para obtener los clculos de la siguiente

    iteracin del mtodo. As sucesivamente hasta encontrar la solucin final.

    public voidpasoApaso(){

    count++;if (count == 15) _view.alert("atencion", "Mensaje","Hasrealizado demasiadas iteraciones, estamos trabajando

    intervalos extremadamente cortos, pulsa el botn CalcularRaiz para obtener el valor exacto");_view.plottingPanel.setAutoscaleX(true);_view.plottingPanel.setZoom(true);xmin = pA;xmax = pB;ymin = -0.1;ymax = 0.1;double xPasoAPaso=pA;double pAux=pA;_view.trace.clear();System.out.println(pA + " " +pB + " ");if(_view.function.evaluate(pAux)==0)

    _view.alert("atencion", "Mensaje","Ya ha terminado");else{//calculamos el nuevo rangodouble paAux = pAux;pAux = (pA+pB)/2;System.out.println(_view.function.evaluate(pAux)+"");System.out.println(_view.function.evaluate(pA));if(_view.function.evaluate(pAux)*_view.function.evaluate(pA)>0)pA=pAux;elseif(_view.function.evaluate(pAux)*_view.function.evaluate(pB)>0)

    pB=pAux;//pintamos ese rango en la grfica

  • 7/22/2019 PFC JuanLlamas

    38/127

    34

    /*Debemos tener en cuenta que pA se ha podido ponerpor delante de pB por lo tanto distinguimos los doscasos*/if(pB>pA)while(xPasoAPaso 0.1)

    xPasoAPaso = 0.1 + xPasoAPaso;elsexPasoAPaso = 0.001 + xPasoAPaso;}

    else{xPasoAPaso=pB;while(xPasoAPaso 0.1)xPasoAPaso = 0.1 + xPasoAPaso;elsexPasoAPaso = 0.001 + xPasoAPaso;

    }}

    }_view.alert("atencion", "Valor del Intervalo:","Valor de a =" + pA + "\n Valor de b = " +pB);}

    Por ltimo cabe resalta el siguiente mtodo implementado para el botn

    reset. Simplemente se trata de resetear los valores de todo el laboratorio a los

    valores iniciales para que el alumno pueda probar de nuevo con el mismo u otro

    ejemplo.

    public voidreset(){xmin = -10;xmax = 10;_view.cursorA.setX(-1);_view.cursorB.setX(1);a = -1;

    b = 1;raiz = 0.00;double x=xmin;_view.trace.clear();while(x

  • 7/22/2019 PFC JuanLlamas

    39/127

    35

    2.6.ACTIVIDADES PEDAGGICAS

    El laboratorio virtual del mtodo de la biseccin contiene una seccin

    detallada con los pasos que debe realizar para comprender correctamente el mtodo.Se trata de actividades que se le plantean al alumno de cara a una mejor interaccin

    con el entorno as como de asimilacin de los conocimientos necesarios para

    comprender de forma eficiente el mtodo.

    Ya que se trata del mtodo de resolucin de races ms bsico del laboratorio

    virtual las actividades que lo comprenden no van ms all del hecho de indicarle al

    alumno que introduzca el valor de la funcin y del intervalo que desee y compruebe

    paso a paso cmo se realizan los clculos hasta llegar a una solucin vlida.

    2.7.CONCLUSIONES

    La inclusin del mtodo de la biseccin en el laboratorio virtual ha sido

    principalmente debido a que este mtodo numrico es el mtodo ms sencillo para el

    clculo de races. Es un mtodo muy sencillo y fcil de comprender y se considera

    que supone la base fundamental para comenzar aprendiendo este tipo de mtodos.

    Es importante que el alumno pueda visualizar grficamente la funcin que

    somete a estudio. Es por ello que se ha desarrollado la parte visual con una parte

    grfica que ayuda a comprender el mtodo. Es importante adems que el alumno se

    centre en aprender el mtodo, por ello se ha desarrollado lo ms sencillo posible y

    que sea fcil e intuitivo de manejar. Se han creado cursores para que el alumno

    pueda acotar el intervalo que desea usar para el clculo de la raz.

  • 7/22/2019 PFC JuanLlamas

    40/127

    36

    Adems se ha considerado que incluyendo un botn que permitiese al

    alumno ejecutar el mtodo paso a paso ayudara al alumno a comprender mucho

    mejor cmo calcula la raz el mtodo.

  • 7/22/2019 PFC JuanLlamas

    41/127

    37

    3

    MTODO DE NEWTON-RAPHSON

    3.1.INTRODUCCIN

    El mtodo de Newton-Raphson es uno de los ms usados y efectivos. A

    diferencia del mtodo de la biseccin, el mtodo de Newton-Raphson [Seminario,

    n.d] no trabaja sobre un intervalo sino que basa su frmula en un proceso iterativo.

    Ntese que no trabaja con intervalos donde nos asegure que encontraremos la raz, y

    de hecho no tenemos ninguna garanta de que nos aproximaremos a dicha raz.

    Desde luego existen ejemplos donde este mtodo no converge en la raz, en cuyo

    caso se dice que el mtodo diverge. Sin embargo, en los casos donde si converge a

    la raz lo hace con una rapidez impresionante, por lo cual es uno de los mtodos

    preferidos por excelencia.

    3.2.DESCRIPCIN DEL MTODO

    A Isaac Newton se debe el clculo de races de una funcin o ecuacin por

    aproximaciones sucesivas usando la tangente.

    El Mtodo de Newton-Raphson asume que la funcin es derivable

    sobre un intervalo cerrado [ ]. Entonces tiene una pendiente definida y una

    nica lnea tangente en cada punto dentro del intervalo [ ] [Negrn, n.d]. La

    tangente en ( 0, ( 0)) es una aproximacin a la curva de cerca del punto

  • 7/22/2019 PFC JuanLlamas

    42/127

    38

    ( 0, ( 0)). En consecuencia, el cero de la lnea tangente es una aproximacin del

    cero de o denominada raz de .

    Figura 6. Modelo general del mtodo de Newton-Raphson

    El mtodo de Newton es un proceso iterativo que sigue una pausa fija para

    aproximar una raz, considerando la funcin, su derivada, y un valor inicial.

    Hay que tener en cuenta que una raz de una funcin es aquel valor de

    que hace cero a la funcin. Esto significa que la raz de una funcin, se calcula

    cuando la funcin se igual a cero. Se pueden encontrar las races de una funcin

    simple como = x2-4 simplemente colocando la funcin igual a cero y

    resolviendo = x2-4 = 0, de aqu se tiene que = (x+2)(x-2)=0, para concluir

    que la igualdad se cumple slo si x= 2 x =-2, que son consideradas como races de

    la ecuacin.

    Visualmente podemos observar, en la grfica de la Figura 7, la bsqueda de

    los valores de la raz de la funcin anterior.

  • 7/22/2019 PFC JuanLlamas

    43/127

    39

    Figura 7. Grfica de la funcin f(x) = x2-4 en el intervalo [-3,3]

    En laFigura 7se observa que en el punto x = 2 y x = -2 la curva corta al eje

    X, considerando estos puntos como la raz de la funcin.

    Como ya se ha indicado el mtodo de Newton Raphson usa un proceso

    iterativo para encontrar la raz de una funcin. La raz especifica que el procesolocaliza un valor que depende del valor inicial, valor escogido arbitrariamente.

    Se calcula la primera aproximacin 1, como el cero de la lnea tangente en

    un punto inicial 0dado. Se calcula la segunda aproximacin 2, como el cero de la

    lnea tangente en la aproximacin 1. Siguiendo el esquema mostrado ms abajo, las

    primeras dos aproximaciones de races usando el Mtodo de Newton-Raphson, se

    buscan con el mismo criterio que el Mtodo de la Biseccin.

  • 7/22/2019 PFC JuanLlamas

    44/127

    40

    Figura 8. Aproximaciones races mtodo de Newton - Raphson

    Derivacin de la frmula: El mtodo de Newton tiene una interpretacin

    geomtrica sencilla, de hecho, el mtodo de Newton consiste en una linealizacin

    [UV, 2011]de la funcin, es decir, se reemplaza por una recta tal que contiene el

    punto ( 0, ( 0)) y cuya pendiente coincide con la derivada de la funcin en el punto

    ( 0). La nueva aproximacin a la raz, 1, se obtiene de la interseccin de la

    funcin lineal con el eje X de ordenadas.

    La ecuacin de la recta que pasa por el punto ( 0, ( 0)) y de pendiente

    ( 0) es y- ( 0) = ( 0)( - 0). Haciendo y = 0 y despejando se obtiene la

    ecuacin de NewtonRaphson

    n+1 = n ( n)/ ( n) (3.1)

    Ejemplo 1.-Partimos de la siguiente ecuacin, ( ) = 3 + +16, cuya

    representacin grfica se muestra en laFigura 9.

  • 7/22/2019 PFC JuanLlamas

    45/127

    41

    Figura 9. Grfica ejemplo 1 mtodo NewtonRaphson

    Obtenemos los valores representados en la Tabla 1:

    Tabla 1. Valores ejemplo 1 mtodo Newton.

    Hasta obtener el valor de la raz = -2.3877.

    Ejemplo 2.-Utilizar el mtodo de Newton Raphson para aproximar los

    ceros de ( ) = 2 3+ 2 + 1.

    Continuar las iteraciones hasta que dos aproximaciones sucesivas difieran en

    menos de 0,0001.

  • 7/22/2019 PFC JuanLlamas

    46/127

    42

    Figura 10. Grfica ejemplo 2 mtodo NewtonRaphson

    Por la grfica de la Figura 10se observa que hay un nico 0 que est entre

    -1,5 y -1.

    Tabla 2. Valores ejemplo 2 mtodo de Newton

    Como las dos aproximaciones sucesivas difieren en menos de 0,0001, la

    estimacin final del cero es 1,2338.

    3.3.OBJETIVO DOCENTE

    El objetivo docente que se persigue con el mtodo de Newton Raphson es

    que el alumno sea capaz de resolver una ecuacin de la forma ( ) = 0. La idea ms

    simple del mundo es expresarlo como , y ya quedara resuelta. El

  • 7/22/2019 PFC JuanLlamas

    47/127

    43

    mtodo de Newton toma la recta tangente a la funcin en un punto prximo a la

    solucin y calcula el punto de corte de esa tangente con el eje de las X.

    Se pretende que el alumno comprenda cmo funciona el mtodo, detecte

    cundo converge o no, pueda apreciar las diferencias con otros mtodos de clculo

    de races como por ejemplo la diferencia con el mtodo de la biseccin o el mtodo

    del punto fijo, tambin explicados en el laboratorio virtual. Una vez estudiado el

    mtodo, a travs del laboratorio virtual, el alumno ser capaz de saber aplicarlo para

    cualquier funcin, sabr cmo encontrar la solucin y detectar cuando es ms o

    menos conveniente aplicarlo sobre otros mtodos que buscan el mismo fin.

    El laboratorio virtual desarrollado sobre este mtodo muestra grficamente la

    evolucin de la tangente en la grfica de la funcin dada, para que el alumno pueda

    ir viendo en cada iteracin cmo se van realizando los clculos y pueda comprender

    de una forma clara y concisa cmo se desarrolla paso a paso el clculo de la raz de

    una funcin dada.

    3.4.FUNCIONALIDAD DEL LABORATORIO VIRTUAL

    Grficamente podemos visualizar el laboratorio virtual en laFigura 11.

  • 7/22/2019 PFC JuanLlamas

    48/127

    44

    Figura 11.Laboratorio virtual mtodo Newton

    Como podr observar en la Figura 11 hay dos reas claramente

    diferenciadas. En la parte superior del laboratorio virtual el alumno podr incluir los

    siguientes datos para realizar la simulacin:

    La funcin a simular.

    El tamao del eje x para acercar o alejar la grfica.

    El valor de X0.

    El nmero de iteraciones que desee tenga la simulacin.

  • 7/22/2019 PFC JuanLlamas

    49/127

    45

    Una vez introducidos dichos valores y pulsado introen cada uno de ellos, se

    dibujar la grfica segn los parmetros indicados.

    En la parte inferior se encuentran dos botones. Por un lado el botn

    Calcular por Newton, el cual el alumno pulsar para obtener el valor de la raz

    segn los parmetros que ha indicado anteriormente.

    Por otro lado tiene un botn denominado Ejecutar paso a paso el cual

    podr ir pulsando para ir viendo cmo se realiza el desarrollo de la simulacin. Cada

    vez que lo pulse un mensaje emergente saltar en la pantalla de su ordenador y le

    indicar de qu punto a qu punto se trazar la lnea tangente as como el punto en el

    que corta al eje X, indicndole por ltimo cul va a ser la siguiente aproximacin a

    la raz que se va a utilizar, verFigura 12.

    Figura 12. Mensaje paso a paso mtodo Newton

    Adems en el rea de mensajes inferior, cada vez que se realice una

    pulsacin de dicho botn, se indicarn las frmulas y los clculos utilizados en el

    paso que se haya dado, verFigura 13.

  • 7/22/2019 PFC JuanLlamas

    50/127

    46

    Figura 13. Pasos de clculos del mtodo de Newton

    3.5.DESARROLLO DEL LABORATORIO VIRTUAL

    Al igual que el mtodo de la biseccin, el desarrollo del laboratorio virtual

    del mtodo de Newton ha sido desarrollado con la herramienta EJS.

    Tal y como se puede observar en laFigura 13el panel principal denominado

    plottingFrameesta subdivido en tres paneles.

    En la parte superior, al igual que ocurra con el mtodo de la biseccin, se ha

    colocado un campo de texto en el que introducir la funcin y que se conecta al

    cdigo Java que dibuja la funcin en la parte grfica. Tambin, al igual que en el

    mtodo de la biseccin, se han colocado dos campos de texto para acotar el valor del

    eje X de la grfica. Se puede observar que aparecen dos campos de texto ms, x0y

    el nmero de iteraciones. Estos campos estn conectados mediante la herramienta

    EJS con dos variables del cdigo Java x0 y nIter, respectivamente. Cuando el

    alumno introduce los valores que desea para estos campos y pulsa intro se genera el

    evento que almacena en dichas variables los valores correspondientes.

  • 7/22/2019 PFC JuanLlamas

    51/127

    47

    En la parte central, al igual que en el mtodo de la biseccin, se ha creado un

    panel que contiene un elemento de tipo panel con ejes. Dicho panel, como ya se ha

    indicado, dibuja grficamente la traza de la funcin introducida evaluando punto por

    punto la funcin de partida mediante el mtodo Java siguiente:

    _view.trace.clear();while(xtol){

    n = n+1;xb = x;if(n > nIter) break;y = f(x);doubley_driv=(f(x+del_x) - y)/del_x;

    x = xb - y/y_driv;

  • 7/22/2019 PFC JuanLlamas

    52/127

    48

    System.out.println (x +" = "+xb+" - ("+y+" /"+y_driv+")");pasos = pasos +"==>"+ xb+" - ("+y+" /"+y_driv+")" +" = "+x +";\n";_view.areaTexto.setText("Teniendo en cuenta lafrmula de newton: Xi - f(Xi)/f'(Xi) = Xi+1

    \n\nXo = "+x0+"\nf'(x) la obtendremos de lasiguiente frmula f'(x) = (f(X+0,01)-f(x))/0,01\n\n"+pasos);iteracionesYraices = iteracionesYraices + "\n"+" n="+n+" x= "+x+" y = "+y;}

    System.out.println("Respuesta final = "+ x);returnx;}

    public voidasignarValorX0(){

    x0 = _view.cursor.getX();_initialize();}

    Podemos observar que se crea una condicin para que el bucle se repita hasta

    encontrar la solucin de la raz o hasta que se cumpla su if interior, el cual

    comprueba si se han dado un mayor nmero de iteraciones a las indicadas por el

    alumno. En cada iteracin se va calculando el siguiente punto i+1 utilizando la

    frmula de Newton en la que i+1 = i ( )/ ( ). En este caso vemos que ( ),

    que es la derivada de , es la variabley_driv. El valor de cada iteracin se almacena

    en la variable . El mtodo private double f(double ) simplemente llama a evaluar

    en la funcin que ha presentado el alumno el valor que se le pasa como parmetro .

    A continuacin se muestra el cdigo EJS que se ejecuta cuando el alumno

    pulsa el botn Ejecutar paso a paso para ir viendo la evolucin del mtodo en

    cada iteracin.

  • 7/22/2019 PFC JuanLlamas

    53/127

    49

    public voidpasoApaso(){_view.tangente.clear();

    if(pulsadoNewton){pasos = "";pulsadoNewton = false;

    }if(Math.abs(xaux-xbaux)>tolaux)if(naux

  • 7/22/2019 PFC JuanLlamas

    54/127

    50

    else_view.alert("Alerta","Informacion","Se han acabado lasiteraciones");

    else_view.alert("Alerta","Resultado","La raiz es: "+xaux);}

    Cada vez que el alumno realiza una pulsacin sobre el botn Ejecutar paso

    a paso se realiza el clculo de la nueva tangente que cortar el eje X, partiendo en

    cada iteracin de los datos calculados en la iteracin previa. Se mostrar un mensaje

    visual con los clculos realizados y se pararn los clculos hasta que el alumno pulse

    el botn de aceptacin del mensaje. Posteriormente se realizar automticamente

    zoom a la grfica para una mejor visualizacin de la recta tangente ya que en cada

    iteracin el rea de la grfica es cada vez ms pequeo. Mientras no se acaben las

    iteraciones dadas como parmetro de entrada se repetirn los clculos indicados

    hasta o bien se acaben las iteraciones o bien se obtenga el resultado de la raz

    buscada.

    La variable de tipo string pasos que se va generando en el cdigo Java,

    mientras se realizan los clculos por el mtodo de Newton, est conectada con el

    rea de texto inferior que se puede observar en la Figura 13, por tanto se cargar en

    esta rea de texto el contenido de dicha variable y se visualizarn los detalles de los

    pasos que se han realizado al evaluar la funcin mediante este mtodo.

    El mtodo de Newton es un mtodo abierto, en el sentido de que su

    convergencia global no est garantizada. La nica manera de alcanzar la

    convergencia es seleccionar un valor inicial lo suficientemente cercano a la raz

    buscada. As, se ha de comenzar la iteracin con un valor razonablemente cercano al

    cero (denominado punto de arranque o valor supuesto). La relativa cercana del

    punto inicial a la raz depende mucho de la naturaleza de la propia funcin; si sta

    presenta mltiples puntos de inflexin o pendientes grandes en el entorno de la raz,

  • 7/22/2019 PFC JuanLlamas

    55/127

    51

    entonces las probabilidades de que el algoritmo diverja aumentan, lo cual exige

    seleccionar un valor supuesto cercano a la raz. Una vez que se ha hecho esto, el

    mtodo linealiza la funcin por la recta tangente en ese valor supuesto. La abscisa

    en el origen de dicha recta ser, segn el mtodo, una mejor aproximacin de la raz

    que el valor anterior. Se realizarn sucesivas iteraciones hasta que el mtodo haya

    convergido lo suficiente.

    3.6.ACTIVIDADES PEDAGGICAS

    El laboratorio virtual del mtodo de Newton contiene una serie de

    actividades para que el alumno pueda interactuar y comprender de una forma ms

    clara los clculos que se deben realizar para trabajar con ste mtodo.

    Inicialmente se le indica al alumno que la simulacin ya trae un ejemplo

    cargado que le servir para dar sus primeros pasos. Al acceder al laboratorio virtual

    del mtodo de Newton se carga automticamente la funcin ( ) = y se le da

    un valor inicial a 0= -1. Al pulsar el botn calcular por Newton o el botn

    Ejecutar paso a paso podr observar que se obtieneel resultado de la raz -1,9 y

    que el mtodo converge.

    A continuacin se le indica al alumno que pruebe a cambiar el valor de 0al

    valor 0= 5 y que pulse de nuevo el botn calcular por Newton. El alumno podr

    observar que el valor de la raz es 2, es decir, cambiando el valor de 0 hemos

    encontrado un valor distinto de la raz en la que el mtodo tambin converge.

    Por ltimo se le indica al alumno que pruebe lo siguiente. Cambie la funcin

    a ( ) = . Cambie tambin el valor de 0= 3. El nmero de iteraciones

    mantngalo a 20. El alumno podr observar que la simulacin no genera ningn

  • 7/22/2019 PFC JuanLlamas

    56/127

    52

    resultado y es que en este caso la funcin no converge en la raz, por lo tanto es

    divergente.

    Las actividades pedaggicas anteriores ayudan al alumno a comprender la

    diferencia de cuando el mtodo de Newton converge a una o varias races y cundo

    no converge, es decir, diverge.

    3.7.CONCLUSIONES

    Se ha decidido incluir el mtodo de Newton en el laboratorio virtual ya que

    se considera un mtodo bsico y sencillo a travs del cual un alumno puede aprender

    a realizar los clculos de una funcin dada para encontrar su raz o races si las

    tuviera. Por otro lado podr aprender que hay mtodos numricos que en ocasiones

    son divergentes. Y por ltimo comprender la diferencia que existe con otros

    mtodos de clculo de races como por ejemplo la diferencia con el mtodo de la

    biseccin.

    Es importante adems que el alumno tenga la posibilidad de aprender la

    diferencia con el mtodo de la biseccin explicado en el captulo anterior. El mtodo

    de la biseccin es ms lento que el mtodo de newton pero nos asegura que

    converge en la raz que se encuentra en el intervalo definido. El mtodo de newton

    no trabaja con intervalos donde nos asegure que converge en una raz por lo tanto en

    ocasiones es divergente y no se encuentra solucin. Sin embargo, en las ocasiones

    en las que si converge en la raz lo hace con una rapidez impresionante, por lo cual

    se le puede considerar como uno de los mtodos preferidos por excelencia.

  • 7/22/2019 PFC JuanLlamas

    57/127

    53

    4

    MTODO DEL PUNTO FIJO

    4.1.INTRODUCCIN

    El mtodo del punto fijo es un mtodo iterativo que permite resolver

    sistemas de ecuaciones no necesariamente lineales [wikipedia, 2012]. En particular

    se puede utilizar para determinar races de una funcin de la forma , siempre y

    cuando se cumplan los criterios de convergencia.

    El mtodo de iteracin del punto fijo para resolver una ecuacin no lineal

    [Seminario, n.d] ( ) = 0 pasa por transformarla en una equivalente y

    ejecutar la iteracin a partir de un cierto hasta que satisfaga el

    criterio de parada elegido o se alcance el nmero de iteraciones mximo admitido.

    4.2.DESCRIPCIN DEL MTODO

    El mtodo del punto fijo requiere volver a escribir la ecuacin ( ) = 0 en la

    forma . Por ejemplo para la ecuacin 2-2 +3 = 0, se reordena para

    obtener = .

    Otro ejemplo puede ser ( ) = 0 que puede transformarse sumando a

    ambos lados para obtener = ( ) +

  • 7/22/2019 PFC JuanLlamas

    58/127

    54

    De esta manera dado un valor inicial para la raz i, la ecuacin anterior

    puede usarse para obtener una nueva aproximacin i+1, expresada por la frmula

    iterativa:

    i+1 = ( i) (4.1)

    El error aproximado se calcula usando el error normalizado:

    (4.2)

    Ejemplo 1.-Use el mtodo del punto fijo para obtener la raz de

    ( ) = .

    i+1=

    Tabla 3. Valores ejemplo 1 mtodo del punto fijo

  • 7/22/2019 PFC JuanLlamas

    59/127

    55

    Convergencia: El error relativo porcentual verdadero [Negron, n.d] en cada

    iteracin del ejemplo anterior, es proporcional (por un factor de 0.5 a 0.6) al error de

    la iteracin anterior. Esta propiedad se conoce como convergencia lineal.

    Un mtodo grfico alternativo consiste en separar la ecuacin en dos partes,

    de esta manera 1( ) = 2( ).

    Entonces las dos ecuaciones y1= 1 ( ) e y2= 2 ( ) se dibujan por separado.

    As, los valores de correspondientes a las intersecciones de estas dos funciones

    representan las races de 0.

  • 7/22/2019 PFC JuanLlamas

    60/127

    56

    Figura 14. Ejemplo grfico alternativo mtodo del punto fijo

    4.3.OBJETIVO DOCENTE

    El objetivo docente que se pretende con el laboratorio virtual del mtodo del

    punto fijo es mltiple. Por un lado dar a conocer el mtodo con todo lujo de detalles,

    explicndolo de forma clara y concisa y elaborando ejemplos que asienten dichos

    conocimientos. Por otro lado poder compararlo con otros mtodos de bsqueda de

    races para que cuando un alumno deba enfrentarse a un problema pueda saber

    elegir cul es el mtodo ms apropiado en cada caso.

    El mtodo de punto fijo o de aproximaciones sucesivas es, junto con el de

    biseccin, uno de los primeros mtodos que se utilizaron para resolver ecuaciones

    algebraicas y trascendentes. No obstante en la actualidad existen otros mtodos ms

    eficientes, el de punto fijo se considera el ms simple en sus principios y en l se

  • 7/22/2019 PFC JuanLlamas

    61/127

    57

    pueden apreciar claramente todas las caractersticas de un mtodo de

    aproximaciones sucesivas.

    4.4.FUNCIONALIDAD DEL LABORATORIO VIRTUAL

    Grficamente podemos visualizar el laboratorio virtual en laFigura 15:

    Figura 15. Laboratorio virtual mtodo del punto fijo

    En la parte superior el alumno dispondr de dos campos de texto para

    introducir el valor de las funciones ( ) y ( ). Adems existen tres campos en los

    que se debe introducir el valor de 0, la tolerancia que se desee y el nmero de

    iteraciones mximo que se le permite a la simulacin.

  • 7/22/2019 PFC JuanLlamas

    62/127

    58

    En el centro del laboratorio se dispone de un rea de texto en el que se le

    indicarn al alumno todos y cada uno de los pasos que se han realizado para obtener

    el resultado final acorde a los datos introducidos en la parte superior.

    En la parte inferior se dispone del rea en la que se mostrar el resultado

    final y dos botones de interaccin con el laboratorio, uno para calcular y otro para

    resetear y borrar la pantalla.

    Una vez el alumno introduce los valores de las funciones, el valor inicial de

    0, la tolerancia y el nmero de iteraciones y pulsa el botn Calcular el sistema

    genera una serie de pasos en los que le indica cmo se han realizado los clculos que

    le han llevado a la solucin. A continuacin podr observar en la Figura 16 un

    ejemplo de cmo muestra paso por paso cmo se han realizado los clculos para los

    datos introducidos.

    Figura 16. Pasos de clculos mtodo del punto fijo

  • 7/22/2019 PFC JuanLlamas

    63/127

    59

    Podemos observar que en un primer lugar informa cmo se debe definir el

    margen de error en el mtodo del punto fijo, tolerancia + 1. A continuacin indica

    que se genera un contador inicializado a 0 que es el que va a guiarnos por el nmero

    de la iteracin por la que vamos pasando.

    El alumno, as como el cdigo Java en el que est implementado el

    laboratorio, debe realizar los siguientes clculos mientras el error sea menor que la

    tolerancia introducida mientras nos encontremos por debajo de las iteraciones

    tambin indicadas por el alumno. As pues, se deben ir realizando los siguientes

    clculos:

    Paso 1: Se evala la funcin ( ) para la 0inicial.

    Paso 2: Con el valor obtenido anteriormente evaluamos en la funcin

    f( ).

    Paso 3: Calculamos de nuevo el error = | 1 0/ 1|

    Paso 4: Asignamos a 0 el valor de 1 y continuamos volvemos al

    paso 1.

    4.5.DESARROLLO DEL LABORATORIO VIRTUAL

    De nuevo nos encontramos con un mtodo que ha sido implementado

    mediante la herramienta EJS. El desarrollo, al igual que los mtodos anteriores, se

    ha desarrollado en Java. Tambin, al igual que los dos mtodos anteriores se dispone

    de un panel principalplottingFramedividido en tres paneles. En la parte superior un

    campo de texto para introducir la funcin a evaluar. Como el mtodo del punto fijo

    requiere de dos funciones se ha creado otro campo de texto para introducir el valor

    la funcin ( ).

  • 7/22/2019 PFC JuanLlamas

    64/127

    60

    En la parte central se ha colocado un campo de tipo rea de texto conectado a

    la variable Java pasos. Dicho campo de texto se cargar con el detalle de los pasos

    realizados una vez se hapulsado el botn calcular.

    A continuacin mostramos el ncleo principal del cdigo que implementa

    dicho laboratorio y que se lanza cuando el alumno pulsa el botn calcular.

    public voidintegral (){doubley = _view.fx.evaluate(x0);doubleerror = tolerancia + 1;intcontador = 0;doublex1 = 0;

    while(error>tolerancia &&y!=0 &&contador < numIteraciones){x1 = _view.gx.evaluate(x0);y = _view.fx.evaluate(x1);

    error = Math.abs ((x1 - x0)/x1);x0 = x1;contador++;

    }pasos = "Definimos inicialmente el error comotolerancia + 1.\n"+"Definimos un contador inicializado a 0.\n\n"+"Mientras el (error > tolerancia) y (f(x) 0) y(contador < nmero iteraciones)\n"+

    "Evaluamos:\n"+"x1 = g(x0) e y = f(x1). \n"+"error = |(x1 - x0)/x1|.\n"+"x0 = x1.\n\n"+"Una vez no se satisface una de las 3 condicionesanteriores podemos ver si hemos encontrado lasolucin.\n"+ "Cmo? pues simplemente viendo elvalor de Y, si ste es igual a 0 hemos encontrado laraiz,\n"+ "Si no es as y el (error

  • 7/22/2019 PFC JuanLlamas

    65/127

    61

    }_view.pasos.setText(pasos);

    }

    Como se puede observar en el cdigo Java anterior el bucle se ejecuta hasta

    que o bien termina el nmero de iteraciones de entrada, o bien la variable que

    determina que se ha llegado a la raz es 0 o que el error es mayor que la

    tolerancia de error que se le permite al problema. Mientras tanto en cada vuelta del

    bucle se evala para 0y para 1 (que ser el valor de la variable en

    cada iteracin), se calcula el error y se iguala el nuevo valor de 0= 1.

    Finalmente una vez hayamos salido del bucle se genera un texto explicativo

    con todo detalle sobre el proceso que se ha desarrollado tal y como muestra la

    Figura 16.

    Por ltimo cabe resaltar que el laboratorio virtual tambin dispone de un

    botn que una vez pulsado invoca al mtodo reset() que resetea el laboratorio virtual

    a los valores iniciales para que el alumno pueda volver a realizar la simulacin o

    introducir datos de un nuevo problema. Tal y como se aprecia en el mtodo Java, se

    introducen los valores por defecto de la tolerancia, el nmero de iteraciones, el valor

    de 0y el valor de las funciones .

    public voidreset(){

    tolerancia = 0.01d;numIteraciones = 100;x0 = -0.5d;fx = "x^2 - 4*x - 3";gx = "3 / (x-4)";pasos = "";_view.pasos.setText(pasos);resultado = 0;

    }

  • 7/22/2019 PFC JuanLlamas

    66/127

    62

    Otra de las claves que nos muestra el laboratorio virtual es que indica al

    alumno que cuando se llega a la solucin pueden darse tres posibilidades.

    Por un lado puede darse que encontremos el valor exacto de la raz, de esta

    forma no habremos consumido todas la iteraciones y no habremos obtenido un error

    menor que la tolerancia del ejercicio. En este caso el valor de la variable ser 0

    y habremos encontrado el valor exacto de la raz.

    Puede darse el caso de que tengamos que salir del bucle por fuerza mayor, es

    decir puede darse el caso que el nmero de iteraciones termine antes de encontrar la

    raz o que el error sea demasiado como para que la tolerancia introducida lo soporte,

    en este caso habremos encontrado un valor aproximado de la raz.

    Y por ltimo puede darse el caso de que la funcin introducida no tenga raz,

    en este caso por muchas iteraciones que le demos y por mucho margen de error que

    permitamos (dentro de unos lmites coherentes) no encontraremos una solucin y

    por tanto diremos que no existe solucin.

    4.6.ACTIVIDADES PEDAGGICAS

    El laboratorio virtual del mtodo del punto fijo propone al alumno una serie

    de actividades que ayuden a comprender el funcionamiento del mismo. En concreto

    le propone dos buenos ejemplos de prctica con este entorno interactivo.

    Inicialmente, al igual que el resto de los laboratorios de los dems mtodos,

    se carga con un buen ejemplo para que el alumno pueda realizar la simulacin

    directamente. Lo que se le propone como prctica al alumno es que sobre dicho

    ejemplo inicial modifique el nmero de iteraciones a dos. A continuacin se le

    indica que pulse el botn calcular y que observe que con tan limitadas iteraciones el

  • 7/22/2019 PFC JuanLlamas

    67/127

    63

    sistema le informa que no encuentra la solucin. Obviamente esto le indica al

    alumno que no puede crear pocas iteraciones adems de que el error es mucho

    mayor que la tolerancia permitida. En cambio si somos ms persuasivos y ponemos

    para esas dos iteraciones un valor de tolerancia igual a 50 el sistema permite un

    error muy elevado y devolver un valor aproximado de la raz buscada.

    A continuacin se le plantea al alumno que modifique los datos de entrada

    introduciendo una nueva funcin, . Despejando se obtiene que el

    valor de la funcin es el siguiente ( ) = . Inicialmente se le indica al

    alumno que introduzca un valor de 0= 0,05 y una baja tolerancia de 0,01, as como

    un pequeo nmero de iteraciones igual a 5. Al pulsar el botn calcular el alumno

    podr observar que, para estos datos de entrada, el sistema le devuelve al valor

    exacto de la raz buscada con lo que ha demostrado al alumno que es posible que el

    sistema encuentre la raz exacta y no aproximada como ocurra en la actividad

    anterior.

    4.7.CONCLUSIONES

    Al igual que los mtodos numricos explicados anteriormente se considera

    importante incluir el mtodo del punto fijo como mtodo bsico para comprender la

    bsqueda de races de una ecuacin. Las conclusiones que se pretenden extraer es

    que pueda ser comparado con otros mtodos que tambin se estudian en el

    laboratorio virtual y que obtienen el mismo fin. Es el caso del mtodo de la

    biseccin. El mtodo de la biseccin necesita muchas ms iteraciones que el mtodo

    del punto fijo ya que en cada iteracin solamente divide el intervalo a la mitad.

    Sirve adems al alumno para compararlo con el otro mtodo estudiado en el

    laboratorio virtual de bsqueda de races, el mtodo de Newton. Podr observar que

  • 7/22/2019 PFC JuanLlamas

    68/127

    64

    el mtodo de Newton converge mucho ms rpido que el mtodo del punto fijo. Sin

    embargo el mtodo de Newton requiere la evaluacin de ambos y su derivada en

    cada paso, mientras que el mtodo del punto fijo slo requiere la evaluacin de y

    . Por lo tanto, el mtodo del punto fijo puede ser ms rpido en la prctica.

  • 7/22/2019 PFC JuanLlamas

    69/127

    65

    5

    MTODO DE GAUSS

    5.1.INTRODUCCIN

    Eliminacin de Gauss-Jordan, llamado as debido a Carl Friedrich Gauss y

    Wilhelm Jordan.

    El mtodo de Gauss, conocido tambin como de triangulacin o de cascada,

    nos permite resolver sistemas de ecuaciones lineales con cualquier nmero de

    ecuaciones y de incgnitas. La idea es muy simple, por ejemplo, para el caso de un

    sistema de tres ecuaciones con tres incgnitas se trata de obtener un sistema

    equivalente cuya primera ecuacin tenga tres incgnitas, la segunda dos y la tercera

    una. Se obtiene as un sistema triangular o en cascada. Es importante aadir que el

    sistema resultante es dependiente de la forma en que apliquemos estos criterios,

    [wikilibros, 2012], es decir, las ecuaciones obtenidas no son siempre las mismas,

    pero si los hemos aplicado correctamente, el sistema es equivalente al dado.

    5.2.DESCRIPCIN DEL MTODO

    Es un algoritmo del lgebra lineal para determinar las soluciones de un

    sistema de ecuaciones lineales, encontrar matrices e inversas. Un sistema de

    ecuaciones se resuelve por el mtodo de Gauss [Becerril, 2002]cuando se obtienen

    sus soluciones mediante la reduccin del sistema dado a otro equivalente en el que

    cada ecuacintiene una incgnita menos que la anterior. El mtodo de Gauss

  • 7/22/2019 PFC JuanLlamas

    70/127

    66

    transforma la matriz de coeficientes en una matriz triangular superior.

    Posteriormente contina el proceso de transformacin hasta obtener una matriz

    diagonal unitaria.

    Algoritmo

    Ir a la columna no cero extrema izquierda.

    Si el primer rengln tiene un cero en esta columna, intercambiarlo con

    otro que no lo tenga.

    Luego, obtener ceros debajo de este elemento delantero, sumando

    mltiplos adecuados del rengln superior a los renglones debajo de l.

    Cubrir el rengln superior y repetir el proceso anterior con la

    submatrizrestante. Repetir con el resto de los renglones (en este punto lamatriz se encuentra en la forma de escaln).

    Comenzando con el ltimo rengln no cero, avanzar hacia arriba: para

    cada rengln obtener un 1 delantero e introducir ceros arriba de ste

    sumando mltiplos correspondientes a los renglones correspondientes.

    Como hemos visto, el mtodo de Gauss transforma la matriz de coeficientes

    en una matriz triangular superior. Adems contina el proceso de transformacin

    hasta obtener una matriz diagonal unitaria (aij=0 para cualquieri j). Veamos elprocedimiento con detalle y mediante un ejemplo.

    Ilustraremos el mtodo de Gauss aplicando el procedimiento a un sistema de

    cuatro ecuaciones con cuatro incgnitas:

  • 7/22/2019 PFC JuanLlamas

    71/127

    67

    (5.1)

    En el primer paso, multiplicamos la primera ecuacin por y la

    restamos a la segunda, despus multiplicamos la primera ecuacin por y la

    restamos a la tercera y finalmente multiplicamos la primera ecuacin por y

    la restamos a la cuarta. Los nmeros 2, y -1 son los multiplicadores del primer

    paso del proceso de eliminacin. El nmero 6 es el elemento pivote de este primer

    paso y la primera fila, que no sufre modificacin alguna, se denomina fila pivote.

    El sistema en estos momentos tiene el siguiente aspecto:

    (5.2)

    En el siguiente paso del proceso, la segunda fila se emplea como fila pivote

    y -4 como elemento pivote. Aplicamos del nuevo el proceso: multiplicamos la

    segunda fila por y la restamos de la tercera y despus multiplicamos la

    segunda fila por y la restamos a la cuarta. Los multiplicadores son en esta

    ocasin 3 y y el sistema de ecuaciones se reduce a:

  • 7/22/2019 PFC JuanLlamas

    72/127

    68

    (5.3)

    A continuacin multiplicamos la tercera ecuacin por y la restamos a

    la cuarta. El sistema que se obtiene es el siguiente:

    (5.4)

    Tomaremos como pivote el elementoa44=-3; multiplicamos la cuarta

    ecuacin por y la restamos a la primera:

    (5.5)

    Realizamos la misma operacin con la segunda y tercera fila, obteniendo:

    (5.6)

  • 7/22/2019 PFC JuanLlamas

    73/127

    69

    Ahora tomamos como pivote el elemento a33= 2, multiplicamos la tercera

    ecuacin por = 1 y la restamos a la primera:

    (5.7)

    Repetimos la operacin con la segunda fila:

    (5.8)

    Finalmente, tomamos como pivote a22=-4, multiplicamos la segunda

    ecuacin por y la sumamos a la primera:

    (5.9)

    El sistema de ecuaciones anterior es, como hemos visto,fcil de resolver.

    (5.10)

  • 7/22/2019 PFC JuanLlamas

    74/127

    70

    5.3.OBJETIVO DOCENTE

    El objetivo docente que se pretende con el laboratorio virtual del mtodo del

    Gauss es que el alumno aprenda a resolver sistemas de ecuaciones mediante unmtodo sencillo y rpido de poner en prctica.

    El mtodo de Gauss se utiliza para resolver sistemas de ecuaciones lineales,

    los cuales pueden representar infinidad de problemas de mbito profesional o

    cotidiano. Existe una infinidad de problemas que se pueden representar de manera

    matemtica e, incluso, en forma de sistemas de ecuaciones. Por tanto, utilizando el

    mtodo de Gauss se pueden llegar a resolver esta clase de problemas. Cualquier

    problema en el que exista una relacin de dependencia entre un nmero finito de

    elementos se puede representar como un sistema de ecuaciones. Ejemplos de esto a

    nivel cientfico y tcnico son la programacin lineal, el anlisis estructural o el

    procesamiento digital de seales.

    Los sistemas de ecuaciones son muy tiles en geometra. Un conjunto de

    ecuaciones de rectas y planos puede resolverse mediante el mtodo de Gauss para

    calcular sus posiciones relativas en el plano o el espacio. Y existen muchos casos en

    la vida real en los que es necesario el uso de clculos geomtricos, desde la

    arquitectura al dibujo.

    5.4.FUNCIONALIDAD DEL LABORATORIO VIRTUAL

    Grficamente podemos visualizar el laboratorio virtual en laFigura 17.

  • 7/22/2019 PFC JuanLlamas

    75/127

    71

    Figura 17. Laboratorio virtual mtodo de Gauss

    Podemos observar tres partes en el laboratorio virtual dedicado al mtodo de

    Gauss. En la parte superior se dispone de un rea en la que introducir los valores de

    las variables que van a conformar el sistema. El alumno deber introducir los

    valores correspondientes de las variables 0, 1, 2y el resultado para cada una de

    las tres ecuaciones que conformarn el sistema. Adems introducir los valores con

    signo negativo si se tratase de un valor menor que 0. Dispone adems de un botn

  • 7/22/2019 PFC JuanLlamas

    76/127

    72

    calcular que una vez pulsado, y si los valores introducidos son correctos, mostrar

    el resultado del valor que se obtiene para las variables 0, 1, 2.

    En la parte central podemos observar un rea dedicada al primer paso. El

    primer paso se le considera el ms importante para entender el mtodo, si se

    entiende este primer paso el alumno no tendr problema en continuar iterando hasta

    llegar a la solucin final.

    No obstante, en la parte inferior se especifica e indica claramente los pasos

    finales que se realizan en el sistema para que el alumno no tenga dificultad alguna

    en entender claramente el procedimiento del mtodo de Gauss.

    Inicialmente se le carga un sistema de ecuaciones de ejemplo. El alumno

    podr pulsar directamente el botn de calcular y obtener el detalle de los pasos

    realizados.

    El rea central indicar, por ejemplo, los mensajes que se observan en la

    Figura 18.

    Figura 18. Pasos de clculos mtodo de Gauss

  • 7/22/2019 PFC JuanLlamas

    77/127

    73

    Mostrar al alumno cmo se construye inicialmente la matriz del sistema de

    ecuaciones, es decir, tomamos los valores de las variables de cada ecuacin as

    como el valor al que estn igualados para construir la matriz asociada. A

    continuacin indica la instruccin clave de este mtodo, dividir el valor x0 de la

    ecuacin 2 y 3 entre el valor 0de la ecuacin 1. El resultado lo multiplica por el

    rengln 1 y resta el rengln obtenido al rengln 2 y 3 respectivamente. De esta

    forma iguala a 0 el 0del rengln 2 y del rengln 3.

    En el rea de mensajes (Figura 18) se muestra tambin que hay que repetir el

    proceso de forma similar con 1.

    Finalmente en la parte inferior nos indica que podemos observar que hay una

    ecuacin en la que el valor de 0y 1es igual a 0 por lo tanto despejando se puede

    obtener el valor exacto de 2. Una vez obtenido dicho valor se pasa a la siguiente

    ecuacin y despejando se obtiene el valor de 1. Por ltimo con los valores de 0y

    1 y despejando en la tercera ecuacin se obtiene el valor exacto de 2. Todo este

    proceso podemos observarlo en laFigura 19.

    Figura 19. Clculos finales mtodo de Gauss

    Por ltimo cabe resaltar la zona en la que se muestra el resultado para cada

    una de las variables con su signo correspondiente,Figura 20.

  • 7/22/2019 PFC JuanLlamas

    78/127

    74

    Figura 20. Obtencin resultado mtodo de Gauss

    El mtodo de Gauss no siempre encuentra solucin al sistema o simplemente

    encuentra varias soluciones. De esta forma tambin se le indica esta posibilidad para

    que la tenga muy en cuenta en el futuro cuando l solo se enfrente a la resolucin de

    sistemas mediante el mtodo aqu indicado. Se indica claramente y mediante

    ejemplos que nos podemos encontrar los siguientes tipos de sistemas a la hora de

    resolverlos por el mtodo de Gauss:

    1. Sistema compatible determinado (S.C.D.): una nica solucin.2. Sistema compatible indeterminado (S.C.I.): infinitas soluciones.3. Sistema incompatible (S.I.): no tiene solucin.

    5.5.DESARROLLO DEL LABORATORIO VIRTUAL

    El desarrollo del mtodo de Gauss, al igual que el resto de mtodos ya

    comentados, se ha desarrollado con la herramienta EJS bajo la tecnologa Java.

    La parte grfica del mtodo de Gauss se basa en un panel principal

    plottingFrame subdividido en dos paneles. En el panel superior se encuentran los

    campos de texto que almacenarn los valores de cada una de las variables de cada

    una de las ecuaciones del sistema ecuacional. El alumno introducir los valores de

    las mismas y una vez pulsa intro EJS almacenar el valor introducido en el campo

    en la variable Java correspondiente. Se han creado por tanto las siguientes variables

    Java para cada una de estas variables.

  • 7/22/2019 PFC JuanLlamas

    79/127

  • 7/22/2019 PFC JuanLlamas

    80/127

    76

    double[]x=new double[n];if(resolver(x,a,n)==0)

    noSolucion = "";for(int i=0; i < n;i++){

    System.out.println("x("+i+")="+x[i]);if(i == 0)valorX12 = x[i];

    else if(i ==1)valorX22 = x[i];

    elsevalorX32 = x[i];}

    }

    El ncleo importante se encuentra en el mtodo resolver(). Este mtodo toma

    como datos de entrada la matriz con los valores del sistema ecuacional, el nmero

    de ecuaciones y el nmero de incognitas que, como ya se ha comentado, para

    simplificar se va a trabajar siempre con sistemas de tres ecuaciones con tres

    incognitas. Inicialmente comprueba si existe alguna ecuacin en la que todos sus

    trminos son iguales a cero, en ese caso avisa al usuario de que dicho sistema no

    tiene solucin.

    Disponemos de dos variables de tipo String primeraEcuacion y

    segundaEcuacion cuya finalidad es almacenar la informacin que se le mostrar al

    alumno en el rea de texto dedicada a las explicaciones del proceso de clculo.

    En el bucle marcado como (1) se puede apreciar que tomamos el primer

    valor 0 de la ecuacin 2 y lo dividimos entre el valor 0 de la ecuacin 1. El

    resultado obtenido lo multiplicamos por todos los trminos de la primera ecuacin, y

    por ltimo el resultado obtenido se lo restamos al rengln 2, dicho clculo se realiza

    todo en el bucle marcado como (2). En la variable de tipo String resultado

    almacenamos dichos clculos para posteriormente mostrarselo al alumno

    visualmente.

  • 7/22/2019 PFC JuanLlamas

    81/127

    77

    La variable String resultado se almacena en la variable, tambin de tipo

    String, prueba2 ya que resultado serborrado en la siguiente iteracin.

    Se realiza el mismo procedimiento para la tercera ecuacin y el detalle del

    resultado se almacena en la variable prueba4.

    Con los valores obtenidos anteriormente se repite de nuevo el mismo proceso

    para la tercera ecuacin, esta vez almacenamos los detalles de salida en las variables

    de tipo String prueba y prueba3 para mostrarselos posteriormente al alumno.

    Todos los strings, con el detalle de los clculos obtenidos anteriormente, se

    formatean y concatenan convenientemente para mostrarselos de forma legible y

    entendible al alumno para que ste pueda comprender facilmente los