library: libQuadp
#include "TQpLinSolverBase.h"

TQpLinSolverBase


class description - source file - inheritance tree (.pdf)

class TQpLinSolverBase : public TObject

Inheritance Chart:
TObject
<-
TQpLinSolverBase
<-
TQpLinSolverDens
TQpLinSolverSparse
 
    This is an abstract class, constructors will not be documented.
    Look at the header to check for available constructors.


    public:
virtual ~TQpLinSolverBase() static TClass* Class() virtual void ComputeDiagonals(TVectorD& dd, TVectorD& omega, TVectorD& t, TVectorD& lambda, TVectorD& u, TVectorD& pi, TVectorD& v, TVectorD& gamma, TVectorD& w, TVectorD& phi) virtual void Factor(TQpDataBase* prob, TQpVar* vars) virtual TClass* IsA() const virtual void JoinRHS(TVectorD& rhs, TVectorD& rhs1, TVectorD& rhs2, TVectorD& rhs3) TQpLinSolverBase& operator=(const TQpLinSolverBase& source) virtual void PutXDiagonal(TVectorD& xdiag) virtual void PutZDiagonal(TVectorD& zdiag) virtual void SeparateVars(TVectorD& vars1, TVectorD& vars2, TVectorD& vars3, TVectorD& vars) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Solve(TQpDataBase* prob, TQpVar* vars, TQpResidual* resids, TQpVar* step) virtual void SolveCompressed(TVectorD& rhs) virtual void SolveXYZS(TVectorD& stepx, TVectorD& stepy, TVectorD& stepz, TVectorD& steps, TVectorD& ztemp, TQpDataBase* data) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)

Data Members


    protected:
TVectorD fNomegaInv stores a critical diagonal matrix as a vector TVectorD fRhs right-hand side of the system Int_t fNx dimensions of the vectors in the general QP formulation Int_t fMy Int_t fMz TVectorD fDd temporary storage vectors TVectorD fDq TVectorD fXupIndex index matrices for the upper and lower bounds on x and Cx TVectorD fCupIndex TVectorD fXloIndex TVectorD fCloIndex Int_t fNxup dimensions of the upper and lower bound vectors Int_t fNxlo Int_t fMcup Int_t fMclo TQpProbBase* fFactory

Class Description

                                                                      
 TQpLinSolverBase                                                     
                                                                      
 Implementation of main solver for linear systems                     
                                                                      


void Factor(TQpDataBase * /* prob */,TQpVar *vars)

void ComputeDiagonals(TVectorD &dd,TVectorD &omega, TVectorD &t, TVectorD &lambda, TVectorD &u, TVectorD &pi, TVectorD &v, TVectorD &gamma, TVectorD &w, TVectorD &phi)

void Solve(TQpDataBase *prob,TQpVar *vars,TQpResidual *res,TQpVar *step)

void SolveXYZS(TVectorD &stepx,TVectorD &stepy, TVectorD &stepz,TVectorD &steps, TVectorD & /* ztemp */, TQpDataBase * /* prob */ )

void JoinRHS(TVectorD &rhs_in, TVectorD &rhs1_in, TVectorD &rhs2_in,TVectorD &rhs3_in)
 joinRHS has to be delegated to the factory. This is true because
 the rhs may be distributed across processors, so the factory is the
 only object that knows with certainly how to scatter the elements.

void SeparateVars(TVectorD &x_in,TVectorD &y_in, TVectorD &z_in,TVectorD &vars_in)
 separateVars has to be delegated to the factory. This is true because
 the rhs may be distributed across processors, so the factory is the
 only object that knows with certainly how to scatter the elements.



Inline Functions


                     void ~TQpLinSolverBase()
                     void SolveCompressed(TVectorD& rhs)
                     void PutXDiagonal(TVectorD& xdiag)
                     void PutZDiagonal(TVectorD& zdiag)
        TQpLinSolverBase& operator=(const TQpLinSolverBase& source)
                  TClass* Class()
                  TClass* IsA() const
                     void ShowMembers(TMemberInspector& insp, char* parent)
                     void Streamer(TBuffer& b)
                     void StreamerNVirtual(TBuffer& b)


Author: Eddy Offermann May 2004
Last update: root/quadp:$Name: $:$Id: TQpLinSolverBase.cxx,v 1.2 2004/05/24 12:45:40 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.