MAS de un resorte horizontal

Esta actividad pertenece al libro de GeoGebra El dominio del Tiempo. Esta animación simula un movimiento armónico simple (MAS) en tiempo real, despreciando el rozamiento, de un resorte horizontal. La animación hace uso del mínimo de fórmulas (ni trigonometría ni cálculo diferencial), solo realiza las variaciones necesarias en los vectores que dirigen el movimiento. Una masa m, representada por el punto azul M, se encuentra en el extremo de un resorte o muelle de elasticidad constante k. Puedes elegir, dentro de un intervalo, ambas constantes en el panel izquierdo. Al iniciarse, la construcción muestra el punto azul M en estado de reposo: el resorte no ejerce ninguna fuerza sobre él. Arrastra M hacia la derecha o hacia la izquierda para estirar o comprimir el resorte. La distancia que lo arrastres determinará la amplitud. Comprueba que, según arrastras M, el período teórico no varía, pues no depende de la amplitud. El motivo es que a mayor amplitud, mayor será la fuerza restauradora del resorte, así que al final M recorrerá cada oscilación en el mismo tiempo (demostraremos este isocronismo en la próxima actividad). Esa separación de la posición de reposo hará que el resorte se resista, apareciendo una aceleración a (en rojo) cuyo sentido es siempre hacia el punto de reposo. Esta aceleración no es constante, sino que, en cada posición de M, es proporcional a la distancia x de M al punto de reposo.
  • Nota: denominaré am al valor máximo de esta aceleración (que se alcanza en los puntos de retorno marcados con líneas discontínuas), pues la usaré en el guion del deslizador anima para contar las oscilaciones completas.
Pulsa el botón para activar la animación. La aceleración a provoca que M adquiera una velocidad variable v (en verde). Su módulo es proporcional a la elasticidad k y a la distancia x, e inversamente proporcional a la masa m. Es decir, |a| = k/m x.
  • Sabemos que la fuerza del resorte es, por un lado, igual a la masa por la aceleración: m |a|, y por otro lado, proporcional a la distancia x recorrida: k x. De aquí se deduce que |a| = k/m x.
Así que adecuamos a esta situación el guion del deslizador anima: Valor(v, v + dt a) Es decir, cada vez que pasa una cantidad de tiempo dt muy pequeña, por definición de aceleración, la velocidad v aumenta dt a. Atención: puedes detener la animación en cualquier momento, pero si lo haces deberás pulsar el botón Reinicia para actualizar el contador de tiempo, en caso contrario su medición será errónea.
GUION DEL DESLIZADOR anima # Registra el sentido del vector velocidad v (para usarlo más adelante) Valor(sentido, sgn(v am)) # Calcula los segundos dt transcurridos; para ello, suma un segundo si t1(1) < tt Valor(tt, t1(1)) Valor(t1, Primero(TomaTiempo(), 3)) Valor(dt, (t1(1) < tt) + (t1(1) - tt)/1000) # Mueve M Valor(v, v + dt a) Valor(M, M + dt v) # Registra el tiempo del período y el número de oscilaciones completas Valor(reg, Si(sentido<0 ∧ sgn(v am)>0, Añade(t, reg), reg)) Valor(osci, Si(sentido<0 ∧ sgn(v am)>0, osci + 1, osci)) Autor de la actividad y construcción GeoGebra: Rafael Losada.