Esta animación simula el
movimiento en caída libre
en tiempo real, despreciando la resistencia del aire, con una
velocidad inicial horizontal. La animación no hace uso de fórmulas
(ni ecuaciones ni cálculo diferencial), solo realiza las variaciones
necesarias en los vectores que dirigen el movimiento.
Esta animación sigue los mismos
pasos de la
actividad anterior, solo que ahora el vector velocidad
v puede tener un valor inicial
v0 no nulo, en dirección
horizontal. Esta velocidad inicial horizontal (que puede ser negativa, es
decir, hacia la izquierda en vez de hacia la derecha) convierte el
movimiento rectilíneo en uno parabólico. Es decir, podemos considerar la
caída libre con velocidad inicial horizontal como combinación del Movimiento Rectilíneo Uniforme horizontal y la
Caída libre.
Como puedes observar, el
resultado se ajusta bastante bien a la realidad. Las marcas verdes
representan la altura alcanzada por el punto azul en cada segundo, según
la animación. Las marcas naranjas indican la altura teórica a la que
debería estar ese punto al cabo de cada segundo. Puedes activar la casilla
"Ver arco teórico" para que se muestre la gráfica del arco parabólico
correspondiente.
Observa también que, si no hay
rozamiento, la componente horizontal del vector velocidad se conserva en
todo momento igual a la velocidad inicial horizontal. Como consecuencia,
la abscisa que alcanzará la masa al llegar al Eje X será la misma que si
no hubiese caída y siguiese rectilínea en un movimiento uniforme, es
decir, será igual a la abscisa de la posición inicial más
v0 T, siendo T
el tiempo de caída.
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.
GUION DEL DESLIZADOR anima
# 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)
# Registra
el paso por un número entero de segundos y la altura correspondiente
Valor(ultimo, reg(1))
Valor(reg,
Si(floor(t)>ultimo, Añade(floor(t), reg), reg))
Valor(marca,
Si(floor(t)>ultimo, Añade(y(M), marca), marca))
# Mueve M
Valor(v, v
+ dt g)
Valor(M,
Si(y(M + dt v)>0, M + dt v, Interseca(Recta(M, M + v), EjeX)))
IniciaAnimación(anima, y(M)>0)