library: libQuadp #include "TQpSolverBase.h" |
TQpSolverBase
class description - header file - source file - inheritance tree (.pdf)
This is an abstract class, constructors will not be documented.
Look at the header to check for available constructors.
public:
virtual ~TQpSolverBase()
static TClass* Class()
Double_t DataNorm()
virtual void DefMonitor(TQpDataBase* data, TQpVar* vars, TQpResidual* resids, Double_t alpha, Double_t sigma, Int_t i, Double_t mu, Int_t stop_code, Int_t level)
virtual void DefStart(TQpProbBase* formulation, TQpVar* iterate, TQpDataBase* prob, TQpResidual* resid, TQpVar* step)
virtual Int_t DefStatus(TQpDataBase* data, TQpVar* vars, TQpResidual* resids, Int_t i, Double_t mu, Int_t level)
virtual void DoMonitor(TQpDataBase* data, TQpVar* vars, TQpResidual* resids, Double_t alpha, Double_t sigma, Int_t i, Double_t mu, Int_t stop_code, Int_t level)
virtual Int_t DoStatus(TQpDataBase* data, TQpVar* vars, TQpResidual* resids, Int_t i, Double_t mu, Int_t level)
virtual void DumbStart(TQpProbBase* formulation, TQpVar* iterate, TQpDataBase* prob, TQpResidual* resid, TQpVar* step)
virtual Double_t FinalStepLength(TQpVar* iterate, TQpVar* step)
Double_t GetArTol()
TQpLinSolverBase* GetLinearSystem()
Double_t GetMuTol()
virtual TClass* IsA() const
TQpSolverBase& operator=(const TQpSolverBase& source)
void SetArTol(Double_t ar)
void SetMuTol(Double_t m)
virtual void ShowMembers(TMemberInspector& insp, char* parent)
virtual Int_t Solve(TQpDataBase* prob, TQpVar* iterate, TQpResidual* resids)
virtual void Start(TQpProbBase* formulation, TQpVar* iterate, TQpDataBase* prob, TQpResidual* resid, TQpVar* step)
virtual void SteveStart(TQpProbBase* formulation, TQpVar* iterate, TQpDataBase* prob, TQpResidual* resid, TQpVar* step)
virtual void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
protected:
TQpLinSolverBase* fSys
Double_t fDnorm norm of problem data
Double_t fMutol termination parameters
Double_t fArtol
Double_t fGamma_f parameters associated with the step length heuristic
Double_t fGamma_a
Double_t fPhi merit function, defined as the sum of the complementarity gap
Int_t fMaxit maximum number of iterations allowed
Double_t* fMu_history [fMaxit] history of values of mu obtained on all iterations to date
Double_t* fRnorm_history [fMaxit] history of values of residual norm obtained on all iterations to date
Double_t* fPhi_history [fMaxit] history of values of phi obtained on all iterations to date
Double_t* fPhi_min_history [fMaxit] the i-th entry of this array contains the minimum value of phi
public:
Int_t fIter iteration counter
TSolverBase
The Solver class contains methods for monitoring and checking the
convergence status of the algorithm, methods to determine the step
length along a given direction, methods to define the starting point,
and the solve method that implements the interior-point algorithm
void Start(TQpProbBase *formulation,TQpVar *iterate,TQpDataBase *prob, TQpResidual *resid,TQpVar *step)
Implements a default starting-point heuristic. While interior-point theory
places fairly loose restrictions on the choice of starting point, the choice
of heuristic can significantly affect the robustness and efficiency of the
algorithm.
Double_t FinalStepLength(TQpVar *iterate,TQpVar *step)
Implements a version of Mehrotra starting point heuristic,
modified to ensure identical steps in the primal and dual variables.
Author: Eddy Offermann May 2004
Last update: root/quadp:$Name: $:$Id: TQpSolverBase.cxx,v 1.8 2006/06/28 05:17:13 brun Exp $
Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
ROOT page - Class index - Class Hierarchy - Top of the page
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.