PFC JuanLlamas
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