43 #ifndef ROOT_TQpDataDens
44 #define ROOT_TQpDataDens
62 class TQpDataDens :
public TQpDataBase
76 TQpDataDens(Int_t nx,Int_t my,Int_t mz);
79 TQpDataDens(TVectorD &c,TMatrixDSym &Q,TVectorD &xlow,TVectorD &ixlow,TVectorD &xupp,
80 TVectorD &ixupp,TMatrixD &A,TVectorD &bA,TMatrixD &C,TVectorD &clow,
81 TVectorD &iclow,TVectorD &cupp,TVectorD &icupp);
82 TQpDataDens(
const TQpDataDens &another);
84 virtual ~TQpDataDens() {}
86 virtual void PutQIntoAt(TMatrixDBase &M,Int_t row,Int_t col);
89 virtual void PutAIntoAt(TMatrixDBase &M,Int_t row,Int_t col);
92 virtual void PutCIntoAt(TMatrixDBase &M,Int_t row,Int_t col);
96 virtual void Qmult (Double_t beta,TVectorD& y,Double_t alpha,
const TVectorD& x);
98 virtual void Amult (Double_t beta,TVectorD& y,Double_t alpha,
const TVectorD& x);
100 virtual void Cmult (Double_t beta,TVectorD& y,Double_t alpha,
const TVectorD& x);
102 virtual void ATransmult(Double_t beta,TVectorD& y,Double_t alpha,
const TVectorD& x);
104 virtual void CTransmult(Double_t beta,TVectorD& y,Double_t alpha,
const TVectorD& x);
107 virtual void GetDiagonalOfQ(TVectorD &dQ);
109 virtual Double_t DataNorm();
110 virtual void DataRandom(TVectorD &x,TVectorD &y,TVectorD &z,TVectorD &s);
113 virtual void Print(Option_t *opt=
"")
const;
115 virtual Double_t ObjectiveValue(TQpVar *vars);
117 TQpDataDens &operator= (
const TQpDataDens &source);
119 ClassDef(TQpDataDens,1)