All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members
blaze::MixedLCP Struct Reference

A mixed linear complementarity problem (MLCP) data structure.The LCP class represent a mixed linear complementarity problem of the form. More...

#include <MixedLCP.h>

Public Member Functions

Utility functions
size_t size () const
 Returns the size of the mixed linear complementarity problem.
 
size_t equations () const
 Returns the number of equations of the MLCP.
 
size_t constraints () const
 Returns the number of constraints of the MLCP.
 
void project (size_t index)
 Projects the unknown at the given index on the solution range.
 
real lbound (size_t index) const
 Returns the lower bound of the unknown at the given index.
 
real ubound (size_t index) const
 Returns the upper bound of the unknown at the given index.
 
real residual (size_t index) const
 Calculates the residual of the unknown at the given index.
 
real residual () const
 Calculates the maximum norm of the residual of the mixed LCP.
 

Public Attributes

Member variables
CMatMxN A11_
 The upper left part of the system matrix $ A_{11} $.
 
CMatMxN A12_
 The upper right part of the system matrix $ A_{12} $.
 
CMatMxN A21_
 The lower left part of the system matrix $ A_{21} $.
 
CMatMxN A22_
 The lower right part of the system matrix $ A_{22} $.
 
VecN b1_
 The upper part of the right-hand side vector $ b_{1} $.
 
VecN b2_
 The lower part of the right-hand side vector $ b_{2} $.
 
VecN x1_
 The upper part of the vector of unknowns $ x_{1} $.
 
VecN x2_
 The lower part of the vector of unknowns $ x_{2} $.
 

Detailed Description

A mixed linear complementarity problem (MLCP) data structure.

The LCP class represent a mixed linear complementarity problem of the form.

\[ \left(\begin{array}{*{2}{c}} A_{11} & A_{12} \\ A_{21} & A_{22} \\ \end{array}\right) \cdot \left(\begin{array}{*{1}{c}} x_{1} \\ x_{2} \\ \end{array}\right) + \left(\begin{array}{*{1}{c}} b_{1} \\ b_{2} \\ \end{array}\right) \leq \left(\begin{array}{*{1}{c}} 0 \\ 0 \\ \end{array}\right) \quad\perp\quad \left(\begin{array}{*{1}{c}} x_{1} \\ x_{2} \\ \end{array}\right) \geq \left(\begin{array}{*{1}{c}} 0 \\ 0 \\ \end{array}\right) \]


Member Function Documentation

size_t blaze::MixedLCP::constraints ( ) const
inline

Returns the number of constraints of the MLCP.

Returns
The number of constraints.
size_t blaze::MixedLCP::equations ( ) const
inline

Returns the number of equations of the MLCP.

Returns
The number of equations.
real blaze::MixedLCP::lbound ( size_t  index) const
inline

Returns the lower bound of the unknown at the given index.

Parameters
indexAccess index. The index has to be in the range $ [0..size) $.
Returns
void
void blaze::MixedLCP::project ( size_t  index)
inline

Projects the unknown at the given index on the solution range.

Parameters
indexAccess index. The index has to be in the range $ [0..size) $.
Returns
void
real blaze::MixedLCP::residual ( size_t  index) const
inline

Calculates the residual of the unknown at the given index.

Parameters
indexAccess index. The index has to be in the range $ [0..size) $.
Returns
The residual at index index.
real blaze::MixedLCP::residual ( ) const
inline

Calculates the maximum norm of the residual of the mixed LCP.

Returns
The maximum norm of the global residual of the MLCP.
size_t blaze::MixedLCP::size ( ) const
inline

Returns the size of the mixed linear complementarity problem.

Returns
The actual size of the MLCP.
real blaze::MixedLCP::ubound ( size_t  index) const
inline

Returns the upper bound of the unknown at the given index.

Parameters
indexAccess index. The index has to be in the range $ [0..size) $.
Returns
void

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