import numpy as np import matplotlib.pyplot as plt from scipy.integrate import odeint mass = 0.5 # kg kspring = 4 # N/m cviscous = 0.4 # N s/m eps = cviscous / (2 * mass * np.sqrt(kspring/mass)) omega = np.sqrt(kspring / mass) eps < 1 def calc_deri(yvec, time, eps, omega): return (yvec[1], -eps * omega * yvec[1] - omega **2 * yvec[0]) time_vec = np.linspace(0, 10, 100) yinit = (1, 0) yarr = odeint(calc_deri, yinit, time_vec, args=(eps, omega)) plt.plot(yarr[:,0],yarr[:,1]) plt.show()