#include <TDecompSparse.h>
Inheritance diagram for TDecompSparse:
Public Member Functions | |
TDecompSparse () | |
TDecompSparse (Int_t nRows, Int_t nr_nonZeros, Int_t verbose) | |
TDecompSparse (Int_t row_lwb, Int_t row_upb, Int_t nr_nonZeros, Int_t verbose) | |
TDecompSparse (const TMatrixDSparse &a, Int_t verbose) | |
TDecompSparse (const TDecompSparse &another) | |
virtual | ~TDecompSparse () |
void | SetVerbose (Int_t v) |
virtual Int_t | GetNrows () const |
virtual Int_t | GetNcols () const |
virtual void | SetMatrix (const TMatrixDSparse &a) |
virtual Bool_t | Decompose () |
virtual Bool_t | Solve (TVectorD &b) |
virtual TVectorD | Solve (const TVectorD &b, Bool_t &ok) |
virtual Bool_t | Solve (TMatrixDColumn &) |
virtual Bool_t | TransSolve (TVectorD &b) |
virtual TVectorD | TransSolve (const TVectorD &b, Bool_t &ok) |
virtual Bool_t | TransSolve (TMatrixDColumn &) |
virtual void | Det (Double_t &, Double_t &) |
void | Print (Option_t *opt="") const |
TDecompSparse & | operator= (const TDecompSparse &source) |
TDecompSparse () | |
TDecompSparse (Int_t nRows, Int_t nr_nonZeros, Int_t verbose) | |
TDecompSparse (Int_t row_lwb, Int_t row_upb, Int_t nr_nonZeros, Int_t verbose) | |
TDecompSparse (const TMatrixDSparse &a, Int_t verbose) | |
TDecompSparse (const TDecompSparse &another) | |
virtual | ~TDecompSparse () |
void | SetVerbose (Int_t v) |
virtual Int_t | GetNrows () const |
virtual Int_t | GetNcols () const |
virtual void | SetMatrix (const TMatrixDSparse &a) |
virtual Bool_t | Decompose () |
virtual Bool_t | Solve (TVectorD &b) |
virtual TVectorD | Solve (const TVectorD &b, Bool_t &ok) |
virtual Bool_t | Solve (TMatrixDColumn &) |
virtual Bool_t | TransSolve (TVectorD &b) |
virtual TVectorD | TransSolve (const TVectorD &b, Bool_t &ok) |
virtual Bool_t | TransSolve (TMatrixDColumn &) |
virtual void | Det (Double_t &, Double_t &) |
void | Print (Option_t *opt="") const |
TDecompSparse & | operator= (const TDecompSparse &source) |
Protected Member Functions | |
void | InitParam () |
Int_t | IError () |
Int_t | MinRealWorkspace () |
Int_t | MinIntWorkspace () |
Int_t | ErrorFlag () |
Double_t | GetThresholdPivoting () |
Double_t | GetTreatAsZero () |
void | SetThresholdPivoting (Double_t piv) |
void | SetTreatAsZero (Double_t tol) |
virtual const TMatrixDBase & | GetDecompMatrix () const |
void | InitParam () |
Int_t | IError () |
Int_t | MinRealWorkspace () |
Int_t | MinIntWorkspace () |
Int_t | ErrorFlag () |
Double_t | GetThresholdPivoting () |
Double_t | GetTreatAsZero () |
void | SetThresholdPivoting (Double_t piv) |
void | SetTreatAsZero (Double_t tol) |
virtual const TMatrixDBase & | GetDecompMatrix () const |
Static Protected Member Functions | |
static Int_t | NonZerosUpperTriang (const TMatrixDSparse &a) |
static void | CopyUpperTriang (const TMatrixDSparse &a, Double_t *b) |
static void | InitPivot (const Int_t n, const Int_t nz, TArrayI &Airn, TArrayI &Aicn, TArrayI &Aiw, TArrayI &Aikeep, TArrayI &Aiw1, Int_t &nsteps, const Int_t iflag, Int_t *icntl, Double_t *cntl, Int_t *info, Double_t &ops) |
static void | Factor (const Int_t n, const Int_t nz, TArrayI &Airn, TArrayI &Aicn, TArrayD &Aa, TArrayI &Aiw, TArrayI &Aikeep, const Int_t nsteps, Int_t &maxfrt, TArrayI &Aiw1, Int_t *icntl, Double_t *cntl, Int_t *info) |
static void | Solve (const Int_t n, TArrayD &Aa, TArrayI &Aiw, TArrayD &Aw, const Int_t maxfrt, TVectorD &b, TArrayI &Aiw1, const Int_t nsteps, Int_t *icntl, Int_t *info) |
static void | InitPivot_sub1 (const Int_t n, const Int_t nz, Int_t *irn, Int_t *icn, Int_t *iw, Int_t *ipe, Int_t *iq, Int_t *flag, Int_t &iwfr, Int_t *icntl, Int_t *info) |
static void | InitPivot_sub2 (const Int_t n, Int_t *ipe, Int_t *iw, const Int_t lw, Int_t &iwfr, Int_t *nv, Int_t *nxt, Int_t *lst, Int_t *ipd, Int_t *flag, const Int_t iovflo, Int_t &ncmpa, const Double_t fratio) |
static void | InitPivot_sub2a (const Int_t n, Int_t *ipe, Int_t *iw, const Int_t lw, Int_t &iwfr, Int_t &ncmpa) |
static void | InitPivot_sub3 (const Int_t n, const Int_t nz, Int_t *irn, Int_t *icn, Int_t *perm, Int_t *iw, Int_t *ipe, Int_t *iq, Int_t *flag, Int_t &iwfr, Int_t *icntl, Int_t *info) |
static void | InitPivot_sub4 (const Int_t n, Int_t *ipe, Int_t *iw, const Int_t lw, Int_t &iwfr, Int_t *ips, Int_t *ipv, Int_t *nv, Int_t *flag, Int_t &ncmpa) |
static void | InitPivot_sub5 (const Int_t n, Int_t *ipe, Int_t *nv, Int_t *ips, Int_t *ne, Int_t *na, Int_t *nd, Int_t &nsteps, const Int_t nemin) |
static void | InitPivot_sub6 (const Int_t n, const Int_t nz, Int_t *irn, Int_t *icn, Int_t *perm, Int_t *na, Int_t *ne, Int_t *nd, const Int_t nsteps, Int_t *lstki, Int_t *lstkr, Int_t *iw, Int_t *info, Double_t &ops) |
static void | Factor_sub1 (const Int_t n, const Int_t nz, Int_t &nz1, Double_t *a, const Int_t la, Int_t *irn, Int_t *icn, Int_t *iw, const Int_t liw, Int_t *perm, Int_t *iw2, Int_t *icntl, Int_t *info) |
static void | Factor_sub2 (const Int_t n, const Int_t nz, Double_t *a, const Int_t la, Int_t *iw, const Int_t liw, Int_t *perm, Int_t *nstk, const Int_t nsteps, Int_t &maxfrt, Int_t *nelim, Int_t *iw2, Int_t *icntl, Double_t *cntl, Int_t *info) |
static void | Factor_sub3 (Double_t *a, Int_t *iw, Int_t &j1, Int_t &j2, const Int_t itop, const Int_t ireal, Int_t &ncmpbr, Int_t &ncmpbi) |
static void | Solve_sub1 (const Int_t n, Double_t *a, Int_t *iw, Double_t *w, Double_t *rhs, Int_t *iw2, const Int_t nblk, Int_t &latop, Int_t *icntl) |
static void | Solve_sub2 (const Int_t n, Double_t *a, Int_t *iw, Double_t *w, Double_t *rhs, Int_t *iw2, const Int_t nblk, const Int_t latop, Int_t *icntl) |
static Int_t | IDiag (Int_t ix, Int_t iy) |
static Int_t | NonZerosUpperTriang (const TMatrixDSparse &a) |
static void | CopyUpperTriang (const TMatrixDSparse &a, Double_t *b) |
static void | InitPivot (const Int_t n, const Int_t nz, TArrayI &Airn, TArrayI &Aicn, TArrayI &Aiw, TArrayI &Aikeep, TArrayI &Aiw1, Int_t &nsteps, const Int_t iflag, Int_t *icntl, Double_t *cntl, Int_t *info, Double_t &ops) |
static void | Factor (const Int_t n, const Int_t nz, TArrayI &Airn, TArrayI &Aicn, TArrayD &Aa, TArrayI &Aiw, TArrayI &Aikeep, const Int_t nsteps, Int_t &maxfrt, TArrayI &Aiw1, Int_t *icntl, Double_t *cntl, Int_t *info) |
static void | Solve (const Int_t n, TArrayD &Aa, TArrayI &Aiw, TArrayD &Aw, const Int_t maxfrt, TVectorD &b, TArrayI &Aiw1, const Int_t nsteps, Int_t *icntl, Int_t *info) |
static void | InitPivot_sub1 (const Int_t n, const Int_t nz, Int_t *irn, Int_t *icn, Int_t *iw, Int_t *ipe, Int_t *iq, Int_t *flag, Int_t &iwfr, Int_t *icntl, Int_t *info) |
static void | InitPivot_sub2 (const Int_t n, Int_t *ipe, Int_t *iw, const Int_t lw, Int_t &iwfr, Int_t *nv, Int_t *nxt, Int_t *lst, Int_t *ipd, Int_t *flag, const Int_t iovflo, Int_t &ncmpa, const Double_t fratio) |
static void | InitPivot_sub2a (const Int_t n, Int_t *ipe, Int_t *iw, const Int_t lw, Int_t &iwfr, Int_t &ncmpa) |
static void | InitPivot_sub3 (const Int_t n, const Int_t nz, Int_t *irn, Int_t *icn, Int_t *perm, Int_t *iw, Int_t *ipe, Int_t *iq, Int_t *flag, Int_t &iwfr, Int_t *icntl, Int_t *info) |
static void | InitPivot_sub4 (const Int_t n, Int_t *ipe, Int_t *iw, const Int_t lw, Int_t &iwfr, Int_t *ips, Int_t *ipv, Int_t *nv, Int_t *flag, Int_t &ncmpa) |
static void | InitPivot_sub5 (const Int_t n, Int_t *ipe, Int_t *nv, Int_t *ips, Int_t *ne, Int_t *na, Int_t *nd, Int_t &nsteps, const Int_t nemin) |
static void | InitPivot_sub6 (const Int_t n, const Int_t nz, Int_t *irn, Int_t *icn, Int_t *perm, Int_t *na, Int_t *ne, Int_t *nd, const Int_t nsteps, Int_t *lstki, Int_t *lstkr, Int_t *iw, Int_t *info, Double_t &ops) |
static void | Factor_sub1 (const Int_t n, const Int_t nz, Int_t &nz1, Double_t *a, const Int_t la, Int_t *irn, Int_t *icn, Int_t *iw, const Int_t liw, Int_t *perm, Int_t *iw2, Int_t *icntl, Int_t *info) |
static void | Factor_sub2 (const Int_t n, const Int_t nz, Double_t *a, const Int_t la, Int_t *iw, const Int_t liw, Int_t *perm, Int_t *nstk, const Int_t nsteps, Int_t &maxfrt, Int_t *nelim, Int_t *iw2, Int_t *icntl, Double_t *cntl, Int_t *info) |
static void | Factor_sub3 (Double_t *a, Int_t *iw, Int_t &j1, Int_t &j2, const Int_t itop, const Int_t ireal, Int_t &ncmpbr, Int_t &ncmpbi) |
static void | Solve_sub1 (const Int_t n, Double_t *a, Int_t *iw, Double_t *w, Double_t *rhs, Int_t *iw2, const Int_t nblk, Int_t &latop, Int_t *icntl) |
static void | Solve_sub2 (const Int_t n, Double_t *a, Int_t *iw, Double_t *w, Double_t *rhs, Int_t *iw2, const Int_t nblk, const Int_t latop, Int_t *icntl) |
static Int_t | IDiag (Int_t ix, Int_t iy) |
Protected Attributes | |
Int_t | fVerbose |
Int_t | fIcntl [31] |
Double_t | fCntl [6] |
Int_t | fInfo [21] |
Double_t | fPrecision |
TArrayI | fIkeep |
TArrayI | fIw |
TArrayI | fIw1 |
TArrayI | fIw2 |
Int_t | fNsteps |
Int_t | fMaxfrt |
TArrayD | fW |
Double_t | fIPessimism |
Double_t | fRPessimism |
TMatrixDSparse | fA |
Int_t | fNrows |
Int_t | fNnonZeros |
TArrayD | fFact |
TArrayI | fRowFact |
TArrayI | fColFact |
Definition at line 51 of file TDecompSparse.h.
TDecompSparse::TDecompSparse | ( | ) |
Referenced by G__G__Matrix_185_0_30(), G__G__Matrix_185_0_31(), G__G__Matrix_185_0_32(), and G__G__Matrix_185_0_33().
Definition at line 38 of file TDecompSparse.cxx.
References fColFact, fIkeep, fInfo, fIw, fIw1, fMaxfrt, fNnonZeros, fNrows, fNsteps, fRowFact, fVerbose, fW, InitParam(), TArrayD::Set(), and TArrayI::Set().
Definition at line 64 of file TDecompSparse.cxx.
References fColFact, TDecompBase::fColLwb, fIkeep, fInfo, fIw, fIw1, fMaxfrt, fNnonZeros, fNrows, fNsteps, fRowFact, TDecompBase::fRowLwb, fVerbose, fW, InitParam(), TArrayD::Set(), and TArrayI::Set().
TDecompSparse::TDecompSparse | ( | const TMatrixDSparse & | a, | |
Int_t | verbose | |||
) |
Definition at line 92 of file TDecompSparse.cxx.
References a, fInfo, fVerbose, InitParam(), and SetMatrix().
TDecompSparse::TDecompSparse | ( | const TDecompSparse & | another | ) |
Definition at line 105 of file TDecompSparse.cxx.
virtual TDecompSparse::~TDecompSparse | ( | ) | [inline, virtual] |
Definition at line 156 of file TDecompSparse.h.
TDecompSparse::TDecompSparse | ( | ) |
TDecompSparse::TDecompSparse | ( | const TMatrixDSparse & | a, | |
Int_t | verbose | |||
) |
TDecompSparse::TDecompSparse | ( | const TDecompSparse & | another | ) |
virtual TDecompSparse::~TDecompSparse | ( | ) | [inline, virtual] |
Definition at line 156 of file TDecompSparse.h.
Int_t TDecompSparse::NonZerosUpperTriang | ( | const TMatrixDSparse & | a | ) | [static, protected] |
void TDecompSparse::CopyUpperTriang | ( | const TMatrixDSparse & | a, | |
Double_t * | b | |||
) | [static, protected] |
void TDecompSparse::InitParam | ( | ) | [protected] |
Definition at line 411 of file TDecompSparse.cxx.
References fCntl, fIcntl, fIPessimism, fMaxfrt, fNnonZeros, fNrows, fNsteps, fPrecision, fRPessimism, fVerbose, kInitPrecision, kInitThresholdPivoting, kInitTreatAsZero, SetThresholdPivoting(), SetTreatAsZero(), and SetVerbose().
Referenced by TDecompSparse().
void TDecompSparse::InitPivot | ( | const Int_t | n, | |
const Int_t | nz, | |||
TArrayI & | Airn, | |||
TArrayI & | Aicn, | |||
TArrayI & | Aiw, | |||
TArrayI & | Aikeep, | |||
TArrayI & | Aiw1, | |||
Int_t & | nsteps, | |||
const Int_t | iflag, | |||
Int_t * | icntl, | |||
Double_t * | cntl, | |||
Int_t * | info, | |||
Double_t & | ops | |||
) | [static, protected] |
Definition at line 468 of file TDecompSparse.cxx.
References TObject::Error(), TArrayI::GetArray(), TArray::GetSize(), i, TObject::Info(), InitPivot_sub1(), InitPivot_sub2(), InitPivot_sub3(), InitPivot_sub4(), InitPivot_sub5(), InitPivot_sub6(), k, and TMath::Min().
Referenced by SetMatrix().
void TDecompSparse::Factor | ( | const Int_t | n, | |
const Int_t | nz, | |||
TArrayI & | Airn, | |||
TArrayI & | Aicn, | |||
TArrayD & | Aa, | |||
TArrayI & | Aiw, | |||
TArrayI & | Aikeep, | |||
const Int_t | nsteps, | |||
Int_t & | maxfrt, | |||
TArrayI & | Aiw1, | |||
Int_t * | icntl, | |||
Double_t * | cntl, | |||
Int_t * | info | |||
) | [static, protected] |
Definition at line 579 of file TDecompSparse.cxx.
References a, TMath::Abs(), TObject::Error(), Factor_sub1(), Factor_sub2(), TArrayI::GetArray(), TArrayD::GetArray(), TArray::GetSize(), i, TObject::Info(), k, len, TMath::Min(), nrows, and TObject::Warning().
Referenced by Decompose().
void TDecompSparse::Solve | ( | const Int_t | n, | |
TArrayD & | Aa, | |||
TArrayI & | Aiw, | |||
TArrayD & | Aw, | |||
const Int_t | maxfrt, | |||
TVectorD & | b, | |||
TArrayI & | Aiw1, | |||
const Int_t | nsteps, | |||
Int_t * | icntl, | |||
Int_t * | info | |||
) | [static, protected] |
Definition at line 736 of file TDecompSparse.cxx.
References a, TMath::Abs(), b, TArrayI::GetArray(), TArrayD::GetArray(), TArray::GetSize(), i, k, len, TMath::Min(), nrows, Solve_sub1(), Solve_sub2(), and w.
Referenced by G__G__Matrix_174_0_19(), G__G__Matrix_174_0_20(), G__G__Matrix_174_0_21(), Solve(), TQpLinSolverSparse::SolveCompressed(), and TransSolve().
void TDecompSparse::InitPivot_sub1 | ( | const Int_t | n, | |
const Int_t | nz, | |||
Int_t * | irn, | |||
Int_t * | icn, | |||
Int_t * | iw, | |||
Int_t * | ipe, | |||
Int_t * | iq, | |||
Int_t * | flag, | |||
Int_t & | iwfr, | |||
Int_t * | icntl, | |||
Int_t * | info | |||
) | [static, protected] |
Definition at line 834 of file TDecompSparse.cxx.
References i, id, j, k, Rgl::Mc::k1, Rgl::Mc::k2, l, Rgl::lr, and TObject::Warning().
Referenced by InitPivot().
void TDecompSparse::InitPivot_sub2 | ( | const Int_t | n, | |
Int_t * | ipe, | |||
Int_t * | iw, | |||
const Int_t | lw, | |||
Int_t & | iwfr, | |||
Int_t * | nv, | |||
Int_t * | nxt, | |||
Int_t * | lst, | |||
Int_t * | ipd, | |||
Int_t * | flag, | |||
const Int_t | iovflo, | |||
Int_t & | ncmpa, | |||
const Double_t | fratio | |||
) | [static, protected] |
Definition at line 973 of file TDecompSparse.cxx.
References TMath::Abs(), i, id, InitPivot_sub2a(), k, Rgl::Mc::k1, Rgl::Mc::k2, l, len, TObject::ls(), TMath::Min(), TMath::Nint(), and root.
Referenced by InitPivot().
void TDecompSparse::InitPivot_sub2a | ( | const Int_t | n, | |
Int_t * | ipe, | |||
Int_t * | iw, | |||
const Int_t | lw, | |||
Int_t & | iwfr, | |||
Int_t & | ncmpa | |||
) | [static, protected] |
Definition at line 1303 of file TDecompSparse.cxx.
References i, k, Rgl::Mc::k1, and Rgl::Mc::k2.
Referenced by InitPivot_sub2(), and InitPivot_sub4().
void TDecompSparse::InitPivot_sub3 | ( | const Int_t | n, | |
const Int_t | nz, | |||
Int_t * | irn, | |||
Int_t * | icn, | |||
Int_t * | perm, | |||
Int_t * | iw, | |||
Int_t * | ipe, | |||
Int_t * | iq, | |||
Int_t * | flag, | |||
Int_t & | iwfr, | |||
Int_t * | icntl, | |||
Int_t * | info | |||
) | [static, protected] |
Definition at line 1347 of file TDecompSparse.cxx.
References i, id, j, k, Rgl::Mc::k1, Rgl::Mc::k2, l, len, TMath::Max(), and TObject::Warning().
Referenced by InitPivot().
void TDecompSparse::InitPivot_sub4 | ( | const Int_t | n, | |
Int_t * | ipe, | |||
Int_t * | iw, | |||
const Int_t | lw, | |||
Int_t & | iwfr, | |||
Int_t * | ips, | |||
Int_t * | ipv, | |||
Int_t * | nv, | |||
Int_t * | flag, | |||
Int_t & | ncmpa | |||
) | [static, protected] |
Definition at line 1469 of file TDecompSparse.cxx.
References i, InitPivot_sub2a(), j, and TMath::Min().
Referenced by InitPivot().
void TDecompSparse::InitPivot_sub5 | ( | const Int_t | n, | |
Int_t * | ipe, | |||
Int_t * | nv, | |||
Int_t * | ips, | |||
Int_t * | ne, | |||
Int_t * | na, | |||
Int_t * | nd, | |||
Int_t & | nsteps, | |||
const Int_t | nemin | |||
) | [static, protected] |
void TDecompSparse::InitPivot_sub6 | ( | const Int_t | n, | |
const Int_t | nz, | |||
Int_t * | irn, | |||
Int_t * | icn, | |||
Int_t * | perm, | |||
Int_t * | na, | |||
Int_t * | ne, | |||
Int_t * | nd, | |||
const Int_t | nsteps, | |||
Int_t * | lstki, | |||
Int_t * | lstkr, | |||
Int_t * | iw, | |||
Int_t * | info, | |||
Double_t & | ops | |||
) | [static, protected] |
Definition at line 1635 of file TDecompSparse.cxx.
References i, k, TMath::Max(), and TMath::Min().
Referenced by InitPivot().
void TDecompSparse::Factor_sub1 | ( | const Int_t | n, | |
const Int_t | nz, | |||
Int_t & | nz1, | |||
Double_t * | a, | |||
const Int_t | la, | |||
Int_t * | irn, | |||
Int_t * | icn, | |||
Int_t * | iw, | |||
const Int_t | liw, | |||
Int_t * | perm, | |||
Int_t * | iw2, | |||
Int_t * | icntl, | |||
Int_t * | info | |||
) | [static, protected] |
Definition at line 1739 of file TDecompSparse.cxx.
References i, k, TMath::Min(), and TObject::Warning().
Referenced by Factor().
void TDecompSparse::Factor_sub2 | ( | const Int_t | n, | |
const Int_t | nz, | |||
Double_t * | a, | |||
const Int_t | la, | |||
Int_t * | iw, | |||
const Int_t | liw, | |||
Int_t * | perm, | |||
Int_t * | nstk, | |||
const Int_t | nsteps, | |||
Int_t & | maxfrt, | |||
Int_t * | nelim, | |||
Int_t * | iw2, | |||
Int_t * | icntl, | |||
Double_t * | cntl, | |||
Int_t * | info | |||
) | [static, protected] |
Definition at line 1881 of file TDecompSparse.cxx.
References TMath::Abs(), Factor_sub3(), i, IDiag(), j, k, Rgl::Mc::k1, Rgl::Mc::k2, TMath::Max(), TMath::Min(), and TObject::Warning().
Referenced by Factor().
void TDecompSparse::Solve_sub1 | ( | const Int_t | n, | |
Double_t * | a, | |||
Int_t * | iw, | |||
Double_t * | w, | |||
Double_t * | rhs, | |||
Int_t * | iw2, | |||
const Int_t | nblk, | |||
Int_t & | latop, | |||
Int_t * | icntl | |||
) | [static, protected] |
Definition at line 2421 of file TDecompSparse.cxx.
References TMath::Abs(), j, k, Rgl::Mc::k1, Rgl::Mc::k2, Rgl::Mc::k3, and TMath::Min().
Referenced by Solve().
void TDecompSparse::Solve_sub2 | ( | const Int_t | n, | |
Double_t * | a, | |||
Int_t * | iw, | |||
Double_t * | w, | |||
Double_t * | rhs, | |||
Int_t * | iw2, | |||
const Int_t | nblk, | |||
const Int_t | latop, | |||
Int_t * | icntl | |||
) | [static, protected] |
Definition at line 2551 of file TDecompSparse.cxx.
References TMath::Abs(), j, k, and TMath::Min().
Referenced by Solve().
Int_t TDecompSparse::IError | ( | ) | [inline, protected] |
Definition at line 129 of file TDecompSparse.h.
References fInfo.
Referenced by Decompose(), and SetMatrix().
Int_t TDecompSparse::MinRealWorkspace | ( | ) | [inline, protected] |
Int_t TDecompSparse::MinIntWorkspace | ( | ) | [inline, protected] |
Int_t TDecompSparse::ErrorFlag | ( | ) | [inline, protected] |
Double_t TDecompSparse::GetThresholdPivoting | ( | ) | [inline, protected] |
Double_t TDecompSparse::GetTreatAsZero | ( | ) | [inline, protected] |
void TDecompSparse::SetThresholdPivoting | ( | Double_t | piv | ) | [inline, protected] |
Definition at line 144 of file TDecompSparse.h.
References fCntl.
Referenced by InitParam(), and Solve().
void TDecompSparse::SetTreatAsZero | ( | Double_t | tol | ) | [inline, protected] |
virtual const TMatrixDBase& TDecompSparse::GetDecompMatrix | ( | ) | const [inline, protected, virtual] |
Implements TDecompBase.
Definition at line 147 of file TDecompSparse.h.
References fA, and TObject::MayNotUse().
void TDecompSparse::SetVerbose | ( | Int_t | v | ) | [inline] |
Definition at line 158 of file TDecompSparse.h.
References fIcntl, and fVerbose.
Referenced by G__G__Matrix_185_0_34(), and InitParam().
virtual Int_t TDecompSparse::GetNrows | ( | ) | const [inline, virtual] |
Implements TDecompBase.
Definition at line 162 of file TDecompSparse.h.
References fA, and TMatrixTBase< Element >::GetNrows().
Referenced by G__G__Matrix_110_0_7(), G__G__Matrix_111_0_7(), G__G__Matrix_112_0_16(), G__G__Matrix_113_0_16(), G__G__Matrix_134_0_7(), G__G__Matrix_174_0_11(), and G__G__Matrix_196_0_7().
virtual Int_t TDecompSparse::GetNcols | ( | ) | const [inline, virtual] |
Implements TDecompBase.
Definition at line 163 of file TDecompSparse.h.
References fA, and TMatrixTBase< Element >::GetNcols().
Referenced by G__G__Matrix_110_0_10(), G__G__Matrix_111_0_10(), G__G__Matrix_134_0_8(), G__G__Matrix_174_0_12(), and G__G__Matrix_196_0_8().
void TDecompSparse::SetMatrix | ( | const TMatrixDSparse & | a | ) | [virtual] |
Definition at line 159 of file TDecompSparse.cxx.
References a, TObject::Error(), fA, fCntl, fColFact, TDecompBase::fColLwb, fFact, fIcntl, fIkeep, fInfo, fIw, fIw1, fIw2, fNnonZeros, fNrows, fNsteps, fRowFact, TDecompBase::fRowLwb, fW, TMatrixTBase< Element >::GetColLwb(), TMatrixTBase< Element >::GetNrows(), TMatrixTBase< Element >::GetRowLwb(), TArray::GetSize(), IError(), InitPivot(), TDecompBase::kMatrixSet, NonZerosUpperTriang(), TDecompBase::ResetStatus(), TArrayD::Set(), TArrayI::Set(), TObject::SetBit(), and TMatrixTSparse< Element >::Use().
Referenced by TQpLinSolverSparse::Factor(), G__G__Matrix_177_0_10(), G__G__Matrix_178_0_12(), G__G__Matrix_179_0_13(), G__G__Matrix_180_0_14(), G__G__Matrix_185_0_37(), G__G__Matrix_186_0_19(), Solve(), and TDecompSparse().
Bool_t TDecompSparse::Decompose | ( | ) | [virtual] |
Implements TDecompBase.
Definition at line 231 of file TDecompSparse.cxx.
References CopyUpperTriang(), TObject::Error(), fA, Factor(), fCntl, fColFact, fFact, fIcntl, fIkeep, fInfo, fIPessimism, fIw, fIw1, fMaxfrt, fNnonZeros, fNrows, fNsteps, fRowFact, fRPessimism, fVerbose, TArrayD::GetArray(), TArray::GetSize(), IError(), TObject::Info(), TDecompBase::kDecomposed, kFALSE, TDecompBase::kMatrixSet, kTRUE, ok, TArrayD::Reset(), TArrayD::Set(), TArrayI::Set(), TObject::SetBit(), and TObject::TestBit().
Referenced by G__G__Matrix_174_0_18(), and Solve().
Implements TDecompBase.
Definition at line 339 of file TDecompSparse.cxx.
References b, Decompose(), TObject::Error(), fA, fFact, fIcntl, fInfo, fIw, fIw1, fMaxfrt, fNrows, fNsteps, fPrecision, TDecompBase::fRowLwb, fVerbose, fW, GetThresholdPivoting(), TObject::Info(), TDecompBase::kDecomposed, kFALSE, TDecompBase::kSingular, kThresholdPivotingFactor, kThresholdPivotingMax, kTRUE, TVectorT< Element >::NormInf(), R__ASSERT, SetMatrix(), SetThresholdPivoting(), Solve(), and TObject::TestBit().
virtual Bool_t TDecompSparse::Solve | ( | TMatrixDColumn & | ) | [inline, virtual] |
Implements TDecompBase.
Definition at line 170 of file TDecompSparse.h.
References kFALSE, and TObject::MayNotUse().
Implements TDecompBase.
Definition at line 172 of file TDecompSparse.h.
Referenced by G__G__Matrix_174_0_22(), G__G__Matrix_174_0_23(), and G__G__Matrix_174_0_24().
virtual Bool_t TDecompSparse::TransSolve | ( | TMatrixDColumn & | ) | [inline, virtual] |
Implements TDecompBase.
Definition at line 174 of file TDecompSparse.h.
References kFALSE, and TObject::MayNotUse().
Reimplemented from TDecompBase.
Definition at line 177 of file TDecompSparse.h.
References TObject::MayNotUse().
Referenced by G__G__Matrix_174_0_17().
void TDecompSparse::Print | ( | Option_t * | opt = "" |
) | const [virtual] |
Reimplemented from TDecompBase.
Definition at line 2684 of file TDecompSparse.cxx.
References fColFact, fFact, fIPessimism, fNnonZeros, fNrows, fPrecision, fRowFact, fRPessimism, TArrayI::GetArray(), TArrayD::GetArray(), and TDecompBase::Print().
TDecompSparse & TDecompSparse::operator= | ( | const TDecompSparse & | source | ) |
Definition at line 2700 of file TDecompSparse.cxx.
References fA, fCntl, fColFact, fFact, fIcntl, fIkeep, fInfo, fIPessimism, fIw, fIw1, fIw2, fMaxfrt, fNnonZeros, fNrows, fNsteps, fPrecision, fRowFact, fRPessimism, fVerbose, fW, TMatrixTBase< Element >::IsValid(), TDecompBase::operator=(), and TMatrixTSparse< Element >::Use().
static Int_t TDecompSparse::NonZerosUpperTriang | ( | const TMatrixDSparse & | a | ) | [static, protected] |
static void TDecompSparse::CopyUpperTriang | ( | const TMatrixDSparse & | a, | |
Double_t * | b | |||
) | [static, protected] |
void TDecompSparse::InitParam | ( | ) | [protected] |
static void TDecompSparse::InitPivot | ( | const Int_t | n, | |
const Int_t | nz, | |||
TArrayI & | Airn, | |||
TArrayI & | Aicn, | |||
TArrayI & | Aiw, | |||
TArrayI & | Aikeep, | |||
TArrayI & | Aiw1, | |||
Int_t & | nsteps, | |||
const Int_t | iflag, | |||
Int_t * | icntl, | |||
Double_t * | cntl, | |||
Int_t * | info, | |||
Double_t & | ops | |||
) | [static, protected] |
static void TDecompSparse::Factor | ( | const Int_t | n, | |
const Int_t | nz, | |||
TArrayI & | Airn, | |||
TArrayI & | Aicn, | |||
TArrayD & | Aa, | |||
TArrayI & | Aiw, | |||
TArrayI & | Aikeep, | |||
const Int_t | nsteps, | |||
Int_t & | maxfrt, | |||
TArrayI & | Aiw1, | |||
Int_t * | icntl, | |||
Double_t * | cntl, | |||
Int_t * | info | |||
) | [static, protected] |
static void TDecompSparse::Solve | ( | const Int_t | n, | |
TArrayD & | Aa, | |||
TArrayI & | Aiw, | |||
TArrayD & | Aw, | |||
const Int_t | maxfrt, | |||
TVectorD & | b, | |||
TArrayI & | Aiw1, | |||
const Int_t | nsteps, | |||
Int_t * | icntl, | |||
Int_t * | info | |||
) | [static, protected] |
static void TDecompSparse::InitPivot_sub1 | ( | const Int_t | n, | |
const Int_t | nz, | |||
Int_t * | irn, | |||
Int_t * | icn, | |||
Int_t * | iw, | |||
Int_t * | ipe, | |||
Int_t * | iq, | |||
Int_t * | flag, | |||
Int_t & | iwfr, | |||
Int_t * | icntl, | |||
Int_t * | info | |||
) | [static, protected] |
static void TDecompSparse::InitPivot_sub2 | ( | const Int_t | n, | |
Int_t * | ipe, | |||
Int_t * | iw, | |||
const Int_t | lw, | |||
Int_t & | iwfr, | |||
Int_t * | nv, | |||
Int_t * | nxt, | |||
Int_t * | lst, | |||
Int_t * | ipd, | |||
Int_t * | flag, | |||
const Int_t | iovflo, | |||
Int_t & | ncmpa, | |||
const Double_t | fratio | |||
) | [static, protected] |
static void TDecompSparse::InitPivot_sub2a | ( | const Int_t | n, | |
Int_t * | ipe, | |||
Int_t * | iw, | |||
const Int_t | lw, | |||
Int_t & | iwfr, | |||
Int_t & | ncmpa | |||
) | [static, protected] |
static void TDecompSparse::InitPivot_sub3 | ( | const Int_t | n, | |
const Int_t | nz, | |||
Int_t * | irn, | |||
Int_t * | icn, | |||
Int_t * | perm, | |||
Int_t * | iw, | |||
Int_t * | ipe, | |||
Int_t * | iq, | |||
Int_t * | flag, | |||
Int_t & | iwfr, | |||
Int_t * | icntl, | |||
Int_t * | info | |||
) | [static, protected] |
static void TDecompSparse::InitPivot_sub4 | ( | const Int_t | n, | |
Int_t * | ipe, | |||
Int_t * | iw, | |||
const Int_t | lw, | |||
Int_t & | iwfr, | |||
Int_t * | ips, | |||
Int_t * | ipv, | |||
Int_t * | nv, | |||
Int_t * | flag, | |||
Int_t & | ncmpa | |||
) | [static, protected] |
static void TDecompSparse::InitPivot_sub5 | ( | const Int_t | n, | |
Int_t * | ipe, | |||
Int_t * | nv, | |||
Int_t * | ips, | |||
Int_t * | ne, | |||
Int_t * | na, | |||
Int_t * | nd, | |||
Int_t & | nsteps, | |||
const Int_t | nemin | |||
) | [static, protected] |
static void TDecompSparse::InitPivot_sub6 | ( | const Int_t | n, | |
const Int_t | nz, | |||
Int_t * | irn, | |||
Int_t * | icn, | |||
Int_t * | perm, | |||
Int_t * | na, | |||
Int_t * | ne, | |||
Int_t * | nd, | |||
const Int_t | nsteps, | |||
Int_t * | lstki, | |||
Int_t * | lstkr, | |||
Int_t * | iw, | |||
Int_t * | info, | |||
Double_t & | ops | |||
) | [static, protected] |
static void TDecompSparse::Factor_sub1 | ( | const Int_t | n, | |
const Int_t | nz, | |||
Int_t & | nz1, | |||
Double_t * | a, | |||
const Int_t | la, | |||
Int_t * | irn, | |||
Int_t * | icn, | |||
Int_t * | iw, | |||
const Int_t | liw, | |||
Int_t * | perm, | |||
Int_t * | iw2, | |||
Int_t * | icntl, | |||
Int_t * | info | |||
) | [static, protected] |
static void TDecompSparse::Factor_sub2 | ( | const Int_t | n, | |
const Int_t | nz, | |||
Double_t * | a, | |||
const Int_t | la, | |||
Int_t * | iw, | |||
const Int_t | liw, | |||
Int_t * | perm, | |||
Int_t * | nstk, | |||
const Int_t | nsteps, | |||
Int_t & | maxfrt, | |||
Int_t * | nelim, | |||
Int_t * | iw2, | |||
Int_t * | icntl, | |||
Double_t * | cntl, | |||
Int_t * | info | |||
) | [static, protected] |
static void TDecompSparse::Factor_sub3 | ( | Double_t * | a, | |
Int_t * | iw, | |||
Int_t & | j1, | |||
Int_t & | j2, | |||
const Int_t | itop, | |||
const Int_t | ireal, | |||
Int_t & | ncmpbr, | |||
Int_t & | ncmpbi | |||
) | [static, protected] |
static void TDecompSparse::Solve_sub1 | ( | const Int_t | n, | |
Double_t * | a, | |||
Int_t * | iw, | |||
Double_t * | w, | |||
Double_t * | rhs, | |||
Int_t * | iw2, | |||
const Int_t | nblk, | |||
Int_t & | latop, | |||
Int_t * | icntl | |||
) | [static, protected] |
static void TDecompSparse::Solve_sub2 | ( | const Int_t | n, | |
Double_t * | a, | |||
Int_t * | iw, | |||
Double_t * | w, | |||
Double_t * | rhs, | |||
Int_t * | iw2, | |||
const Int_t | nblk, | |||
const Int_t | latop, | |||
Int_t * | icntl | |||
) | [static, protected] |
Definition at line 127 of file TDecompSparse.h.
Int_t TDecompSparse::IError | ( | ) | [inline, protected] |
Int_t TDecompSparse::MinRealWorkspace | ( | ) | [inline, protected] |
Int_t TDecompSparse::MinIntWorkspace | ( | ) | [inline, protected] |
Int_t TDecompSparse::ErrorFlag | ( | ) | [inline, protected] |
Double_t TDecompSparse::GetThresholdPivoting | ( | ) | [inline, protected] |
Double_t TDecompSparse::GetTreatAsZero | ( | ) | [inline, protected] |
void TDecompSparse::SetThresholdPivoting | ( | Double_t | piv | ) | [inline, protected] |
void TDecompSparse::SetTreatAsZero | ( | Double_t | tol | ) | [inline, protected] |
virtual const TMatrixDBase& TDecompSparse::GetDecompMatrix | ( | ) | const [inline, protected, virtual] |
Implements TDecompBase.
Definition at line 147 of file TDecompSparse.h.
References fA, and TObject::MayNotUse().
void TDecompSparse::SetVerbose | ( | Int_t | v | ) | [inline] |
virtual Int_t TDecompSparse::GetNrows | ( | ) | const [inline, virtual] |
Implements TDecompBase.
Definition at line 162 of file TDecompSparse.h.
References fA, and TMatrixTBase< Element >::GetNrows().
virtual Int_t TDecompSparse::GetNcols | ( | ) | const [inline, virtual] |
Implements TDecompBase.
Definition at line 163 of file TDecompSparse.h.
References fA, and TMatrixTBase< Element >::GetNcols().
virtual void TDecompSparse::SetMatrix | ( | const TMatrixDSparse & | a | ) | [virtual] |
virtual Bool_t TDecompSparse::Decompose | ( | ) | [virtual] |
Implements TDecompBase.
Implements TDecompBase.
virtual Bool_t TDecompSparse::Solve | ( | TMatrixDColumn & | ) | [inline, virtual] |
Implements TDecompBase.
Definition at line 170 of file TDecompSparse.h.
References kFALSE, and TObject::MayNotUse().
virtual Bool_t TDecompSparse::TransSolve | ( | TMatrixDColumn & | ) | [inline, virtual] |
Implements TDecompBase.
Definition at line 174 of file TDecompSparse.h.
References kFALSE, and TObject::MayNotUse().
Reimplemented from TDecompBase.
Definition at line 177 of file TDecompSparse.h.
References TObject::MayNotUse().
void TDecompSparse::Print | ( | Option_t * | opt = "" |
) | const [virtual] |
Reimplemented from TDecompBase.
TDecompSparse& TDecompSparse::operator= | ( | const TDecompSparse & | source | ) |
Int_t TDecompSparse::fVerbose [protected] |
Definition at line 55 of file TDecompSparse.h.
Referenced by Decompose(), InitParam(), operator=(), SetVerbose(), Solve(), and TDecompSparse().
Int_t TDecompSparse::fIcntl [protected] |
Definition at line 57 of file TDecompSparse.h.
Referenced by Decompose(), InitParam(), operator=(), SetMatrix(), SetVerbose(), and Solve().
Double_t TDecompSparse::fCntl [protected] |
Definition at line 58 of file TDecompSparse.h.
Referenced by Decompose(), GetThresholdPivoting(), GetTreatAsZero(), InitParam(), operator=(), SetMatrix(), SetThresholdPivoting(), and SetTreatAsZero().
Int_t TDecompSparse::fInfo [protected] |
Definition at line 59 of file TDecompSparse.h.
Referenced by Decompose(), ErrorFlag(), IError(), MinIntWorkspace(), MinRealWorkspace(), operator=(), SetMatrix(), Solve(), and TDecompSparse().
Double_t TDecompSparse::fPrecision [protected] |
Definition at line 61 of file TDecompSparse.h.
Referenced by InitParam(), operator=(), Print(), and Solve().
TArrayI TDecompSparse::fIkeep [protected] |
Definition at line 65 of file TDecompSparse.h.
Referenced by Decompose(), operator=(), SetMatrix(), and TDecompSparse().
TArrayI TDecompSparse::fIw [protected] |
Definition at line 66 of file TDecompSparse.h.
Referenced by Decompose(), operator=(), SetMatrix(), Solve(), and TDecompSparse().
TArrayI TDecompSparse::fIw1 [protected] |
Definition at line 67 of file TDecompSparse.h.
Referenced by Decompose(), operator=(), SetMatrix(), Solve(), and TDecompSparse().
TArrayI TDecompSparse::fIw2 [protected] |
Int_t TDecompSparse::fNsteps [protected] |
Definition at line 69 of file TDecompSparse.h.
Referenced by Decompose(), InitParam(), operator=(), SetMatrix(), Solve(), and TDecompSparse().
Int_t TDecompSparse::fMaxfrt [protected] |
Definition at line 70 of file TDecompSparse.h.
Referenced by Decompose(), InitParam(), operator=(), Solve(), and TDecompSparse().
TArrayD TDecompSparse::fW [protected] |
Definition at line 71 of file TDecompSparse.h.
Referenced by operator=(), SetMatrix(), Solve(), and TDecompSparse().
Double_t TDecompSparse::fIPessimism [protected] |
Definition at line 73 of file TDecompSparse.h.
Referenced by Decompose(), InitParam(), operator=(), and Print().
Double_t TDecompSparse::fRPessimism [protected] |
Definition at line 74 of file TDecompSparse.h.
Referenced by Decompose(), InitParam(), operator=(), and Print().
TMatrixDSparse TDecompSparse::fA [protected] |
Definition at line 77 of file TDecompSparse.h.
Referenced by Decompose(), GetDecompMatrix(), GetNcols(), GetNrows(), operator=(), SetMatrix(), and Solve().
Int_t TDecompSparse::fNrows [protected] |
Definition at line 78 of file TDecompSparse.h.
Referenced by Decompose(), InitParam(), operator=(), Print(), SetMatrix(), Solve(), and TDecompSparse().
Int_t TDecompSparse::fNnonZeros [protected] |
Definition at line 79 of file TDecompSparse.h.
Referenced by Decompose(), InitParam(), operator=(), Print(), SetMatrix(), and TDecompSparse().
TArrayD TDecompSparse::fFact [protected] |
Definition at line 80 of file TDecompSparse.h.
Referenced by Decompose(), operator=(), Print(), SetMatrix(), and Solve().
TArrayI TDecompSparse::fRowFact [protected] |
Definition at line 82 of file TDecompSparse.h.
Referenced by Decompose(), operator=(), Print(), SetMatrix(), and TDecompSparse().
TArrayI TDecompSparse::fColFact [protected] |
Definition at line 83 of file TDecompSparse.h.
Referenced by Decompose(), operator=(), Print(), SetMatrix(), and TDecompSparse().