Modeling and Simulation in Python is an introduction to physical modeling using a computational approach.
Taking a computational approach makes it possible to work with more realistic models than what you typically see in a first-year physics class, with the option to include features like friction and drag.