Drone simulator as explained in: https://www.cggonzalez.com/blog/sim.html
The model was derived in: https://www.cggonzalez.com/blog/model.html based on [1].
quad.py
includes an example of how to stabilize the quad using LQR about a hovering equilibrium point. See [2] for details on LQR and controls.
[1] Teppo Luukkonen. Modelling and control of quadcopter.Independent research project in applied mathematics,2011. https://sal.aalto.fi/publications/pdf-files/eluu11_public.pdf
[2] Russ Tedrake. Underactuated Robotics: Algorithms for Walking, Running, Swimming, Flying, and Manipulation (Course Notes for MIT 6.832). Downloaded on 10/25/2020 from http://underactuated.mit.edu/