- Ej1 - Montaña rusa
- Ej2 - Movimiento circular uniforme
- Ej3 - Particula osciladora
- Ej4 - Lanza burbujas
- Ej5 - Espiral
- Ej6 - Tiro parabóolico y plano inclinado
- PRACTICA 1 - Metodos numericos de integración
- Ej1 - Localizar celdas
- Ej2 - Emisor tipo Humo y emisor tipo Fuente
- Ej3 - Partícula flotante y emisor tipo Splash
- Ej4 - Modelos de colisión entre partículas
- PRACTICA 2 - Sistema de particulas - Fuegos artifiales
- PRACTICA 3 - Estudio de los modelos de colision y estructura de datos
- Ej1 - Cuerda
- PRACTICA 4 - Estructuras masa-muelle - BANDERAS
- PRACTICA 5 - Simulación de ondas - MAR
- TEMA 1 - CONCEPTOS BÁSICOS E INTEGRADORES NUMÉRICOS
- TEMA 2 - SISTEMAS DE PARTÍCULAS Y ESTRUCTURAS DE DATOS
- TEMA 3 - OBJETOS DEFORMABLES
Métodos de integración numérica
A partir de ahora no vamos a trabajar con fórmulas directas que nos den la posición, sino que vamos a aplicar fuerzas, que serán las que produzca un movimiento.
Nuestro objetivo será resolver ecuaciones de movimiento en función del tiempo y de las fuerzas que aceleran el sistema.
En esta práctica vamos a trabajar con dos modelos, uno en el que vamos a tener dos muelles y el otro con un solo muelle.
El objetivo de esta práctica es entender los diferentes métodos de integración numéerica, y comprobar la precisión de los mismos seguún el diferencial de tiempo que usemos. A menor diferencial de tiempo mayor precisión obtendremos con cualquiera de los métodos que usamos.
Las ecuaciones que se nos van a presentar no siempre van a tener una solución analítica, por lo que vamos a necesitar un método numérico para que en función de f', nos dé una aproximación a f.
Para todas la ecuaciones de la forma:
f' = f(x, y)
Calcularemos la Y siguiente:
yi+1 = y + pendiente*paso
Los diferentes métodos se diferencia en el forman en la que van a calcular la pendiente.
EULER:
Yi+1 = Yi + Yi'*paso
SHEUN:
Yi++1 = Yi + paso/2*(Yi + Yi+1)
RK2
Yi+1 = Yi + K2*paso
- K1 = Yi'
- K2 = Yi + paso/2' (Derivada en la mitad del intervalo)
RK4
Yi+1 = Yi + paso/6 * (k1 +2*k2 + 2*k3 + k4)
- K1 = Yi'
- K2 = Yi + paso/2'
- K3 = Yi + paso/2'
- K4 = Yi+1 '
Por las diferencias en el error y el coste en líneas de código de los diferentes métodos, nos quedamos con el método de Euler-semi pues el error no es mucho mayor que en RK4 y supone muchas menos código.