> ## Documentation Index
> Fetch the complete documentation index at: https://scvxgen.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Introduction

Welcome to the home of **$\text{{\footnotesize{SC}}{\small{vx}}{\footnotesize{GEN}}}$**.

$\text{{\footnotesize{SC}}{\small{vx}}{\footnotesize{GEN}}}$ is a fast solver for general-purpose continuous-time trajectory optimization with automatic custom code generation.

## Capabilities

<img className="block dark:hidden" src="https://mintcdn.com/scvxgen/zG2W2985RyzfKWrf/images/scvxgen_features.svg?fit=max&auto=format&n=zG2W2985RyzfKWrf&q=85&s=8853d7824bd5337be3291a08055fe97e" alt="Light" width="100%" data-path="images/scvxgen_features.svg" />

<img className="hidden dark:block" src="https://mintcdn.com/scvxgen/zG2W2985RyzfKWrf/images/scvxgen_features.svg?fit=max&auto=format&n=zG2W2985RyzfKWrf&q=85&s=8853d7824bd5337be3291a08055fe97e" alt="Dark" width="100%" data-path="images/scvxgen_features.svg" />

$\text{{\footnotesize{SC}}{\small{vx}}{\footnotesize{GEN}}}$ was designed from the ground up with the express goal of being easy to use, while also being highly capable and performant. Some of its features include:

* General-purpose trajectory optimization:
  * **free-final-time** problems
  * **dynamically feasible** trajectories
  * **continuous-time** constraint satisfaction

* User-friendly interface in Python

* Generation of highly readable C (or CUDA) code with static memory allocations

The only requirement is that the dynamics and constraints are at least once differentiable everywhere, with continuous first derivatives (i.e., $\mathcal{C}^1$).

## Etymology

**$\text{{\footnotesize{SC}}{\small{vx}}{\footnotesize{GEN}}}$** derives its name from **s**uccessive **c**on**v**e**x**ification ([$\text{{\footnotesize{SC}}{\small{vx}}}$](https://arxiv.org/pdf/2404.16826)) and custom code **gen**eration (**$\text{{\footnotesize{GEN}}}$**).
