Logo ROOT   6.13/01
Reference Guide
List of all members | Public Member Functions | Protected Attributes | List of all members
TQpDataSparse Class Reference

Definition at line 59 of file TQpDataSparse.h.

Public Member Functions

 TQpDataSparse ()
 
 TQpDataSparse (Int_t nx, Int_t my, Int_t mz)
 Constructor. More...
 
 TQpDataSparse (TVectorD &c, TMatrixDSparse &Q, TVectorD &xlow, TVectorD &ixlow, TVectorD &xupp, TVectorD &ixupp, TMatrixDSparse &A, TVectorD &bA, TMatrixDSparse &C, TVectorD &clow, TVectorD &iclow, TVectorD &cupp, TVectorD &icupp)
 Constructor. More...
 
 TQpDataSparse (const TQpDataSparse &another)
 Copy constructor. More...
 
virtual ~TQpDataSparse ()
 
virtual void Amult (Double_t beta, TVectorD &y, Double_t alpha, const TVectorD &x)
 calculate y = beta*y + alpha*(fA*x) More...
 
virtual void ATransmult (Double_t beta, TVectorD &y, Double_t alpha, const TVectorD &x)
 calculate y = beta*y + alpha*(fA^T*x) More...
 
virtual void Cmult (Double_t beta, TVectorD &y, Double_t alpha, const TVectorD &x)
 calculate y = beta*y + alpha*(fC*x) More...
 
virtual void CTransmult (Double_t beta, TVectorD &y, Double_t alpha, const TVectorD &x)
 calculate y = beta*y + alpha*(fC^T*x) More...
 
virtual Double_t DataNorm ()
 Return the largest component of several vectors in the data class. More...
 
virtual void DataRandom (TVectorD &x, TVectorD &y, TVectorD &z, TVectorD &s)
 Choose randomly a QP problem. More...
 
virtual void GetDiagonalOfQ (TVectorD &dQ)
 Return in vector dq the diagonal of matrix fQ. More...
 
virtual Double_t ObjectiveValue (TQpVar *vars)
 Return value of the objective function. More...
 
TQpDataSparseoperator= (const TQpDataSparse &source)
 Assignment operator. More...
 
virtual void Print (Option_t *opt="") const
 Print class members. More...
 
virtual void PutAIntoAt (TMatrixDBase &M, Int_t row, Int_t col)
 Insert the constraint matrix A into the matrix M at index (row,col) for the fundamental linear system. More...
 
virtual void PutCIntoAt (TMatrixDBase &M, Int_t row, Int_t col)
 Insert the constraint matrix C into the matrix M at index (row,col) for the fundamental linear system. More...
 
virtual void PutQIntoAt (TMatrixDBase &M, Int_t row, Int_t col)
 Insert the Hessian Q into the matrix M at index (row,col) for the fundamental linear system. More...
 
virtual void Qmult (Double_t beta, TVectorD &y, Double_t alpha, const TVectorD &x)
 calculate y = beta*y + alpha*(fQ*x) More...
 
void SetNonZeros (Int_t nnzQ, Int_t nnzA, Int_t nnzC)
 Allocate space for the appropriate number of non-zeros in the matrices. More...
 
- Public Member Functions inherited from TQpDataBase
 TQpDataBase ()
 Default constructor. More...
 
 TQpDataBase (Int_t nx, Int_t my, Int_t mz)
 Constructor. More...
 
 TQpDataBase (const TQpDataBase &another)
 Copy constructor. More...
 
virtual ~TQpDataBase ()
 
virtual TVectorDGetBa ()
 
virtual TVectorDGetG ()
 
virtual TVectorDGetiSlowerBound ()
 
virtual TVectorDGetiSupperBound ()
 
virtual TVectorDGetiXlowerBound ()
 
virtual TVectorDGetiXupperBound ()
 
virtual TVectorDGetSlowerBound ()
 
virtual TVectorDGetSupperBound ()
 
virtual TVectorDGetXlowerBound ()
 
virtual TVectorDGetXupperBound ()
 
TQpDataBaseoperator= (const TQpDataBase &source)
 Assignment operator. More...
 

Protected Attributes

TMatrixDSparse fA
 
TMatrixDSparse fC
 
TMatrixDSparse fQ
 

Additional Inherited Members

- Public Attributes inherited from TQpDataBase
TVectorD fBa
 
TVectorD fCloBound
 
TVectorD fCloIndex
 
TVectorD fCupBound
 
TVectorD fCupIndex
 
TVectorD fG
 
Int_t fMy
 
Int_t fMz
 
Int_t fNx
 
TVectorD fXloBound
 
TVectorD fXloIndex
 
TVectorD fXupBound
 
TVectorD fXupIndex
 
- Static Protected Member Functions inherited from TQpDataBase
static void RandomlyChooseBoundedVariables (TVectorD &x, TVectorD &dualx, TVectorD &blx, TVectorD &ixlow, TVectorD &bux, TVectorD &ixupp, Double_t &ix, Double_t percentLowerOnly, Double_t percentUpperOnly, Double_t percentBound)
 Randomly choose x and its boundaries. More...
 

#include <TQpDataSparse.h>

Inheritance diagram for TQpDataSparse:
[legend]

Constructor & Destructor Documentation

◆ TQpDataSparse() [1/4]

TQpDataSparse::TQpDataSparse ( )
inline

Definition at line 71 of file TQpDataSparse.h.

◆ TQpDataSparse() [2/4]

TQpDataSparse::TQpDataSparse ( Int_t  nx,
Int_t  my,
Int_t  mz 
)

Constructor.

Definition at line 59 of file TQpDataSparse.cxx.

◆ TQpDataSparse() [3/4]

TQpDataSparse::TQpDataSparse ( TVectorD c,
TMatrixDSparse Q,
TVectorD xlow,
TVectorD ixlow,
TVectorD xupp,
TVectorD ixupp,
TMatrixDSparse A,
TVectorD bA,
TMatrixDSparse C,
TVectorD clow,
TVectorD iclow,
TVectorD cupp,
TVectorD icupp 
)

Constructor.

Definition at line 71 of file TQpDataSparse.cxx.

◆ TQpDataSparse() [4/4]

TQpDataSparse::TQpDataSparse ( const TQpDataSparse another)

Copy constructor.

Definition at line 116 of file TQpDataSparse.cxx.

◆ ~TQpDataSparse()

virtual TQpDataSparse::~TQpDataSparse ( )
inlinevirtual

Definition at line 81 of file TQpDataSparse.h.

Member Function Documentation

◆ Amult()

void TQpDataSparse::Amult ( Double_t  beta,
TVectorD y,
Double_t  alpha,
const TVectorD x 
)
virtual

calculate y = beta*y + alpha*(fA*x)

Implements TQpDataBase.

Definition at line 147 of file TQpDataSparse.cxx.

◆ ATransmult()

void TQpDataSparse::ATransmult ( Double_t  beta,
TVectorD y,
Double_t  alpha,
const TVectorD x 
)
virtual

calculate y = beta*y + alpha*(fA^T*x)

Implements TQpDataBase.

Definition at line 169 of file TQpDataSparse.cxx.

◆ Cmult()

void TQpDataSparse::Cmult ( Double_t  beta,
TVectorD y,
Double_t  alpha,
const TVectorD x 
)
virtual

calculate y = beta*y + alpha*(fC*x)

Implements TQpDataBase.

Definition at line 158 of file TQpDataSparse.cxx.

◆ CTransmult()

void TQpDataSparse::CTransmult ( Double_t  beta,
TVectorD y,
Double_t  alpha,
const TVectorD x 
)
virtual

calculate y = beta*y + alpha*(fC^T*x)

Implements TQpDataBase.

Definition at line 180 of file TQpDataSparse.cxx.

◆ DataNorm()

Double_t TQpDataSparse::DataNorm ( )
virtual

Return the largest component of several vectors in the data class.

Implements TQpDataBase.

Definition at line 191 of file TQpDataSparse.cxx.

◆ DataRandom()

void TQpDataSparse::DataRandom ( TVectorD x,
TVectorD y,
TVectorD z,
TVectorD s 
)
virtual

Choose randomly a QP problem.

Implements TQpDataBase.

Definition at line 315 of file TQpDataSparse.cxx.

◆ GetDiagonalOfQ()

void TQpDataSparse::GetDiagonalOfQ ( TVectorD dQ)
virtual

Return in vector dq the diagonal of matrix fQ.

Implements TQpDataBase.

Definition at line 292 of file TQpDataSparse.cxx.

◆ ObjectiveValue()

Double_t TQpDataSparse::ObjectiveValue ( TQpVar vars)
virtual

Return value of the objective function.

Implements TQpDataBase.

Definition at line 303 of file TQpDataSparse.cxx.

◆ operator=()

TQpDataSparse & TQpDataSparse::operator= ( const TQpDataSparse source)

Assignment operator.

Definition at line 356 of file TQpDataSparse.cxx.

◆ Print()

void TQpDataSparse::Print ( Option_t *  opt = "") const
virtual

Print class members.

Definition at line 236 of file TQpDataSparse.cxx.

◆ PutAIntoAt()

void TQpDataSparse::PutAIntoAt ( TMatrixDBase M,
Int_t  row,
Int_t  col 
)
virtual

Insert the constraint matrix A into the matrix M at index (row,col) for the fundamental linear system.

Implements TQpDataBase.

Definition at line 273 of file TQpDataSparse.cxx.

◆ PutCIntoAt()

void TQpDataSparse::PutCIntoAt ( TMatrixDBase M,
Int_t  row,
Int_t  col 
)
virtual

Insert the constraint matrix C into the matrix M at index (row,col) for the fundamental linear system.

Implements TQpDataBase.

Definition at line 283 of file TQpDataSparse.cxx.

◆ PutQIntoAt()

void TQpDataSparse::PutQIntoAt ( TMatrixDBase M,
Int_t  row,
Int_t  col 
)
virtual

Insert the Hessian Q into the matrix M at index (row,col) for the fundamental linear system.

Implements TQpDataBase.

Definition at line 263 of file TQpDataSparse.cxx.

◆ Qmult()

void TQpDataSparse::Qmult ( Double_t  beta,
TVectorD y,
Double_t  alpha,
const TVectorD x 
)
virtual

calculate y = beta*y + alpha*(fQ*x)

Implements TQpDataBase.

Definition at line 136 of file TQpDataSparse.cxx.

◆ SetNonZeros()

void TQpDataSparse::SetNonZeros ( Int_t  nnzQ,
Int_t  nnzA,
Int_t  nnzC 
)

Allocate space for the appropriate number of non-zeros in the matrices.

Definition at line 125 of file TQpDataSparse.cxx.

Member Data Documentation

◆ fA

TMatrixDSparse TQpDataSparse::fA
protected

Definition at line 66 of file TQpDataSparse.h.

◆ fC

TMatrixDSparse TQpDataSparse::fC
protected

Definition at line 67 of file TQpDataSparse.h.

◆ fQ

TMatrixDSparse TQpDataSparse::fQ
protected

Definition at line 65 of file TQpDataSparse.h.

Libraries for TQpDataSparse:
[legend]

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