Sleipnir C++ API
Loading...
Searching...
No Matches
slp::FilterEntry< Scalar > Struct Template Reference

#include <sleipnir/optimization/solver/util/filter.hpp>

Public Types

using DenseVector = Eigen::Vector< Scalar, Eigen::Dynamic >
 Type alias for dense vector.
 

Public Member Functions

constexpr FilterEntry (Scalar cost, Scalar constraint_violation)
 
 FilterEntry (Scalar f)
 
 FilterEntry (Scalar f, const DenseVector &c_e)
 
 FilterEntry (Scalar f, DenseVector &s, const DenseVector &c_e, const DenseVector &c_i, Scalar μ)
 
constexpr bool dominated_by (const FilterEntry< Scalar > &entry) const
 

Public Attributes

Scalar cost {0}
 The cost function's value.
 
Scalar constraint_violation {0}
 The constraint violation.
 

Detailed Description

template<typename Scalar>
struct slp::FilterEntry< Scalar >

Filter entry consisting of cost and constraint violation.

Template Parameters
ScalarScalar type.

Constructor & Destructor Documentation

◆ FilterEntry() [1/4]

template<typename Scalar >
constexpr slp::FilterEntry< Scalar >::FilterEntry ( Scalar  cost,
Scalar  constraint_violation 
)
inlineconstexpr

Constructs a FilterEntry.

Parameters
costThe cost function's value.
constraint_violationThe constraint violation.

◆ FilterEntry() [2/4]

template<typename Scalar >
slp::FilterEntry< Scalar >::FilterEntry ( Scalar  f)
inlineexplicit

Constructs a Newton's method filter entry.

Parameters
fThe cost function value.

◆ FilterEntry() [3/4]

template<typename Scalar >
slp::FilterEntry< Scalar >::FilterEntry ( Scalar  f,
const DenseVector c_e 
)
inline

Constructs a Sequential Quadratic Programming filter entry.

Parameters
fThe cost function value.
c_eThe equality constraint values (nonzero means violation).

◆ FilterEntry() [4/4]

template<typename Scalar >
slp::FilterEntry< Scalar >::FilterEntry ( Scalar  f,
DenseVector s,
const DenseVector c_e,
const DenseVector c_i,
Scalar  μ 
)
inline

Constructs an interior-point method filter entry.

Parameters
fThe cost function value.
sThe inequality constraint slack variables.
c_eThe equality constraint values (nonzero means violation).
c_iThe inequality constraint values (negative means violation).
μThe barrier parameter.

Member Function Documentation

◆ dominated_by()

template<typename Scalar >
constexpr bool slp::FilterEntry< Scalar >::dominated_by ( const FilterEntry< Scalar > &  entry) const
inlineconstexpr

Returns true if this filter entry is dominated by another.

Parameters
entryThe other entry.
Returns
True if this filter entry is dominated by another.

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