80 Double_t &ustep_elt,
int& first_or_second);
#define ClassDefOverride(name, id)
Mother of all ROOT objects.
Class containing the variables for the general QP formulation.
virtual Bool_t ValidNonZeroPattern()
Check that the variables conform to the non-zero indices.
virtual Double_t Violation()
The amount by which the current variables violate the non-negativity constraints.
Int_t fNComplementaryVariables
TQpVar & operator=(const TQpVar &source)
Assignment operator.
TQpVar()
Default constructor.
virtual void InteriorPoint(Double_t alpha, Double_t beta)
Sets components of (u,t,v,w) to alpha and of (lambda,pi,phi,gamma) to beta.
static Double_t StepBound(TVectorD &v, TVectorD &dir, Double_t maxStep)
Find the maximum stepsize of v in direction dir before violating the nonnegativity constraints.
virtual Double_t MuStep(TQpVar *step, Double_t alpha)
Compute the complementarity gap resulting from a step of length "alpha" along direction "step".
virtual Double_t GetMu()
compute complementarity gap, obtained by taking the inner product of the complementary vectors and di...
virtual Double_t Norm1()
Return the sum of the vector-norm1's.
virtual Double_t NormInf()
Return the sum of the vector-normInf's.
virtual void ShiftBoundVariables(Double_t alpha, Double_t beta)
Add alpha to components of (u,t,v,w) and beta to components of (lambda,pi,phi,gamma)
static Double_t FindBlockingSub(Int_t n, Double_t *w, Int_t incw, Double_t *wstep, Int_t incwstep, Double_t *u, Int_t incu, Double_t *ustep, Int_t incustep, Double_t maxStep, Double_t &w_elt, Double_t &wstep_elt, Double_t &u_elt, Double_t &ustep_elt, Int_t &first_or_second)
See FindBlocking function.
void Print(Option_t *option="") const override
Print class members.
virtual Bool_t IsInteriorPoint()
Is the current position an interior point ?
static Double_t FindBlocking(TVectorD &w, TVectorD &wstep, TVectorD &u, TVectorD &ustep, Double_t maxStep, Double_t &w_elt, Double_t &wstep_elt, Double_t &u_elt, Double_t &ustep_elt, int &first_or_second)
See other FindBlocking function.
virtual void Negate()
Perform a "negate" operation on all data vectors : x = -x.
virtual void Saxpy(TQpVar *b, Double_t alpha)
Perform a "saxpy" operation on all data vectors : x += alpha*y.