Skip to content
forked from STAIRlab/sdof

Parallel integration of single degree-of-freedom dynamic systems.

License

Notifications You must be signed in to change notification settings

Ialvarez018/sdof

 
 

Repository files navigation

sdof

SDOF logo

Lightning-fast integration of single degree-of-freedom systems.


Latest PyPI version NPM version


This package solves scalar differential equations of the form

$$ m \ddot{u} + c \dot{u} + k u = f(t) $$

Integration is carried out using a Generalized - $\alpha$ integrator that is implemented under the hood in highly optimized multi-threaded C code.

Generalized - $\alpha$ is an implicit method that allows for high frequency energy dissipation and second order accuracy. With the right selection of parameters, the method can be specialized to the Hibert-Hughes-Taylor (HHT), or Newmark families of integration schemes.


Python API

import numpy as np
from sdof import integrate, peaks, spectrum

k  = 10.0
c  = 0.1592
m  = 0.2533
f  = np.sin(np.linspace(0, 5*np.pi, 100))
dt = 5*np.pi/100


u, v, a = integrate(f, dt, k, c, m)

D, V, A = spectrum(f, dt, periods=(0.02, 3.0, 100), damping=[0.02, 0.05])

See Also

Support

PEER Logo Caltrans Logo BRACE2 Logo

About

Parallel integration of single degree-of-freedom dynamic systems.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 38.3%
  • JavaScript 33.5%
  • Python 17.2%
  • SCSS 5.9%
  • Makefile 3.3%
  • Tcl 0.9%
  • Shell 0.9%