Drake
Drake C++ Documentation
variable.h File Reference
#include <cstddef>
#include <functional>
#include <memory>
#include <ostream>
#include <string>
#include <Eigen/Core>
#include "drake/common/drake_copyable.h"
#include "drake/common/eigen_types.h"
#include "drake/common/fmt_ostream.h"
#include "drake/common/hash.h"
#include "drake/common/reset_after_move.h"
Include dependency graph for variable.h:
This graph shows which files directly or indirectly include this file:

Classes

class  Variable
 Represents a symbolic variable. More...
 
struct  hash< drake::symbolic::Variable >
 
struct  less< drake::symbolic::Variable >
 
struct  equal_to< drake::symbolic::Variable >
 
struct  formatter< drake::symbolic::Variable >
 
struct  formatter< drake::symbolic::Variable::Type >
 

Namespaces

 drake
 
 drake::symbolic
 
 fmt
 

Functions

std::ostream & operator<< (std::ostream &os, Variable::Type type)
 
MatrixX< Variable > MakeMatrixVariable (int rows, int cols, const std::string &name, Variable::Type type=Variable::Type::CONTINUOUS)
 Creates a dynamically-sized Eigen matrix of symbolic variables. More...
 
MatrixX< Variable > MakeMatrixBooleanVariable (int rows, int cols, const std::string &name)
 Creates a dynamically-sized Eigen matrix of symbolic Boolean variables. More...
 
MatrixX< Variable > MakeMatrixBinaryVariable (int rows, int cols, const std::string &name)
 Creates a dynamically-sized Eigen matrix of symbolic binary variables. More...
 
MatrixX< Variable > MakeMatrixContinuousVariable (int rows, int cols, const std::string &name)
 Creates a dynamically-sized Eigen matrix of symbolic continuous variables. More...
 
MatrixX< Variable > MakeMatrixIntegerVariable (int rows, int cols, const std::string &name)
 Creates a dynamically-sized Eigen matrix of symbolic integer variables. More...
 
template<int rows, int cols>
Eigen::Matrix< Variable, rows, cols > MakeMatrixVariable (const std::string &name, Variable::Type type=Variable::Type::CONTINUOUS)
 Creates a static-sized Eigen matrix of symbolic variables. More...
 
template<int rows, int cols>
Eigen::Matrix< Variable, rows, cols > MakeMatrixBooleanVariable (const std::string &name)
 Creates a static-sized Eigen matrix of symbolic Boolean variables. More...
 
template<int rows, int cols>
Eigen::Matrix< Variable, rows, cols > MakeMatrixBinaryVariable (const std::string &name)
 Creates a static-sized Eigen matrix of symbolic binary variables. More...
 
template<int rows, int cols>
Eigen::Matrix< Variable, rows, cols > MakeMatrixContinuousVariable (const std::string &name)
 Creates a static-sized Eigen matrix of symbolic continuous variables. More...
 
template<int rows, int cols>
Eigen::Matrix< Variable, rows, cols > MakeMatrixIntegerVariable (const std::string &name)
 Creates a static-sized Eigen matrix of symbolic integer variables. More...
 
VectorX< Variable > MakeVectorVariable (int rows, const std::string &name, Variable::Type type=Variable::Type::CONTINUOUS)
 Creates a dynamically-sized Eigen vector of symbolic variables. More...
 
VectorX< Variable > MakeVectorBooleanVariable (int rows, const std::string &name)
 Creates a dynamically-sized Eigen vector of symbolic Boolean variables. More...
 
VectorX< Variable > MakeVectorBinaryVariable (int rows, const std::string &name)
 Creates a dynamically-sized Eigen vector of symbolic binary variables. More...
 
VectorX< Variable > MakeVectorContinuousVariable (int rows, const std::string &name)
 Creates a dynamically-sized Eigen vector of symbolic continuous variables. More...
 
VectorX< Variable > MakeVectorIntegerVariable (int rows, const std::string &name)
 Creates a dynamically-sized Eigen vector of symbolic integer variables. More...
 
template<int rows>
Eigen::Matrix< Variable, rows, 1 > MakeVectorVariable (const std::string &name, Variable::Type type=Variable::Type::CONTINUOUS)
 Creates a static-sized Eigen vector of symbolic variables. More...
 
template<int rows>
Eigen::Matrix< Variable, rows, 1 > MakeVectorBooleanVariable (const std::string &name)
 Creates a static-sized Eigen vector of symbolic Boolean variables. More...
 
template<int rows>
Eigen::Matrix< Variable, rows, 1 > MakeVectorBinaryVariable (const std::string &name)
 Creates a static-sized Eigen vector of symbolic binary variables. More...
 
template<int rows>
Eigen::Matrix< Variable, rows, 1 > MakeVectorContinuousVariable (const std::string &name)
 Creates a static-sized Eigen vector of symbolic continuous variables. More...
 
template<int rows>
Eigen::Matrix< Variable, rows, 1 > MakeVectorIntegerVariable (const std::string &name)
 Creates a static-sized Eigen vector of symbolic integer variables. More...
 
template<typename DerivedA , typename DerivedB >
std::enable_if_t< is_eigen_scalar_same< DerivedA, Variable >::value &&is_eigen_scalar_same< DerivedB, Variable >::value, bool > CheckStructuralEquality (const DerivedA &m1, const DerivedB &m2)
 Checks if two Eigen::Matrix<Variable> m1 and m2 are structurally equal. More...