CasADi - A software framework for nonlinear optimization and optimal control - Andersson, Joel A E; Gillis, Joris; Horn, Greg; Rawlings, James B; Diehl, Moritz (Mathematical Programming Computation, 2019)