Bonmin 1.8.9
Loading...
Searching...
No Matches
Bonmin::QuadRow Class Reference

Stores a quadratic row of the form l < c + ax + x^T Q x < u. More...

#include <BonQuadRow.hpp>

Public Member Functions

 QuadRow ()
 Default constructor.
 
 QuadRow (const QuadRow &other)
 Copy constructor.
 
QuadRowoperator= (const QuadRow &rhs)
 Assignment operator.
 
 QuadRow (const QuadCut &cut)
 Constructor from a quadratic cut.
 
QuadRowoperator= (const QuadCut &rhs)
 Assignment form a quadrattic &cut.
 
 QuadRow (const OsiRowCut &cut)
 Constructor from a linear cut.
 
QuadRowoperator= (const OsiRowCut &rhs)
 Assignment form a linear &cut.
 
double eval_f (const double *x, bool new_x)
 Evaluate quadratic form.
 
int nnz_grad ()
 Get number of non-zeroes in the gradiant.
 
void gradiant_struct (const int nnz, int *indices, bool offset)
 Get structure of gradiant.
 
void eval_grad (const int nnz, const double *x, bool new_x, double *values)
 Evaluate gradiant of quadratic form.
 
int nnz_hessian ()
 number of non-zeroes in hessian.
 
bool isLinear ()
 Says if the constraint is linear.
 
void eval_hessian (double lambda, double *values)
 Return hessian value (i.e.
 
void add_to_hessian (AdjustableMat &H, bool offset)
 Add row to a bigger hessian.
 
void remove_from_hessian (AdjustableMat &H)
 Remove row from a bigger hessian.
 
void print ()
 Print quadratic constraint.
 

Detailed Description

Stores a quadratic row of the form l < c + ax + x^T Q x < u.

Does computation usefull for nlp-solver. It can only be initialized from a QuadCut.

Definition at line 32 of file BonQuadRow.hpp.

Constructor & Destructor Documentation

◆ QuadRow() [1/4]

Bonmin::QuadRow::QuadRow ( )

Default constructor.

◆ QuadRow() [2/4]

Bonmin::QuadRow::QuadRow ( const QuadRow & other)

Copy constructor.

◆ QuadRow() [3/4]

Bonmin::QuadRow::QuadRow ( const QuadCut & cut)

Constructor from a quadratic cut.

◆ QuadRow() [4/4]

Bonmin::QuadRow::QuadRow ( const OsiRowCut & cut)

Constructor from a linear cut.

Member Function Documentation

◆ operator=() [1/3]

QuadRow & Bonmin::QuadRow::operator= ( const QuadRow & rhs)

Assignment operator.

◆ operator=() [2/3]

QuadRow & Bonmin::QuadRow::operator= ( const QuadCut & rhs)

Assignment form a quadrattic &cut.

◆ operator=() [3/3]

QuadRow & Bonmin::QuadRow::operator= ( const OsiRowCut & rhs)

Assignment form a linear &cut.

◆ eval_f()

double Bonmin::QuadRow::eval_f ( const double * x,
bool new_x )

Evaluate quadratic form.

◆ nnz_grad()

int Bonmin::QuadRow::nnz_grad ( )

Get number of non-zeroes in the gradiant.

◆ gradiant_struct()

void Bonmin::QuadRow::gradiant_struct ( const int nnz,
int * indices,
bool offset )

Get structure of gradiant.

◆ eval_grad()

void Bonmin::QuadRow::eval_grad ( const int nnz,
const double * x,
bool new_x,
double * values )

Evaluate gradiant of quadratic form.

◆ nnz_hessian()

int Bonmin::QuadRow::nnz_hessian ( )
inline

number of non-zeroes in hessian.

Definition at line 66 of file BonQuadRow.hpp.

◆ isLinear()

bool Bonmin::QuadRow::isLinear ( )
inline

Says if the constraint is linear.

Definition at line 70 of file BonQuadRow.hpp.

◆ eval_hessian()

void Bonmin::QuadRow::eval_hessian ( double lambda,
double * values )

Return hessian value (i.e.

Q_).

◆ add_to_hessian()

void Bonmin::QuadRow::add_to_hessian ( AdjustableMat & H,
bool offset )

Add row to a bigger hessian.

◆ remove_from_hessian()

void Bonmin::QuadRow::remove_from_hessian ( AdjustableMat & H)

Remove row from a bigger hessian.

◆ print()

void Bonmin::QuadRow::print ( )

Print quadratic constraint.


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