MCU en polares

Esta actividad pertenece al libro de GeoGebra El dominio del Tiempo. En la actividad anterior, el deslizador anima movía el punto M usando la instrucción:  Valor(M, Rota(M, dt ω, O)) En vez de usar el comando Rota, podemos usar coordenadas polares. Veamos cómo. En las coordenadas cartesianas de un punto P(x, y), las coordenadas x e y representan, respectivamente, las distancias (con su signo) en horizontal y vertical de P al origen de coordenadas O. En las coordenadas polares P(r; α), r corresponde a la longitud del segmento OP y α corresponde al ángulo, entre 0º y 360º, que forma OP con el Eje X. Observa que, para evitar confusiones, para separar las coordenadas polares usamos el punto y coma en vez de la coma. Por ejempo, el punto P(0, -3) es igual a P(3; -90°). Para obtener las coordenadas cartesianas de un punto P, GeoGebra usa x(P) e y(P). Para obtener sus coordenadas polares, GeoGebra usa abs(P) y arg(P).
  • Nota: en realidad, arg(P) devuelve un ángulo entre -180º y 180º, correspondiendo los valores negativos a los ángulos mayores de 180º.
Las coordenadas polares resultan especialmente útiles en los movimientos rotatorios, pues el punto P(r ; α), al variar α, describe una circunferencia centrada en el origen y de radio r. Así que si en el MCU de la actividad anterior, con velocidad angular constante ω, O es el origen de coordenadas, entonces el punto M tiene por coordenadas polares (r ; t ω), así que podemos mover M con la instrucción: Valor(M, (r ; t ω)) El ángulo que forma M con el origen se obtiene con arg(M). Si queremos generalizar al caso en que O no sea el origen de coordenadas, basta sumar sus coordenadas: Valor(M, O + (r ; t ω)) En tal caso, el ángulo que forma M con el origen de coordenadas se obtiene con arg(M-O). Después de la construcción, puedes ver cómo queda el guion del deslizador anima.
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 tiempo de la vuelta y el número de vueltas realizadas Valor(reg, Si(arg(M - O)<0 ∧ arg(M - O) + dt ω≥0, Añade(t, reg), reg)) Valor(vueltas, Si(arg(M - O)<0 ∧ arg(M - O) + dt ω≥0, vueltas + 1, vueltas)) # Mueve M Valor(M, O + (r; t ω)) Autor de la actividad y construcción GeoGebra: Rafael Losada.