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

Geeksforgeeks. Cadenas segunda parte

  Métodos de cadena comunes Python proporciona varios métodos incorporados para manipular cuerdas. A continuación se muestran algunos de l...

Entradas Populares