WPILibC++ 2025.1.1
Loading...
Searching...
No Matches
OCPSolver.hpp File Reference
#include <stdint.h>
#include <chrono>
#include <utility>
#include "sleipnir/autodiff/VariableMatrix.hpp"
#include "sleipnir/optimization/OptimizationProblem.hpp"
#include "sleipnir/util/Assert.hpp"
#include "sleipnir/util/Concepts.hpp"
#include "sleipnir/util/FunctionRef.hpp"
#include "sleipnir/util/SymbolExports.hpp"

Go to the source code of this file.

Classes

class  sleipnir::OCPSolver
 This class allows the user to pose and solve a constrained optimal control problem (OCP) in a variety of ways. More...
 

Namespaces

namespace  sleipnir
 

Enumerations

enum class  sleipnir::TranscriptionMethod : uint8_t { sleipnir::kDirectTranscription , sleipnir::kDirectCollocation , sleipnir::kSingleShooting }
 Enum describing an OCP transcription method. More...
 
enum class  sleipnir::DynamicsType : uint8_t { sleipnir::kExplicitODE , sleipnir::kDiscrete }
 Enum describing a type of system dynamics constraints. More...
 
enum class  sleipnir::TimestepMethod : uint8_t { sleipnir::kFixed , sleipnir::kVariable , sleipnir::kVariableSingle }
 Enum describing the type of system timestep. More...
 

Functions

template<typename F , typename State , typename Input , typename Time >
State sleipnir::RK4 (F &&f, State x, Input u, Time t0, Time dt)
 Performs 4th order Runge-Kutta integration of dx/dt = f(t, x, u) for dt.