PROYECTOS ATRACTIVOS EN ESO

con GeoGebra

 

geogebra.es/rafa16-12-2018/

 

Enlace directo

Descarga archivo comprimido

Libro de GeoGebra

 

Resumen

Uno de los retos a los que se puede enfrentar un profesor de matemáticas deseoso de que sus alumnos aprendan a realizar por sí mismos construcciones con GeoGebra es el de decidir qué tipo de proyectos puede proponer, así como cuáles son las claves para su desarrollo.

¿Qué clase de proyectos "geogebraicos" pueden resultar atractivos a alumnos de ESO? ¿Qué información previa debemos facilitarles para que puedan abordarlos?

Presentaré algunas ideas que pueden clasificarse en tres grupos: proyectos de Diseños, proyectos de Modelos y proyectos de Robots.

En todas ellas resultará clave la noción de "movimiento", tanto desde el punto de vista matemático (vectores, movimientos del plano y ecuaciones paramétricas) como de uso de GeoGebra (deslizadores, rastros, animaciones automáticas y guiones de GeoGebra).

Además, se ofrecerá a los profesores información técnica no documentada sobre parametrizaciones de los lugares geométricos empleados por GeoGebra.
 

 

Información

 

Información a los alumnos: Contenidos

Naturalmente, la información suministrada a los alumnos variará según sea el proyecto a realizar. Sin embargo, son de especial interés los siguientes contenidos de GeoGebra:

• Puntos, vectores y curvas paramétricas.
• Deslizadores y animaciones.
• Listas y secuencias.
• Guiones básicos.

Nota: Los alumnos recibirán ayuda técnica siempre que lo necesiten, pero deberán explicar al resto de la clase y al profesor cómo elaboraron el proyecto, en todas sus fases.

 

Información a los alumnos: Procedimientos pautados

procedimientos pautados.ggb

Para exponer algunos procedimientos usados en GeoGebra, resulta muy útil disponer de una plantilla ya preparada (como la que se muestra aquí), en la que lo único a variar en cada caso sea la lista de textos con las pautas.  Los objetos usados por la propia plantilla son auxiliares, para ocultarlos de la Vista Algebraica.

Nota: Para realizar un salto de línea en un texto de la lista, usar \\n.

 

Animaciones automáticas: Velocidad de los puntos animados en lugares geométricos

velocidad.ggb

Si colocamos un punto libre en un recorrido (recta, polígono, función, cónica…) y lo animamos, recorrerá el lugar geométrico (o lista de lugares) siempre en el mismo tiempo, independientemente de la longitud que tenga el lugar.

Esto es así porque cada lugar geométrico (o lista de lugares) está regido por un parámetro que varía entre 0 y 1. Como el parámetro siempre varía a la misma velocidad (a no ser que la cambiemos en las propiedades del punto animado) el punto recorrerá cualquier lugar en el mismo tiempo.

Dicho de otro modo, todos los puntos animados tienen por defecto la misma velocidad “relativa”.

El tiempo que tarda en realizarse un recorrido solo depende de la velocidad de procesamiento del ordenador o dispositivo que empleemos. Por ejemplo, el ordenador en el que escribo esto tarda casi 15 segundos en hacer variar el parámetro de 0 a 1.

Además, salvo en segmentos y circunferencias, su velocidad no será uniforme.

En este documento (PDF, DOC) se puede consultar información técnica detallada para los profesores sobre las parametrizaciones que rigen los objetos de GeoGebra.

 

Animaciones automáticas: Conseguir la misma velocidad absoluta

radián.ggb

Como consecuencia de lo anterior, si deseamos que la animación de dos puntos en distintos recorridos corra a la misma velocidad “absoluta”, deberemos calcular previamente la longitud de cada recorrido y dividir por ella la velocidad del punto animado.

En el caso de que un recorrido tenga longitud infinita (como una recta o una parábola), deberemos colocar el punto animado en una parte de él (como un segmento o un arco) de longitud finita.

 

Vectores y sistema de referencia relativo

funciones vectoriales.ggb

Si redefinimos vectorialmente una función f(x) como O + t i + f(t) j, donde {O, i, j} constituyen el sistema referencial, basta intercambiar de posición los vectores i, j para obtener la gráfica de la función inversa (cuyo dominio tal vez se deba restringir, según los casos, para que sea efectivamente una función).

elipse vectorial.ggb

También resulta mucho más sencilla la manipulación de objetos geométricos como las elipses si las definimos vectorialmente sobre un sistema referencial relativo. De hecho, es lo que hace el propio programa GeoGebra (ver PDF anterior sobre Animaciones automáticas).

 

 

Proyectos: DISEÑOS

 

Reproducción de diseños estáticos ya creados

corea del sur.ggb

Proyecto 2D: recrear una colección de diseños, como banderas, isotipos, logotipos, señales, emoticonos, ideogramas, pictogramas, rosetones, etc.

 

 

 

Diseños dinámicos matemáticos

dandelin.ggb

Proyecto 3D: recrear escenarios matemáticos 3D.

Podemos aprovechar la estética presente en muchas construcciones matemáticas como objetivo de diseño. En este ejemplo aparecen las esferas de Dandelin.

 

elementos I_XLVII.ggb

Proyecto 2D: recrear escenarios matemáticos 2D.

Este otro ejemplo es una versión dinámica de la proposición 47 del libro I de los Elementos de Euclides (teorema de Pitágoras) usando los colores del libro de Oliver Byrne , (realizada en 2011 para los organizadores de las XV JAEM en Gijón, en agradecimiento por el regalo de este curioso libro).

 

Gráficos vectoriales

bocetos paramétricos.ggb

Proyecto 2D: crear una fuente personalizada de caracteres escalables.

Muchas curvas no se ajustan a figuras geométricas elementales, sino que son resultado de una evolución larga y compleja.

Aunque teóricamente una poligonal puede simular cualquier curva sin más que aumentar el número de vértices, esto requiere mucho trabajo, por lo que en la práctica solo se usa cuando la figura que deseamos vectorizar consta de segmentos rectos.

Nota: Se pueden crear rápidamente varios puntos libres A1, A2... usando la Hoja de Cálculo de GeoGebra. Después, basta distribuir los puntos siguiendo el recorrido (o recorridos) del boceto.

Para las curvas, se obtienen mejores resultados empleando splines. En general, un spline es una curva suave (es decir, diferenciable) definida a trozos por polinomios. En GeoGebra, un spline es concretamente una curva paramétrica c(t) = (f(t), g(t)), donde f(t) y g(t) son polinomios (por defecto, de tercer grado), con t variando entre 0 y 1. El resultado es parecido al de una curva de Bézier.

Nota: Los trozos en que t se distribuye dentro del intervalo [0,1] vienen determinados por la distancia euclídea entre los sucesivos puntos de la lista.

Como vemos, para vectorizar un gráfico usando poligonales o splines, es necesario dividir el gráfico en listas de puntos pertenecientes a recorridos continuos (caminos hamiltonianos).

 

 

Proyectos: MODELOS

 

Realidad aumentada

Podemos proponer la construcción de modelos geométricos basados en la realidad física. Una posibilidad muy atractiva es visualizar estos modelos con la aplicación para dispositivos móviles “Realidad Aumentada de GeoGebra” (GeoGebra AR ). Aquí prescindiremos de ella porque actualmente solo está disponible para algunos dispositivos de Apple (iPhone 6s o superior y para iPad Pro o iPad 6ª generación).

 

 

 

Modelizando lo cotidiano: Camino de mesa

camino_de_mesa.ggb

Proyecto 2D: modelizar situaciones cotidianas que supongan un cambio (un antes y un después).

Nota: este tipo de proyecto es difícil, pues a los alumnos no se les facilita un objetivo concreto y han de realizar toda la construcción desde cero.

Los objetos fabricados por los humanos desde hace milenios se basan en una geometría relativamente sencilla (en comparación con la geometría de la naturaleza). Esto da pie a proponer a los alumnos a que intenten modelizar alguna de las innumerables situaciones que implican a estos objetos.

En este ejemplo (observado por el autor en el mundo real), una joven pareja se sienta a cenar en un restaurante. La mesa cuadrada que les asignan tiene un mantel con forma de camino de mesa colocado de modo que la pareja quedará sentada en lados opuestos de la mesa. “¡Demasiado lejos!”, deciden ambos. Así que, se recolocan en lados contiguos de la mesa. Cuando llega el camarero, recoloca el mantel para adaptarlo a la nueva situación.

El proyecto consiste en modelizar con GeoGebra esta situación, tal como se observa en la construcción adjunta. Para ello basta averiguar las nuevas coordenadas de una de las esquinas del mantel (ya que el ángulo será de 45°). Esto requerirá diversos esquemas y los cálculos derivados del uso sistemático del teorema de Pitágoras.

 

Modelizando la realidad física: Espectro solar

luz_conversión_onda_rgb.ggb

Proyecto 3D: modelizar la dispersión de la luz en un prisma.

Nota: en los cursos inferiores se adaptará a la sección del prisma (proyecto 2D).

Se propone modelizar el famoso experimento de Newton sobre la dispersión de la luz: cuando un haz de luz blanca procedente del sol atraviesa un prisma de cristal, las distintas radiaciones monocromáticas son tanto más desviadas por la refracción cuanto menor es su longitud de onda, lo que origina su descomposición en los colores del arco iris.

Este modelo incluye la conversión de la longitud de onda de la luz (visible) al código de color RGB (variables rojo, verde, azul) utilizado por GeoGebra. Obsérvese que hay colores RGB, como el rosa o el marrón, que no están presentes en el arco iris porque no son ondas puras (sino combinaciones de otras).

También incluye una función (ref) que nos facilita el índice de refracción (aire-cristal) dependiendo de la longitud de onda λ.

La imagen de la izquierda nos ofrece una vista aumentada del espectro, en donde son visibles las líneas de Fraunhofer (bandas oscuras causadas por la absorción de algunas longitudes de onda por parte de elementos químicos de las capas externas del Sol y de las moléculas presentes en el aire, lo que nos permite averiguar la composición del Sol y otras estrellas).

Nota: Más adelante, en la sección Robots, se puede ver otro ejemplo de modelización de la realidad física (órbitas elípticas).

 

Modelizando la naturaleza: Conchas

conchas_(reducido).ggb

Proyecto 3D: modelizar los distintos tipos de conchas.

 

 

Nota: a pesar de la aparente dificultad, este proyecto resulta sencillo debido a que se reducen las fórmulas a una lista de 7 parámetros dados. La parametrización parte del artículo Modells for mollusc shell shape de M.B. Cortie (1989).

Las superficies se pueden parametrizar y también se pueden crear familias de superficies cuyas formas varían al variar los parámetros que las definen.

Un caso espectacular es el de las conchas, que sigue un patrón de crecimiento definido por la autosemejanza. Los moluscos que crean estos caparazones deben ir ampliándolos según van creciendo. En muchos casos, esto conlleva sellar el habitáculo anterior cuando la nueva cámara ya esté lista para residir en ella. Como todas las cámaras varían de tamaño pero conservan la forma, se produce una estructura espiral con patrón autosemejante que se puede modelizar fácilmente.

La sintaxis del comando Superficie es:

Superficie(x(u,v), y(u,v), z(u,v), u, u1, u2, v, v1, v2)

En este caso particular, hemos tomado:

x(u,v) = r e^(f u) (d + a cos(v)) cos(c u)
y(u,v) = r e^(f u) (d + a cos(v)) sen(c u)
z(u,v) = r e^(f u) (-1.4e + b sen(v)) + h

donde  r, f, a, b, c, d, e y h son los parámetros propios de cada concha.

En el siguiente enlace podemos ver una versión más general, con 15 parámetros en vez de 7:

conchas.ggb

 

 

Deconstruyendo un modelo: Tierra y Sol

tierra y sol.ggb

Proyecto 3D: deconstruir una compleja construcción ya realizada.

En vez de realizar una construcción, el objetivo del proyecto puede ser sacarle las tripas a escenarios complejos, analizando cada parte y explicando su funcionamiento.

Alternativamente, puede plantearse como objetivo la reconstrucción (simplificada) de una parte del escenario.

 

 

Proyectos: ROBOTS

 

Existe una gran diferencia entre condición y cálculo. Por ejemplo, la condición para que un número real sea raíz de una función es que el valor numérico de la función, para ese número, sea cero. Calcular esa raíz es otro cantar.

Habitualmente los cálculos exigen procedimientos cuyo aprendizaje es largo y tedioso. Pero que no sepamos realizar esos cálculos no es impedimento para apropiarnos de la idea matemática que abordan. Estas ideas pueden parecer mucho más atractivas si sacrificamos algo de cálculo... o lo simplemente lo posponemos a un nivel más avanzado.

Equilibrios dinámicos: Puntos cargados

círculo con puntos.ggb

Proyecto 2D: crear sistemas dinámicos que se estabilicen por sí mismos.

Pongamos dos puntos en el interior de un círculo. Imaginemos que tanto los puntos como el borde del círculo están cargados eléctricamente, con la misma carga. Los dos puntos se repelen entre sí, y son repelidos por la circunferencia, con intensidad inversamente proporcional al cuadrado de la distancia. Inmediatamente, buscarán el equilibrio, que se alcanzará cuando los dos puntos se dispongan simétricamente respecto al centro del círculo y a una distancia entre sí igual a un tercio del diámetro.

círculo con 10 puntos.ggb

Si añadimos más puntos, el equilibrio dará lugar a polígonos regulares, como cabría esperar. Aquí vemos cómo 10 puntos se equilibran formando el decágono regular (dependiendo de las condiciones iniciales, podría formarse también un eneágono con su centro).

 

cuadrado con 5 puntos.ggb

No siempre resulta tan intuitivo predecir cuál serán las posiciones estables. En este caso, cinco puntos en un cuadrado encuentran, además de la distribución que cabría esperar, otras cuatro posibles distribuciones, simétricas entre sí.

robot sensible.ggb

Incluso pueden observarse situaciones en las que una levísima diferencia en las condiciones iniciales diferencie el orden del caos. En este ejemplo, los puntos se repelen entre ellos igual que antes, pero ahora además son atraídos, con doble intensidad, al origen de coordenadas.

 

Robot entre enemigos

robot_entre_enemigos.ggb

Proyecto 2D: crear sistemas dinámicos jugando con la atracción y la repulsión.

Ahora el robot (punto rojo P) conoce la posición final que desea alcanzar (punto verde O) pero debe esquivar una serie de enemigos (puntos azules).

Una vez colocados los puntos, llamamos atractor al vector unitario de P a O.

Como antes, creamos los vectores unitarios que van desde cada punto azul hasta P y los dividimos por el cuadrado de la distancia que los separa. Estos vectores serán las repulsiones que alejarán a P cuando esté demasiado cerca de ellos. Ahora sumamos todos estos vectores para obtener el vector avanza.

  • Creamos un deslizador t que va a servirnos para animar el punto P (al que hemos activado el rastro), de forma que varíe con bastante frecuencia, por ejemplo, entre 0 y 1 con paso 0.01.

  • Finalmente, creamos la constante inc = 0.2, que nos servirá para establecer el avance en cada paso.

Ahora escribimos el programa de nuestro robot. Cada vez que se actualice el valor de t, se ejecutará el siguiente guión con una única instrucción:

Valor(P, P + inc avanza)

Ya solo nos queda animar el deslizador t.

Nota: Si queremos volver a repetir el experimento, basta con borrar el rastro (Ctrl-F) y recolocar los puntos a nuestro antojo.

 

Modelizando la realidad física: Órbitas elípticas

órbitas elípticas (reducido).ggb

Proyecto 2D: modelizar el movimiento orbital terrestre.

Colocamos el punto S (Sol) en el centro de coordenadas y un punto T (Tierra) con velocidad inicial el vector v. Si d es la distancia TS y k es una constante, tenemos el vector de fuerza gravitatoria:

g = k / d² VectorUnitario(Vector(T, S))

Ahora solo hay que introducir un deslizador auxiliar para que, cada vez que se actualice, ejecute el simplísimo guión:

Valor(T, T + 0.01 v)
Valor(v, v + 0.01 g)

¡Y ya tenemos el movimiento elíptico! (Obsérvese que no hemos empleado ninguna ecuación ni lugar geométrico.)

En el siguiente enlace podemos ver una versión más amplia, con la velocidad de escape y la conservación de la energía mecánica:

órbitas elípticas.ggb

 

Nota: Estas dos construcciones fueron realizadas gracias a la ayuda de mi compañero de departamento Julio Valbuena Herrero, quien adaptó la idea expuesta por Richard Feynman en su famoso lilbro The Feynman Lectures on Physics (1963, volumen I , 9-7, Planetary motions).

 

Exploraciones dinámicas

Hasta ahora, el comportamiento de los robots quedaba determinado por vectores definidos a partir de los otros puntos. En este último apartado, crearemos robots que antes de emprender un movimiento husmeen qué sucede a su alrededor y, basándose en los valores obtenidos, tomen una decisión.

 

robot_recíproco_pitágoras.ggb

Proyecto 2D: crear demostraciones dinámicas automáticas.

En este ejemplo, queremos demostrar el recíproco del teorema de Pitágoras.

Partimos de un triángulo ABC y llamamos dif la expresión abs(a²+b²-c²). Nuestro objetivo es que dif valga 0.

  • Creamos un deslizador t que va a servirnos para animar el vértice C (al que hemos activado el rastro), de forma que varíe con bastante frecuencia, por ejemplo, entre 0 y 1 con paso 0.01.

  • Otro deslizador inc, entre 0 y 0.1, nos servirá para establecer el avance en cada paso. En principio, el valor de inc será 0.1.

  • Finalmente, creamos dos objetos auxiliares: C0=(0,0) y dif0=0 que valdrán para mantener, respectivamente, los valores actuales de C y dif.

Ahora escribimos el programa de nuestro robot. Cada vez que se actualice el valor de t, se ejecutará el siguiente guión de instrucciones (el símbolo # sirve para añadir comentarios):

# Fijamos los valores de partida dif0 y C0:

Valor(dif0, dif)
Valor(C0, C)

# Variamos C y comparamos la dif yendo hacia el NE con dif0:

Valor(C, C + (inc, inc))
Valor(C, Si(dif<dif0, C, C0))
Valor(C0, C)

# [Repetimos estas tres instrucciones para los movimientos hacia el E, SE, S, SO, O, NO y N, es decir, (inc, 0), (inc, -inc), (0, -inc), (-inc, -inc), (-inc, 0), (-inc, inc) y (0, inc).]

# Si la diferencia no se reduce, incrementamos la precisión dividiendo inc entre 10:

Valor(inc, Si(dif==dif0, inc/10, inc))

# Cuando la diferencia sea nula, detenemos la animación (además, se mostrará el mensaje “proceso terminado”):

Si(dif==0, IniciaAnimación(false))

Ya solo nos queda animar el deslizador t.

Nota: Si queremos volver a repetir el experimento, debemos recordar devolver inc al valor 0.1.

 

robot_punto_fermat.ggb

En este otro ejemplo, queremos encontrar el punto de Fermat de un triángulo dado. Para ello, hemos sustituido el papel del vértice C del triángulo y de su alter ego C0 por un punto exterior al triángulo: F y F0.

 

Ahora, el objetivo es minimizar la expresión dif = abs(F-A) + abs(F-B) + abs(F-C).

En este caso, el mensaje de “proceso terminado” aparecerá cuando el incremento sea indistinguible de 0 (sin usar el CAS de GeoGebra, es decir, del orden de una cien millonésima).

 

robot_puntos steiner.ggb

Si generalizamos el punto de Fermat a más vértices, obtenemos el árbol de Steiner (añadiendo los puntos de Steiner que sean necesarios).

Observemos que los robots no saben dónde están los puntos A, B, C y D, basta con que sepan a qué distancia están en cada instante.

 

laberinto.ggb

Proyecto 2D: crear robots que se adapten al entorno.

En este último ejemplo, el robot no tiene ninguna información sobre la forma del laberinto. Solo detecta si hay espacio libre a su derecha (en cuyo caso gira a la derecha para pegarse a la pared derecha) o si hay un obstáculo enfrente (en cuyo caso gira a la izquierda).

 

Esta sencilla norma basta para no despegarse de su pared derecha y conseguir salir del laberinto (aunque no lo haga en el menor recorrido posible). Para ello, bastan dos instrucciones en el guión del robot:

Valor(v, Si(dPD>8, vn, Si(dPA<2, -vn, v)))
Valor(P, P + v)