martes, 21 de febrero de 2012

Ejercicio Práctico 8

Ejercicio Básico de EJS 


Hoy vamos a realizar un ejercicio sencillo con EJS simulando una marioneta con muelle.
Para ello describiremos teoricamente el ejercicio ( su parte mecanica y la ecuación diferencial resultante).

Hay que definir dos ecuaciones diferenciales , cada una de ellas representa la velocidad y la aceleración de la marioneta.

\[x^2 = a * landa + b * u \]
\[x (0) = Xo\]

Por lo que la segunda derivada queda en funcion de :  \[x" = f (t,x,x`) \]
Aplicando la segunda ley de newton para cargas :  \Sumatorio de fuerzas = m * a \]
 Siendo "m" la masa de la marioneta y "a" su aceleración y "v" su velocidad.La fuerza "f" sera la fuerza de rozamiento del aire. Por lo tanto sustituyendo y derivando en las encuaciones anteriormente mencionadas :

\[ f -k*x  b*v = m * a\]
\[x" = -k/m *x - b/m* x` + 1/m * f \]


 EJS presenta una dificultad. No se pueden introducir ecuaciones de mas de 1er grado por lo que apelando al algebra sabemos que una ecuación explicita de orden N es equivalente a un sistema de N ecuaciones. Se realiza con cambios de variable.

Siendo x = x1 y x`= x2


\[x2` = -k/m *x - b/m* x` + 1/m * f \]
 \[x1` = x2 \]

La variable independiente sera el tiempo "t" y la función incognita x1 y x2.
Inicializaremos las variables:

 \[x (0) = 2\]  \[x` (0) = 0\]  \[m = 30kg\]  \[b = 5\]
 \[k = 2\]  \[f = 0\] 


Dicho esto comenzaremos con EJS definiendo las variables e inicializandolas:




Posteriormente en el modulo de vista colocaremos los elementos necesarios para su visualización : Un gráfico en 2D de tipo "PlottingFrame" y para imagenes en 3D "DrawingFrame".



Configuraremos ambos elementos para que la visualización sea correcta:


Y procederemos a la simulación:




No hay comentarios:

Publicar un comentario