Tetrapod Project
miqp::quadruped Namespace Reference

Classes

struct  DecVars
 
struct  DecVars_res_raw
 
struct  DecVars_res
 

Enumerations

enum  Leg { front_left , front_right , rear_left , rear_right }
 

Functions

DecVars add_decision_variables (drake::solvers::MathematicalProgram &prog, Terrain &terrain, int n_steps, int n_legs)
 
void set_initial_and_goal_position (drake::solvers::MathematicalProgram &prog, int n_steps, double length_legs, Leg step_sequence[], Terrain &terrain, DecVars &decision_variables, bool enforce_goal_hard=true)
 
void geometry_limits (drake::solvers::MathematicalProgram &prog, int n_steps, int n_legs, double length_legs, Leg step_sequence[], Terrain &terrain, double bbox_len, DecVars &decision_variables)
 
void theta_limits (drake::solvers::MathematicalProgram &prog, int n_steps, int n_legs, DecVars &decision_variables)
 
void relative_position_limits (drake::solvers::MathematicalProgram &prog, int n_steps, int n_legs, double step_span, double step_height, DecVars &decision_variables)
 
void one_stone_per_foot (drake::solvers::MathematicalProgram &prog, int n_steps, DecVars &decision_variables)
 
Eigen::Vector4d get_big_M (Terrain terrain)
 
void foot_in_stepping_stone (drake::solvers::MathematicalProgram &prog, Terrain &terrain, int n_steps, DecVars &decision_variables)
 
void minimize_step_length (drake::solvers::MathematicalProgram &prog, int n_steps, int n_legs, DecVars &decision_variables)
 
void minimize_remaining_length (drake::solvers::MathematicalProgram &prog, Terrain &terrain, int n_steps, int n_legs, DecVars &decision_variables)
 
Eigen::Array< Eigen::MatrixXd, Eigen::Dynamic, 1 > get_uncompressed_arrays (Eigen::MatrixXd &arr, Eigen::MatrixXd &sequence_offset, int n_steps, int n_legs, Leg step_sequence[])
 
DecVars_res get_decvars_res (DecVars_res_raw &decision_variables_raw, int n_steps, int n_legs, Leg step_sequence[])
 
void writeDecVarsToFile (DecVars_res &decision_variables, std::string base_name="footstep_planner")
 
void writeMatToFile (Eigen::MatrixXd &mat, std::string filename)
 

Enumeration Type Documentation

◆ Leg

Enumerator
front_left 
front_right 
rear_left 
rear_right 

Definition at line 26 of file miqp_quadruped.h.

Function Documentation

◆ add_decision_variables()

DecVars miqp::quadruped::add_decision_variables ( drake::solvers::MathematicalProgram &  prog,
Terrain terrain,
int  n_steps,
int  n_legs 
)

Definition at line 22 of file miqp_quadruped.cpp.

◆ set_initial_and_goal_position()

void miqp::quadruped::set_initial_and_goal_position ( drake::solvers::MathematicalProgram &  prog,
int  n_steps,
double  length_legs,
Leg  step_sequence[],
Terrain terrain,
DecVars decision_variables,
bool  enforce_goal_hard = true 
)

Definition at line 47 of file miqp_quadruped.cpp.

◆ geometry_limits()

void miqp::quadruped::geometry_limits ( drake::solvers::MathematicalProgram &  prog,
int  n_steps,
int  n_legs,
double  length_legs,
Leg  step_sequence[],
Terrain terrain,
double  bbox_len,
DecVars decision_variables 
)

Definition at line 190 of file miqp_quadruped.cpp.

◆ theta_limits()

void miqp::quadruped::theta_limits ( drake::solvers::MathematicalProgram &  prog,
int  n_steps,
int  n_legs,
DecVars decision_variables 
)

Definition at line 132 of file miqp_quadruped.cpp.

◆ relative_position_limits()

void miqp::quadruped::relative_position_limits ( drake::solvers::MathematicalProgram &  prog,
int  n_steps,
int  n_legs,
double  step_span,
double  step_height,
DecVars decision_variables 
)

Definition at line 230 of file miqp_quadruped.cpp.

◆ one_stone_per_foot()

void miqp::quadruped::one_stone_per_foot ( drake::solvers::MathematicalProgram &  prog,
int  n_steps,
DecVars decision_variables 
)

Definition at line 250 of file miqp_quadruped.cpp.

◆ get_big_M()

Eigen::Vector4d miqp::quadruped::get_big_M ( Terrain  terrain)

Definition at line 257 of file miqp_quadruped.cpp.

◆ foot_in_stepping_stone()

void miqp::quadruped::foot_in_stepping_stone ( drake::solvers::MathematicalProgram &  prog,
Terrain terrain,
int  n_steps,
DecVars decision_variables 
)

Definition at line 274 of file miqp_quadruped.cpp.

◆ minimize_step_length()

void miqp::quadruped::minimize_step_length ( drake::solvers::MathematicalProgram &  prog,
int  n_steps,
int  n_legs,
DecVars decision_variables 
)

Definition at line 308 of file miqp_quadruped.cpp.

◆ minimize_remaining_length()

void miqp::quadruped::minimize_remaining_length ( drake::solvers::MathematicalProgram &  prog,
Terrain terrain,
int  n_steps,
int  n_legs,
DecVars decision_variables 
)

Definition at line 322 of file miqp_quadruped.cpp.

◆ get_uncompressed_arrays()

Eigen::Array< Eigen::MatrixXd, Eigen::Dynamic, 1 > miqp::quadruped::get_uncompressed_arrays ( Eigen::MatrixXd &  arr,
Eigen::MatrixXd &  sequence_offset,
int  n_steps,
int  n_legs,
Leg  step_sequence[] 
)

Definition at line 337 of file miqp_quadruped.cpp.

◆ get_decvars_res()

DecVars_res miqp::quadruped::get_decvars_res ( DecVars_res_raw decision_variables_raw,
int  n_steps,
int  n_legs,
Leg  step_sequence[] 
)

Definition at line 382 of file miqp_quadruped.cpp.

◆ writeDecVarsToFile()

void miqp::quadruped::writeDecVarsToFile ( DecVars_res decision_variables,
std::string  base_name = "footstep_planner" 
)

Definition at line 436 of file miqp_quadruped.cpp.

◆ writeMatToFile()

void miqp::quadruped::writeMatToFile ( Eigen::MatrixXd &  mat,
std::string  filename 
)

Definition at line 415 of file miqp_quadruped.cpp.