UN TIRO AL AIRE: FÍSICA CON LOGO

FÍSICA CON LOGO

fisica con logoLa práctica puede o no ser perfecta, pero la física sin práctica es estéril. Las leyes de la física nos dicen cómo trabaja el universo. Para comprender verdaderamente estas leyes tenemos que verlas trabajando. Tenemos que ver por ejemplo, cómo se combinan las leyes del movimiemto y las de gravitación universal para generar las órbitas elípticas de los planetas. Sin esta confirmación, las leyes de la física son solamene las leyes de la física, y no las leyes de la naturaleza.

Las leyes básicas de la física no son especialmente difíciles de comprender.Sin embargo, su aplicación a situaciones más complejas es difícil. Para determinar las órbitas de los planetas, por ejemplo, tenemos que resolver dos ecuaciones de segundo grado acopladas, no lineales. Aunque una solución matemática a estas ecuaciones es difícil, una solución numérica es elemental. Podemos aplicar el mismo método numérico para movimiento de proyectiles, movimiento de planetas, viajes espaciales, osciladores armónicos, desintegración radiactiva, zorros que comen conejos que comen hierba y muchas otras situaciones.

Pero una vez que el ordenador ha determinado la solución numérica, te das cuenta que has creado un monstruo. Te encuentras inundado con un alud de datos y debes afrontar el segundo problema generado por las soluciones numéricas. ¿Cómo interpretar todos esos números? La respuesta más satisfactoria la consigues gracias a los gráficos. Si se trata de una trayectoria, dibújala. Si no es una trayectoria trata entonces de encontrar alguna forma de dibujar los resultados: número de partículas radiactivas en función del tiempo, posición en función del tiempo, pendiente en función del desplazamiento, número de conejos en función del número de zorros.

Hay muchos lenguajes de programación capaces de generar gráficos. Según este texto, Logo es el más flexible para esta aplicación y el más fácil de aprender. Es el más flexible gracias a su amplio vocabulario gráfico. Es el más fácil de aprender, porque permite comunicarse con el ordenador de forma muy similar a la que las personas se comunican entre sí. Logo es un lenguaje de procedimientos (o modular). Permite definir nuevas palabras, que tendrán el mismo estatus que los comandos primitivos. Estas nuevas palabras pueden ejecutarse por sí mismas o como parte de otro procedimiento.

Extraído del Prólogo de Física con Logo de Richard D. Hurley (Ediciones Anaya 1986)

MÉTODO NUMÉRICO y MÉTODO ANALÍTICO

El método numérico es extensivo, el analítico comprensivo. Por ejemplo si tuviésemos que expresar el conjunto de números enteros pares entre 1 y 10, el método numérico los definiría [2 4 6 8 10], el método analítico los definiría N ^ Resto N/2 = 0 y N> 1 y N<=10.

La ventaja del método analítico se vería si tuviésemos que definir el mismo conjunto entre 1 y 1000.

En física podríamos definir numéricamento la trayectoria parabólica de un objeto fotografiandolo y midiendo los valores posicionales.

tiro-oblicuo2
El método analítico plantearía las ecuaciones del movimiento para determinar las posiciones en función del tiempo.

Hurley plantea en el prólogo que el método numérico provee de una gran cantidad de información que no es sencilla de interpretar a menos que podamos graficarla. Por ende valora al Logo, pues en el año de publicación de su libro aparecía con un gran potencial gráfico respecto a los lenguajes y softwares de esa época. Hoy todo ha cambiado, pero para mal, ya que los softwares son tan poderosos que «sustituyen» las operaciones mentales de los alumnos e impiden todo proceso de aprendizaje comprensivo.

Al mismo tiempo hay que reconocer que los procedimientos mostrados por Hurley y los que mostraré en el tema Tiro oblicuo no son sencillos de interpretar y construir y en mi opinión se adecúan más a niveles universitarios. De hecho los temas del libro de Hurley exceden las temáticas que encontramos en el nivel medio.

ORGANIZACIÓN ANIDADA

Estos temas están organizados en capítulos (18 en total) que asemejan procedimientos anidados. Los temas precedentes están incluídos en los posteriores. Así los 2 primeros capítulos tratan temas de Estática:

Cap. 1 – Vectores

Cap. 2 – Equilibrio de fuerzas

Temas que están incluídos en los siguientes relacionados con cinemática:

Cap. 3 – Caída libre

Cap. 4 – Movimiento del proyectil y el tubo de rayis catódicos.

Cap. 5 – Movimiento del proyectil (II)

Pueden bajar el Capítulo 3 en formato PDF: Caida libre

Cap. 6 EL mono, el cazador y principio de equivalencia de Winstein-

Cap. 7 Velocidad de escape.

Cap. 8 El movimiento de los planetas.

Cap. 9 La música de las esferas.

Cap. 10 El Voyager II y las órbitas lunares.

Cap. 11 reactores, cohetes y la conservación del momento.

Cap. 12 El oscilador armónico, relojes, conejos y zorros.

Cap. 13 El Big Bang

Cap. 14 La desintegración radiactiva-

Cap. 15 Puntes, catenarias y el arco perfecto.

Cap. 16 Los peces y la óptica.

Cap. 17 El arco iris

Cap. 18 Las líneas del campo eléctrico y magnético.

TIRO OBLICUO

Aunque nos evoque el tiro de un cañón, el tiro oblicuo está asociado a variadas situaciones de la vida real:

tiro basket
Tiro-parabólico

golfito

Intuitivamente nos damos cuenta que el alcance y la altura de la trayectoria depende de la velocidad inicial del tiro, del ángulo inicial (medido en este caso en el sentido antihorario desde la horizontal y de la fuerza de la gravedad. Esta última es una fuerza que «afectará» negativamente la trayectoria del tiro. Una variación significativa de la aceleración de la gravedad podría tener efectos sorprendentes sobre su alcance:

tiro en la lunaPITÁGORAS Y POLYA

Como desarrollara en este blog en LAS HEURÍSTICAS EN EL AULA el teorema de Pitágoras es una expresión de una heurística general de resolución de problemas consistente en expresar un problema complejo como una combinación de problemas más simples, también llamados problemas tipo o comportamentales, que son entendibles y solucionables para el estudiante. En este caso, de las infinitas combinaciones de vectores que dan como resultante el Vector Velocidad Inicia (V0) elegimos la descomposición en los 2 vectores ortogonales V0x y V0y que se calculan mediante una relación trigonométrica básica en todo triángulo rectángulo:

V0x = V0. cos a y V0y = V0. sen a

senocosenoLa definición polar de un vector «plano», es decir de 2 dimensiones, está dada por 1) el módulo o intensidad y 2) la dirección del mismo, medida por 1 ángulo sexagesimal desde la horizontal en el sentido antihorario.

para vectorpolar :modulo :angulo

ponrumbo 90; orienta el vector en la horizontal
gi :angulo; orienta el vector según el ángulo dado medido desde la horizontal
pongrosor 2; duplica el grosor de la pluma

av :modulo punta re :modulo; grafica el vector Vo. (1)
ponrumbo 90; orienta el vector en la vertical
pongrosor 1; normaliza el grosor de la pluma
make «vx :modulo * cos :angulo; calcula la componente X y la almacena en la memoria «vx
make «vy :modulo * sen :angulo; calcula la componente Y y la almacena en la memoria «vy
av :vx punta (1) re :vx; gráfica la componente X del vector
gi 90
av :vy punta re :vy; grafica la componente Y del vector.
FIN

(1) punta es un procedimiento anidado que dibuja una flecha.

vectorpolar Módulo= 250 Módulo= 250 Módulo= 250

Ángulo= 60° Ángulo= 30° Ángulo= 45°

para punta
gi 30
re 10 av 10
gd 60
re 10 av 10
gi 30
fin

MRU y MRUV

¿Qué fuerzas podrían oponerse y modificar la componente horizontal Vx? En principio podríamos considerar la resistencia del aire y el viento. Pero si el efecto de estas fuerzas las consideramos despreciables podemos aceptar que Vx es constante y por lo tanto el movimiento en la dirección horizontal es uniforme. Estamos ante un MRU (Movimiento rectilíneo uniforme)

Por otra parte la componente Vy se verá afectada por la fuerza de la gravedad (g) y tendremos un MRUV (movimiento rectilíneo uniformemente variado).

La gravedad g provocará una desaceleración de Vy hasta que la anule (punto de máxima altura) y luego cambiará el sentido hacia abajo hasta que choque el suelo. En ese momento Voy = -Vfinaly

Las ecuaciones para la velocidad en función del tiempo serán entonces:

Vxt = V0x = Constante (MRU)

Vyt = V0y ± g.t (MRUV)

Las ecuaciones para la posición del proyectil en función del tiempo:

X(t) = X0 ± Vox .t

Y(t) = Y0 ± Voy.t ± ½.g.t2

Los signos para piso ± dependerá de la convención que adoptemos. La dirección horizontal será + cuando el sentido sea de izquierda a derecha. La dirección vertical sera + hacia arriba y – hacia abajo.

La posición inicial será en nuestro caso: POS0 = [-500 -200] o sea Xo= -500 e Yo = -200

POr lo tanto las ecuaciones serán:

X(t) = -500 + Vox . t

Y(t) = -200 + Voy.t – ½.g.t2

PARA PISO
BP
MODOVENTANA; si la tortuga excede los límites de la pantalla no volverá por el lado opuesto, quedará invisible.
sl ponpos [-500 -200]; ubica a la tortuga en la posición inicial: X0 = -500 Yo= -200
bl
pongrosor 3
ponrumbo 90
repite 2 [av 1000 gd 90 av 200 gd 90]; dibuja un rectángulo de 1000 x 200 pasos de tortuga)
sl gd 45 av 50 rellena ; rellena el rectángulo con el color de pluma activo
sl ponpos [0 280] PONRUMBO 90
rotulo [TIRO OBLICUO: CURVA ESPACIO – TIEMPO]
sl ponpos [-500 -200]
ponrumbo 0
bl
fin

PROCEDIMIENTOS DEL TIRO OBLICUO

Procedimiento principal: TIROINI

PARA TIROINI
BT
DATOS
INI
FIN

El ingreso de los 3 datos: Vo, Ángulo tiro y Aceleración se realizará mediante un procedimiento de lectura de teclado mediante el comando LP (Lee Palabra). Cada dato se almacenará en una memoria definida con el comando MAKE. (PDF para profundizar el uso de comandos para lectura de inputs por teclado y definición de memorias: INPUTS POR TECLADO)

PARA DATOS
bt
es [Velocidad inicial=]
make «Vo lp
es [Angulo=]
make «ang lp
bt
es [Aceleración=]
make «ace lp
bt
(es [Velocidad inicial=] :Vo [m/seg])
(es [Ángulo=] :ang «°)
(es [Aceleración=]:ace [m/seg2])
make «Vox :Vo * cos :ang
make «Voy :Vo * sen :ang
(es [Vox=] formatonumero :Vox 5 3)
(es [Voy=] formatonumero :Voy 5 3)
fin

PARA INI
make «listapos []; define la memoria «listapos con valor [ ] donde se guardarán las posiciones.
make «listavel []; define la memoria «listavel con valor [ ] donde se guardarán las velocidades.
poncl 9
pide 1 [ot sl ponpos [-500 -200] EXPLORAR 0]
MAKE «POSFINAL ULTIMO :LISTAPOS
pide 0 [poncl 12]
sl ponpos [-500 -200] bl; ubica la tortuga en la posición inicial
ST
PONRUMBO 0
GD 90 – :ANG; orienta a la tortuga en la dirección dada
TONO 2000 30
CREABOTON «MAIN «TIRAR «TIRAR 200 250 100 40 [TIRAR]; crea un botón con la acción TIRAR
CREABOTON «MAIN «TIRARVEL «TIRARVEL 200 200 100 40 [TIRARVEL]; crea un botón con la acción TIRARVEL
Es [PULSA EL BOTÓN TIRAR O TIRARVEL]
fin

(PDF para profundizar el uso del comandos CREABOTON: CREACIÓN DE BOTONES EN FMS LOGO)

PARA EXPLORAR :t
make «x -500 + :vx * :t; calcula la posición en X en función de :t (tiempo transcurrido)
make «y -200 + :vy * :t – :ace/2 * :t * :t ; idem en Y
make «velx :vx ; Calcula la velocidad en X en funciónn del tiempo :t
make «vely :vy – :ace * :t ; Idem en Y
make «listavel ponultimo lista :velx :vely :listavel; guarda las velocidades en la memora «listavel
make «listapos ponultimo lista : x :y :listapos; guarda las posiciones en la memora «listapos
si :t > 0 :y < -200 [alto] ; el lazo se detiene cuando después del tiro :y es < :y0
EXPLORAR :t + 0.05; crea un lazo con EXPLORAR incrementando :t en un Dt = 0,05 unidades tiempo.

fin

Este procedimiento recursivo (lazo) calcula los valores posicionales y de velocidad en ambas direcciones y luego los almacena en las memorias «listavel y «listapos previamente definidas en el procedimiento INI.

(PDF para profundizar la forma en que FMS LOGO almacena acumulando datos en una lista: MEMORIA DE ACUMULACIÓN)

PARA TIRAR
TIRO :listapos; grafica los valores de posición calculados en EXPLORAR y almacenados en :listapos
RESULTADOS ; reporta los resultados principales de la trayectoria
GRAFRESU ; grafica la altura máxima
BORRABOTON «TIRAR
BORRABOTON «TIRARXY
FIN

PARA TIRO :lista
si vacio? :lista [alto] ; condición de detención del lazo, cuando la lista con las posiciones se vacía.
PONRUMBO HACIA primero :lista
ponpos primero :lista
TIRO mp :lista ; lazo que repite el tiro extrayendo la primera posición de la lista (MP = menos primero)
fin

PARA RESULTADOS (Calcula e informa de valores destacados)
BT
make «xmax ABS ((PRIMERO ultimo :listapos) + 500)
make «tiempo :xmax / :vx
MAKE «MEDIO ENTERO (CUENTA :LISTAPOS) / 2 + 1
MAKE «YMAX ULTIMO ITEM :MEDIO :LISTAPOS
MAKE «YMAX :YMAX + 200
MAKE «VYMAX ULTIMO PRIMERO :LISTAVEL
MAKE «VXMAX PRIMERO PRIMERO :LISTAVEL

(Es [V0=] :V0 [Angulo=] :ang)
(Es [Aceleración gravedad=] :ace)
(es [XMAX] :XMAX [YMAX=] :YMAX)
(ES [VEL_Y MAX=] :VYMAX [VEL_X MAX=] :VXMAX)
(es [ALCANCE MÁXIMO] :xmax)
(Es [ALTURA MÁXIMA] :ymax)
FIN

APLICACIONES

Indudablemente que la programación de este evento no es sencilla. Pero tampoco imposible en un 4° año que tenga los conocimientos previos necesarios de programación (y de física). He tenido alumnos que han programado estos fenómenos y más aun.

Pero también es posible utilizar el sistema ya programado para realizar experiencias virtuales y complementar las soluciones analíticas con soluciones numéricas que pueden determinarse «jugando» con los parámetros del sistema.

Estas gráficas corresponden a diferentes ángulos y valores de V0= 100 y g=10. Observamos que el máximo alcance se logra con un ángulo de tiro = 45°, justamente cuando V0x = V0y.

TRAYECTORIAS

V0= 100 Angulo= 45° Aceleración gravedad= 10
XMAX 1000.556 YMAX= 249.996
VEL_Y MAX= 70.711 VEL_X MAX= 70.711
ALCANCE MÁXIMO 1000.556
ALTURA MÁXIMA 249.996

DUPLICACIÓN DE LA GRAVEDAD

g1020

Para V0=100 y Angulo=60°, la parábola mayor corresponde a una g=10 y la menor a g=20. Observamos que el alcance y la altura máxima son inversamente proporcionales a g. Dejamos como problema la demostración analítica de esta relación.

VARIACIÓN DE VELOCIDAD

Realizando algunos cambios podemos graficar también los vectores velocidad en función del tiempo. Las curvas así obtenidas muestran el cambio de sentido de la componente Vy.

tirovel

TIRO AL BLANCO

Otra posible variación es un «juego» elemental, en el que programamos la aparición de un «objetivo» al azar y el usuario debe ingresar el ángulo de tiro (la V0 y g se fijan en el programa).

tiroalblanco

UNIDADES

Aunque lso datos ingresados y los resultados se expresan en el sistema MKS, esto constituye un error pues la unidad de desplazamiento es el pixel o paso de tortuga (pt). La unidad de tiempo no es el segundo, sino el tiempo que tarda el lazo (ciclo) en repetirse. Podríamos llamarlo tl. Por lo tanto el desplazamiento 1000 px, la velocidad 50 px/tl . Las unidades son siempre un problema, a menudo más importante que el problema mismo. Pero lo importante es que haya un coherencia interna y no sume cm con pt.

PROGRAMAS EN FMS LOGO

En el archivo tiroobllicuo programacion fms que pueden descagar están todos los procedimientos necesarios (y algunos más) para las 3 experiencias. Los procedimientos principales son: TIROINI y TIROJUEGO. El procedimiento PISO borra la pantalla y grafica el piso. El procedimiento BB borra los botones en caso de que queden en pantalla. Los procedimientos están en un documento WORD (.docx), ya que Wpress no me permite subir archivos Lgo ni Txt.

Solo tienen que copiar los procedimientos y pegarlos en el editor LOGO. Descargar procedimientos en: tirooblicuo programacion fms

UNA PROYECCIÓN DE NOSOTROS

Por supuesto que soy escéptico respecto a la aplicación de todo esto en la escuela. Después de 35 años he visto demasiado como para ilusionarme. Es interesante que LOGO, como no lo hace ninguna otra aplicación, desnuda nuestros intereses y capacidades. Basta observar los temas desarrollados por Hurley para darse cuenta que lo que hacemos con LOGO es una proyección de nuestra propia mente. Esta propiedad es maravillosa, pero a veces también asusta.

Una continuación de esta relación entre Logo y la Física sera la aplicación de sensores para la toma de datos. Experiencias que toman un matiz más numérico que analítico y que permiten investigar, almacenar datos y sacar conclusiones cualitativas y reconocer relaciones entre los fenómenos y sus variables.