If you're seeing this message, it means we're having trouble loading external resources on our website.

Si estás detrás de un filtro de páginas web, por favor asegúrate de que los dominios *.kastatic.org y *.kasandbox.org estén desbloqueados.

Contenido principal
Tiempo actual: 0:00Duración total:4:37

Transcripción del video

En la lección pasada creamos un modelo que  imitaba el comportamiento del cabello rizado;   nuestro modelo usó una variedad de resortes  conectados con pesos para obtener este efecto.   El objetivo de esta lección es escribir el  programa de computadora que hace posible   esa simulación. Algo a considerar antes  de empezar esta lección es que vamos a   utilizar algunas de las ecuaciones de  Newton para animar nuestra simulación,   y en nuestra lección de efectos exploraremos  cómo funcionan estas ecuaciones. Para empezar, vamos a simular un modelo muy  sencillo, una partícula que sólo experimenta la   gravedad y que se deja caer desde una posición  en la pantalla. El programa que voy a escribir   para simular esta situación va a estar dividido  en dos partes: en la parte superior voy a poner   nuestros ajustes iniciales, como la posición  inicial y la fuerza de gravedad; abajo de eso   vamos a usar una función llamada Draw, o dibujar  en inglés, para hacer la animación. Ojo, en estos   ejercicios que veremos, tanto las funciones como  las variables estarán en inglés. Primero vamos a   definir nuestros ajustes iniciales. La gravedad  es la fuerza que vamos a querer controlar,   así que vamos a definir una variable que se llame  Gravity, gravedad en inglés, y la hacemos igual a,   digamos 10, podemos jugar con este valor después.  Vamos a querer otra variable para almacenar la   masa de la partícula, Mass en inglés; por ahora  voy a hacer este igual a 30. Más una variable   para la altura inicial desde donde dejamos caer  la partícula, a ésta la voy a llamar posición uai,   posición ye en inglés. También vamos a necesitar  una velocidad inicial para nuestra partícula, a   esta la voy a llamar Velocity uai, velocidad ye en  inglés. Y justo al inicio de nuestra simulación,   justo antes de que la dejemos caer, la hacemos  igual a 0. Por último, necesitamos una manera de   controlar la rapidez de nuestra simulación; esto  lo vamos a hacer con una variable llamada Time   step, paso del tiempo en inglés. Piensa en Time  step como el intervalo de tiempo que transcurre   entre cada actualización del dibujo. Un valor  más alto de Time step hará que la rapidez de la   partícula entre distintos cuadros de animación  sea mayor, mientras que un valor menor de Time   step hará que vaya más lento. Ahora, consideremos  lo que va dentro de la función de dibujo Draw.   Cuando ejecutemos nuestro programa, la computadora  primero ejecutará los ajustes iniciales una vez y   después va a iterar a través de la función Draw  muchas veces por segundo, así que cada cuadro de   nuestra animación va a ser un sólo paso de esta  función Draw. Primero voy a calcular las fuerzas   que actúan sobre la partícula. Por ahora, la  única fuerza que actúa sobre ella es la gravedad.   La función apunta hacia abajo. Voy a almacenar  esta fuerza que apunta hacia abajo usando la   variable llamada Force uai, fuerza ye en inglés.  A partir de la Segunda ley de Newton sabemos que   esta fuerza es igual a la masa de la partícula  multiplicada por la aceleración vía la gravedad.   A continuación voy a usar esa fuerza para definir  qué tan rápido se va a acelerar nuestra partícula   hacia abajo, voy a almacenar este valor en una  nueva variable que se llama Aceleration uai,   aceleración ye en inglés. Para hacer eso voy a  reacomodar la fórmula de f = m • a para obtener   que Aceleration uai es igual a Force uai dividida  entre la masa. Observa que ya calculamos Force uai   en el paso anterior. Ya que sabemos qué tan rápido  se acelera nuestra partícula, podemos actualizar   su velocidad usando la fórmula velocidad es igual  a la velocidad más la aceleración multiplicada   por el paso del tiempo, esto es Velocity Y  = Velocity Y + Aceleration Y • Time step.   Derivamos esta fórmula en la elección de efectos.  Revísala para obtener más detalles. Ahora,   observa que la variable de la velocidad del lado  derecho de esta ecuación inicialmente almacena   el valor anterior de la velocidad, después de  que se ejecuta esta línea la variable de la   velocidad del lado izquierdo almacena el valor  actualizado de la velocidad. Por último podemos   usar esta velocidad para dibujar nuestra partícula  en una nueva posición usando la ecuación posición   Y = posición Y más velocidad multiplicada por el  paso del tiempo, es decir, Position Y = Position   Y + Velocity Y • Time step. Igual que antes,  la variable Position Y del lado derecho de la   ecuación, inicialmente almacena el valor anterior  de la posición, una vez que se ejecuta esta línea,   la variable Position Y del lado izquierdo almacena  el siguiente valor de la posición. Observa que   cada paso en nuestro cálculo usa el resultado del  paso anterior: el cálculo inicial de la fuerza se   usa para encontrar la aceleración, la aceleración  se usa para encontrar la velocidad y la velocidad   se usa para actualizar la posición. Ahora la  parte divertida. Ahora, sólo dibujamos nuestra   partícula en esa nueva posición. Para hacerlo,  simplemente dibujamos un círculo usando la   variable Position Y como su altura. Aquí estoy  dibujando un círculo usando la función elipse,   con el mismo alto y ancho. Ahora vamos a  ejecutar nuestro programa para ver qué pasa. Ups,   quiero borrar el círculo anterior cada vez que  lo movemos, de modo que se vea como algo que está   cayendo en vez de esta otra cosa. Esto lo voy a  arreglar al borrar o redibujar la pantalla cada   vez que dibujo un nuevo círculo. Vamos a probar  eso. Bien. Si aumento la fuerza de gravedad,   nuestra partícula cae más rápido, como lo  esperaríamos. Esas son las Leyes de Newton   del movimiento en acción. Vamos a detenernos aquí  para que puedas sentirte cómodo con este código.