hops
Public Member Functions | List of all members
hops::LinearProgramGurobiImpl Class Reference

#include <LinearProgramGurobiImpl.hpp>

Inheritance diagram for hops::LinearProgramGurobiImpl:
Inheritance graph
Collaboration diagram for hops::LinearProgramGurobiImpl:
Collaboration graph

Public Member Functions

 LinearProgramGurobiImpl (const Eigen::MatrixXd &A, const Eigen::VectorXd &b)
 
LinearProgramSolution solve (const Eigen::VectorXd &) const override
 
std::tuple< Eigen::MatrixXd, Eigen::VectorXd > removeRedundantConstraints (double) override
 Removes redundant constraints and returns system matrices. Changes to the system matrices are reflected internally in the LP solver. More...
 
LinearProgramSolution computeChebyshevCenter () const override
 
std::vector< long > computeUnconstrainedDimensions () const override
 
std::tuple< Eigen::MatrixXd, Eigen::VectorXd > addBoxConstraintsToUnconstrainedDimensions (double, double) override
 Adds box constraints to unconstrained dimensions and returns system matrices. Changes to the system matrices are reflected internally in the LP solver. More...
 
- Public Member Functions inherited from hops::LinearProgram
 LinearProgram (Eigen::MatrixXd a, Eigen::VectorXd b)
 
virtual ~LinearProgram ()=default
 
const Eigen::MatrixXd & getA () const
 
const Eigen::VectorXd & getB () const
 

Additional Inherited Members

- Protected Attributes inherited from hops::LinearProgram
Eigen::MatrixXd A
 
Eigen::VectorXd b
 

Constructor & Destructor Documentation

◆ LinearProgramGurobiImpl()

hops::LinearProgramGurobiImpl::LinearProgramGurobiImpl ( const Eigen::MatrixXd &  A,
const Eigen::VectorXd &  b 
)
inline

Member Function Documentation

◆ addBoxConstraintsToUnconstrainedDimensions()

std::tuple<Eigen::MatrixXd, Eigen::VectorXd> hops::LinearProgramGurobiImpl::addBoxConstraintsToUnconstrainedDimensions ( double  lb,
double  ub 
)
inlineoverridevirtual

Adds box constraints to unconstrained dimensions and returns system matrices. Changes to the system matrices are reflected internally in the LP solver.

Parameters
lb
ub
Returns
A and b

Implements hops::LinearProgram.

◆ computeChebyshevCenter()

LinearProgramSolution hops::LinearProgramGurobiImpl::computeChebyshevCenter ( ) const
inlineoverridevirtual

Implements hops::LinearProgram.

◆ computeUnconstrainedDimensions()

std::vector<long> hops::LinearProgramGurobiImpl::computeUnconstrainedDimensions ( ) const
inlineoverridevirtual

dimensions with missing upper boundaries are counted starting from 1 upwards. dimensions with missing lower boundaries are counted starting from -1 downwards.

Returns

Implements hops::LinearProgram.

◆ removeRedundantConstraints()

std::tuple<Eigen::MatrixXd, Eigen::VectorXd> hops::LinearProgramGurobiImpl::removeRedundantConstraints ( double  tolerance)
inlineoverridevirtual

Removes redundant constraints and returns system matrices. Changes to the system matrices are reflected internally in the LP solver.

Parameters
tolerance
Returns
A and b

Implements hops::LinearProgram.

◆ solve()

LinearProgramSolution hops::LinearProgramGurobiImpl::solve ( const Eigen::VectorXd &  ) const
inlineoverridevirtual

Implements hops::LinearProgram.


The documentation for this class was generated from the following file: