Aceleracion Constante 2D
Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)
¿QUÉ ES?
Tortuga que se mueve en dos dimensiones con aceleración constante
¿CÓMO FUNCIONA?
- La tortuga se mueve de acuerdo a un modelo de movimiento en dos dimensiones con aceleración constante, y se generan gráficas típicas de movimiento.
- También hay monitores de las variables cinemáticas.
- Transcurre un tiempo ∆t = 1/30 segundos cada tick
¿CÓMO USARLO?
El usuario elige: - Las componentes de la posición inicial - Las componentes de la velocidad inicial - Las componentes de la aceleración - Si desea que quede marcada la trayectoria seguida por la tortuga con el interruptor show-path - Si desea que se muestren los ejes cartesianos con el interruptor show-axes - Si desea que se marquen los puntos cuando la tortuga cambia de dirección, tanto horizontal como vertical con el interruptor show-turn-pts - Si desea que se marquen los puntos cuando la tortuga está en reposo con el interruptor show-at-rest - Si se desea, se puede generar un diagrama de movimiento (imagen estroboscópica)
Al dar click en Setup - Se trazan los ejes (si el usuario así lo eligió) y se coloca la tortuga en la posición definida por el usuario - Se inicializan las gráficas y monitores de las variables cinemáticas
Al dar click en Go - Se empieza a mover la tortuga de acuerdo a un modelo de movimiento con aceleración constante en dos dimensiones - Se traza la trayectoria de la tortuga (si el usuario así lo eligió) - Se genera una tortuga roja en los puntos donde hay un cambio de dirección ya sea horizontal o vertical (si el usuario así lo eligió) - Se genera una tortuga verde en los puntos en que la tortuga se encuentre en reposo (si el usuario así lo eligió) - Cada 500 ticks se genera una tortuga amarilla para ir generando el diagrama de movimiento (si el usuario así lo eligió) - Se trazan las gráficas de las variables cinemáticas y se actualizan los monitores - Se detiene la simulación cuando la tortuga llega a una de las orillas del espacio, o cuando el usuario lo desee.
COSAS A INTENTAR
- ¿Con qué elección de parámetros puedes generar una trayectoria tipo proyectil?
- ¿Con qué elección de parámetros puedes generar una trayectoria similar a la de un boomerang?
- ¿Con qué elección de parámetros se moverá la tortuga sobre una línea diagonal, cambiando de dirección?
EXTENDER EL MODELO
Graficar dos tortugas, cada una con parámetros por independientes y ver si se pueden hacer chocar bajo diferentes condiciones
MODELOS RELACIONADOS
- Uri Wilenski, Plot Axis Example http://modelingcommons.org/browse/one_model/2318#model_tabs_browse_nlw
CREDITOS Y REFERENCIAS
Carlos Martinez-Torteya ITESM Campus Monterrey Departamento de Ciencias 2018
Comments and Questions
breed [particles partcile] particles-own [velx vely accx accy speed dist] breed [markers marker] to setup clear-all setup-world setup-particle reset-ticks end ; to setup-world if show-axes[ ask patches with [pycor = 0 and (pxcor mod 2 = 1)] [set pcolor white] ask patches with [pxcor = 0 and (pycor mod 2 = 1)] [set pcolor white] ] end ; to setup-particle create-particles 1[ ; Crear una tortuga-partícula de acuerdo a la información del usuario set xcor x0 set ycor y0 set shape "turtle" set color yellow set size 10 set heading atan vx0 vy0 set velx vx0 set vely vy0 set speed sqrt(vx0 ^ 2 + vy0 ^ 2) ; Calcular rapidez y dirección iniciales set accx ax set accy ay set dist 0 ; Inicializar distancia recorrida if show-path [pen-down] ; Si usuario eligió mostrar trayectoria, mostrarla ] end ; ;;; Procedimiento a ejecutar en cada iteración to go ask particles [ move-const-accel ; Avanzar calc-const-accel ; Recalcular variables if show-turn-pts [show-crit-pts] ; Si usuario eligió mostrar puntos críticos, mostrarlos if show-at-rest [show-rest-pts] ; Si el usuario eligió mostrar puntos en reposo, mostrarlos if motion-diag [motion-diagram] ] tick ; Avanzar contador de tiempo ; Si tortuga llega a la orilla del mundo, parar simulación if (abs [xcor] of turtle 0 >= (max-pxcor - 1) ) or (abs [ycor] of turtle 0 >= (max-pycor - 1) ) [stop] end ; ;;; Procedimiento para mover la partícula y actualizar distancia recorrida to move-const-accel set dist (dist + (speed / 300)) ; Calcular distancia a recorrer en tick de acuerdo a su rapidez actual fd speed / 300 ; Avanzar la tortuga de acuerdo a su rapidez y dirección actual end ; ;;; Procedimiento para actualizar variables bajo aceleración constante to calc-const-accel set velx velx + (ax / 300) ; Actualizar componentes de velocidad de acuerdo a aceleración set vely vely + (ay / 300) set speed sqrt((velx * velx) + (vely * vely)) ; Actualizar rapidez de acuerdo a componentes actualizadas set heading atan velx vely ; Actualizar dirección de acuerdo a componentes actualizadas end ; ;;; Procedimiento para mostrar puntos críticos (cambios de dirección) to show-crit-pts if ( (speed > 0.01) and ((abs velx < 0.001) or (abs vely < 0.001) ) ) [ ; si una de las componentes de su velocidad hatch-markers 1 [ ; pero sin estar en reposo, dejar marcador rojo set shape "turtle" set color red set label "turn point" set size 10] ] end ; ;;; Procedimiento para mostrar puntos en reposo to show-rest-pts if (show-at-rest) [ ; Si el usuario eligió marcar puntos en reposo: if (speed < 0.001) [ ; si está en reposo, dejar marcador verde hatch-markers 1 [ set shape "turtle" set color green set label "at rest" set size 10] ] ] end ; ;;; Procedimiento para generar Diagrama de Movimiento to motion-diagram if (ticks mod 500 = 0)[ ; Cada 500 ticks, crear una tortuga marcador para generar el diagrama de movimiento hatch-markers 1[ set shape "turtle" set color yellow set size 10 set label (ticks / 500 + 1) ; Con identificador de cardinalidad ] ] end
There is only one version of this model, created almost 7 years ago by Carlos Martinez-Torteya.
Attached files
File | Type | Description | Last updated | |
---|---|---|---|---|
Aceleracion Constante 2D.png | preview | Preview for 'Aceleracion Constante 2D' | almost 7 years ago, by Carlos Martinez-Torteya | Download |
This model does not have any ancestors.
This model does not have any descendants.