Source: https://mse.redwoods.edu/darnold/math55/DEproj/sp14/TejaAluru/paper.pdf