sábado, 26 de julio de 2025

Python para estudiantes de ingenieria mecanica: Vibraciòn

 

Vibraciones mecánicas con Python

Resolver las ecuaciones diferenciales de segundo orden es un problema común en la ingeniería mecánica, y aunque es inapropiado comprender cómo resolver estos problemas analíticamente, usar el software para resolverlos es MOR es práctico, especialmente cuando se considera que los parámetros a menudo son desconocidos y necesitan ser probados.

Este es un ejemplo simple de resolver una ecuación diferencial de segundo orden que representa un sistema de amamantamiento de primavera con lenguaje de programación de Python. ¡Python es una herramienta poderosa para la ciencia y la ingeniería y es relativley fácil de usar y gratis!

El sistema de que este está modelado se basa en un resorte y un amortiguador en paralelo unido a una masa. 

 

Las condiciones iniciales de desplazamiento y velocidad se definen en el estado Varaible0 

>>state0 = [0.0, 1.2]  #initial conditions [x0 , v0]  [m, m/sec] 
>>ti = 0.0  # initial time
>>tf = 4.0  # final time
>>step = 0.001  # step
>>t = np.arange(ti, tf, step)
>>state = odeint(MassSpringDamper, state0, t)
>>x = array(state[:,[0]])
>>xd = array(state[:,[1]])

Resolver una ecuación diferencial es lo suficientemente desafiante, pero para mí, no es tan útil a menos que tenga algunas tramas agradables para visualizar los resultados 

>># Plotting displacement and velocity
>>pylab.rcParams['figure.figsize'] = (15, 12)
>>pylab.rcParams['font.size'] = 18

>>fig, ax1 = pylab.subplots()
>>ax2 = ax1.twinx()
>>ax1.plot(t,x*1e3,'b',label = r'$x (mm)$', linewidth=2.0)
>>ax2.plot(t,xd,'g--',label = r'$\dot{x} (m/sec)$', linewidth=2.0)
>>ax2.legend(loc='lower right')
>>ax1.legend()
>>ax1.set_xlabel('time , sec')
>>ax1.set_ylabel('disp (mm)',color='b')
>>ax2.set_ylabel('velocity (m/s)',color='g')
>>pylab.title('Mass-Spring System with $V_0=1.2 \frac{m}{s}$ and $\delta_{max}=22.9mm$')
>>pylab.grid()

 

 

 

 

 

 

 

No hay comentarios.:

Publicar un comentario

Entradas recientes

Thinkcspy 7.7 Condicionales encadenados

  7.7. Condicionales encadenados Python proporciona una forma alternativa de escribir una selección anidada, como la que se muestra en la s...

Entradas Populares