CasADi is a symbolic framework for numeric optimization implementing automatic differentiation in forward and reverse modes on sparse matrix-valued computational graphs. It supports self-contained C-code generation and interfaces state-of-the-art codes such as SUNDIALS, IPOPT, etc. It can be used in C++, Python, or Matlab/Octave. CasADi's backbone is a symbolic framework implementing forward and reverse modes of AD on expression graphs to construct gradients, large-and-sparse Jacobians, and Hessians. These expression graphs, encapsulated in Function objects, can be evaluated in a virtual machine or exported to stand-alone C code. Initial value problems in ordinary or differential-algebraic equations (ODE/DAE) can be calculated using explicit or implicit Runge-Kutta methods or interfaces to IDAS/CVODES from the SUNDIALS suite. Derivatives are calculated using sensitivity equations, up to arbitrary order.

Features

  • Build efficient optimal control software, with minimal effort
  • CasADi is an open-source tool for nonlinear optimization and algorithmic differentiation
  • It facilitates rapid — yet efficient — implementation of different methods for numerical optimal control
  • Implements forward and reverse mode of AD on expression graphs to construct gradients, large-and-sparse Jacobians and Hessians
  • Documentation available
  • Examples available

Project Samples

Project Activity

See All Activity >

Categories

Libraries

License

GNU Library or Lesser General Public License version 2.0 (LGPLv2)

Follow CasADi

CasADi Web Site

Other Useful Business Software
$300 Free Credits to Build on Google Cloud Icon
$300 Free Credits to Build on Google Cloud

New customers can spin up VMs, build with AI, and query data at no cost.

Put your $300 in credit toward real workloads, then keep building with free monthly usage for 20+ products. No commitment and no charge until you upgrade.
Start Free
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of CasADi!

Additional Project Details

Programming Language

C++

Related Categories

C++ Libraries

Registered

2024-05-22