ROOT  6.07/01
Reference Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Functions
TVectorT.cxx File Reference
#include "TVectorT.h"
#include "TClass.h"
#include "TMath.h"
#include "TROOT.h"
#include "Varargs.h"
#include "TMatrixFfwd.h"
#include "TMatrixFSymfwd.h"
#include "TMatrixFSparsefwd.h"
#include "TMatrixDfwd.h"
#include "TMatrixDSymfwd.h"
#include "TMatrixDSparsefwd.h"
Include dependency graph for TVectorT.cxx:

Go to the source code of this file.

Functions

 templateClassImp (TVectorT) template< class Element > void TVectorT< Element >
 Delete data pointer m, if it was assigned on the heap. More...
 
Double_t Drand (Double_t &ix)
 Random number generator [0....1] with seed ix. More...
 
template<class Element >
Bool_t operator== (const TVectorT< Element > &v1, const TVectorT< Element > &v2)
 Check to see if two vectors are identical. More...
 
template<class Element >
Element operator* (const TVectorT< Element > &v1, const TVectorT< Element > &v2)
 Compute the scalar product. More...
 
template<class Element >
TVectorT< Element > operator+ (const TVectorT< Element > &source1, const TVectorT< Element > &source2)
 Return source1+source2. More...
 
template<class Element >
TVectorT< Element > operator- (const TVectorT< Element > &source1, const TVectorT< Element > &source2)
 Return source1-source2. More...
 
template<class Element >
TVectorT< Element > operator* (const TMatrixT< Element > &a, const TVectorT< Element > &source)
 return A * source More...
 
template<class Element >
TVectorT< Element > operator* (const TMatrixTSym< Element > &a, const TVectorT< Element > &source)
 return A * source More...
 
template<class Element >
TVectorT< Element > operator* (const TMatrixTSparse< Element > &a, const TVectorT< Element > &source)
 return A * source More...
 
template<class Element >
TVectorT< Element > operator* (Element val, const TVectorT< Element > &source)
 return val * source More...
 
template<class Element >
Element Dot (const TVectorT< Element > &v1, const TVectorT< Element > &v2)
 return inner-produvt v1 . v2 More...
 
template<class Element1 , class Element2 >
TMatrixT< Element1 > OuterProduct (const TVectorT< Element1 > &v1, const TVectorT< Element2 > &v2)
 Return the matrix M = v1 * v2'. More...
 
template<class Element1 , class Element2 , class Element3 >
TMatrixT< Element1 > & OuterProduct (TMatrixT< Element1 > &target, const TVectorT< Element2 > &v1, const TVectorT< Element3 > &v2)
 Return the matrix M = v1 * v2'. More...
 
template<class Element1 , class Element2 , class Element3 >
Element1 Mult (const TVectorT< Element1 > &v1, const TMatrixT< Element2 > &m, const TVectorT< Element3 > &v2)
 Perform v1 * M * v2, a scalar result. More...
 
template<class Element >
TVectorT< Element > & Add (TVectorT< Element > &target, Element scalar, const TVectorT< Element > &source)
 Modify addition: target += scalar * source. More...
 
template<class Element >
TVectorT< Element > & Add (TVectorT< Element > &target, Element scalar, const TMatrixT< Element > &a, const TVectorT< Element > &source)
 Modify addition: target += scalar * A * source. More...
 
template<class Element >
TVectorT< Element > & Add (TVectorT< Element > &target, Element scalar, const TMatrixTSym< Element > &a, const TVectorT< Element > &source)
 Modify addition: target += A * source. More...
 
template<class Element >
TVectorT< Element > & Add (TVectorT< Element > &target, Element scalar, const TMatrixTSparse< Element > &a, const TVectorT< Element > &source)
 Modify addition: target += A * source. More...
 
template<class Element >
TVectorT< Element > & AddElemMult (TVectorT< Element > &target, Element scalar, const TVectorT< Element > &source1, const TVectorT< Element > &source2)
 Modify addition: target += scalar * ElementMult(source1,source2) . More...
 
template<class Element >
TVectorT< Element > & AddElemMult (TVectorT< Element > &target, Element scalar, const TVectorT< Element > &source1, const TVectorT< Element > &source2, const TVectorT< Element > &select)
 Modify addition: target += scalar * ElementMult(source1,source2) only for those elements where select[i] != 0.0. More...
 
template<class Element >
TVectorT< Element > & AddElemDiv (TVectorT< Element > &target, Element scalar, const TVectorT< Element > &source1, const TVectorT< Element > &source2)
 Modify addition: target += scalar * ElementDiv(source1,source2) . More...
 
template<class Element >
TVectorT< Element > & AddElemDiv (TVectorT< Element > &target, Element scalar, const TVectorT< Element > &source1, const TVectorT< Element > &source2, const TVectorT< Element > &select)
 Modify addition: target += scalar * ElementDiv(source1,source2) only for those elements where select[i] != 0.0. More...
 
template<class Element >
TVectorT< Element > & ElementMult (TVectorT< Element > &target, const TVectorT< Element > &source)
 Multiply target by the source, element-by-element. More...
 
template<class Element >
TVectorT< Element > & ElementMult (TVectorT< Element > &target, const TVectorT< Element > &source, const TVectorT< Element > &select)
 Multiply target by the source, element-by-element only where select[i] != 0.0. More...
 
template<class Element >
TVectorT< Element > & ElementDiv (TVectorT< Element > &target, const TVectorT< Element > &source)
 Divide target by the source, element-by-element. More...
 
template<class Element >
TVectorT< Element > & ElementDiv (TVectorT< Element > &target, const TVectorT< Element > &source, const TVectorT< Element > &select)
 Divide target by the source, element-by-element only where select[i] != 0.0. More...
 
template<class Element1 , class Element2 >
Bool_t AreCompatible (const TVectorT< Element1 > &v1, const TVectorT< Element2 > &v2, Int_t verbose)
 Check if v1 and v2 are both valid and have the same shape. More...
 
template<class Element1 , class Element2 >
Bool_t AreCompatible (const TMatrixT< Element1 > &m, const TVectorT< Element2 > &v, Int_t verbose)
 Check if m and v are both valid and have compatible shapes for M * v. More...
 
template<class Element1 , class Element2 >
Bool_t AreCompatible (const TVectorT< Element1 > &v, const TMatrixT< Element2 > &m, Int_t verbose)
 Check if m and v are both valid and have compatible shapes for v * M. More...
 
template<class Element >
void Compare (const TVectorT< Element > &v1, const TVectorT< Element > &v2)
 Compare two vectors and print out the result of the comparison. More...
 
template<class Element >
Bool_t VerifyVectorValue (const TVectorT< Element > &v, Element val, Int_t verbose, Element maxDevAllow)
 Validate that all elements of vector have value val within maxDevAllow . More...
 
template<class Element >
Bool_t VerifyVectorIdentity (const TVectorT< Element > &v1, const TVectorT< Element > &v2, Int_t verbose, Element maxDevAllow)
 Verify that elements of the two vectors are equal within maxDevAllow . More...
 
template Bool_t operator==< Float_t > (const TVectorF &source1, const TVectorF &source2)
 
template TVectorF operator+< Float_t > (const TVectorF &source1, const TVectorF &source2)
 
template TVectorF operator-< Float_t > (const TVectorF &source1, const TVectorF &source2)
 
template Float_t operator*< Float_t > (const TVectorF &source1, const TVectorF &source2)
 
template TVectorF operator*< Float_t > (const TMatrixF &a, const TVectorF &source)
 
template TVectorF operator*< Float_t > (const TMatrixFSym &a, const TVectorF &source)
 
template TVectorF operator*< Float_t > (const TMatrixFSparse &a, const TVectorF &source)
 
template TVectorF operator*< Float_t > (Float_t val, const TVectorF &source)
 
template Float_t Dot< Float_t > (const TVectorF &v1, const TVectorF &v2)
 
template TMatrixF OuterProduct< Float_t, Float_t > (const TVectorF &v1, const TVectorF &v2)
 
template TMatrixFOuterProduct< Float_t, Float_t, Float_t > (TMatrixF &target, const TVectorF &v1, const TVectorF &v2)
 
template Float_t Mult< Float_t, Float_t, Float_t > (const TVectorF &v1, const TMatrixF &m, const TVectorF &v2)
 
template TVectorFAdd< Float_t > (TVectorF &target, Float_t scalar, const TVectorF &source)
 
template TVectorFAdd< Float_t > (TVectorF &target, Float_t scalar, const TMatrixF &a, const TVectorF &source)
 
template TVectorFAdd< Float_t > (TVectorF &target, Float_t scalar, const TMatrixFSym &a, const TVectorF &source)
 
template TVectorFAdd< Float_t > (TVectorF &target, Float_t scalar, const TMatrixFSparse &a, const TVectorF &source)
 
template TVectorFAddElemMult< Float_t > (TVectorF &target, Float_t scalar, const TVectorF &source1, const TVectorF &source2)
 
template TVectorFAddElemMult< Float_t > (TVectorF &target, Float_t scalar, const TVectorF &source1, const TVectorF &source2, const TVectorF &select)
 
template TVectorFAddElemDiv< Float_t > (TVectorF &target, Float_t scalar, const TVectorF &source1, const TVectorF &source2)
 
template TVectorFAddElemDiv< Float_t > (TVectorF &target, Float_t scalar, const TVectorF &source1, const TVectorF &source2, const TVectorF &select)
 
template TVectorFElementMult< Float_t > (TVectorF &target, const TVectorF &source)
 
template TVectorFElementMult< Float_t > (TVectorF &target, const TVectorF &source, const TVectorF &select)
 
template TVectorFElementDiv< Float_t > (TVectorF &target, const TVectorF &source)
 
template TVectorFElementDiv< Float_t > (TVectorF &target, const TVectorF &source, const TVectorF &select)
 
template Bool_t AreCompatible< Float_t, Float_t > (const TVectorF &v1, const TVectorF &v2, Int_t verbose)
 
template Bool_t AreCompatible< Float_t, Double_t > (const TVectorF &v1, const TVectorD &v2, Int_t verbose)
 
template Bool_t AreCompatible< Float_t, Float_t > (const TMatrixF &m, const TVectorF &v, Int_t verbose)
 
template Bool_t AreCompatible< Float_t, Float_t > (const TVectorF &v, const TMatrixF &m, Int_t verbose)
 
template void Compare< Float_t > (const TVectorF &v1, const TVectorF &v2)
 
template Bool_t VerifyVectorValue< Float_t > (const TVectorF &m, Float_t val, Int_t verbose, Float_t maxDevAllow)
 
template Bool_t VerifyVectorIdentity< Float_t > (const TVectorF &m1, const TVectorF &m2, Int_t verbose, Float_t maxDevAllow)
 
template Bool_t operator==< Double_t > (const TVectorD &source1, const TVectorD &source2)
 
template TVectorD operator+< Double_t > (const TVectorD &source1, const TVectorD &source2)
 
template TVectorD operator-< Double_t > (const TVectorD &source1, const TVectorD &source2)
 
template Double_t operator*< Double_t > (const TVectorD &source1, const TVectorD &source2)
 
template TVectorD operator*< Double_t > (const TMatrixD &a, const TVectorD &source)
 
template TVectorD operator*< Double_t > (const TMatrixDSym &a, const TVectorD &source)
 
template TVectorD operator*< Double_t > (const TMatrixDSparse &a, const TVectorD &source)
 
template TVectorD operator*< Double_t > (Double_t val, const TVectorD &source)
 
template Double_t Dot< Double_t > (const TVectorD &v1, const TVectorD &v2)
 
template TMatrixD OuterProduct< Double_t, Double_t > (const TVectorD &v1, const TVectorD &v2)
 
template TMatrixDOuterProduct< Double_t, Double_t, Double_t > (TMatrixD &target, const TVectorD &v1, const TVectorD &v2)
 
template Double_t Mult< Double_t, Double_t, Double_t > (const TVectorD &v1, const TMatrixD &m, const TVectorD &v2)
 
template TVectorDAdd< Double_t > (TVectorD &target, Double_t scalar, const TVectorD &source)
 
template TVectorDAdd< Double_t > (TVectorD &target, Double_t scalar, const TMatrixD &a, const TVectorD &source)
 
template TVectorDAdd< Double_t > (TVectorD &target, Double_t scalar, const TMatrixDSym &a, const TVectorD &source)
 
template TVectorDAdd< Double_t > (TVectorD &target, Double_t scalar, const TMatrixDSparse &a, const TVectorD &source)
 
template TVectorDAddElemMult< Double_t > (TVectorD &target, Double_t scalar, const TVectorD &source1, const TVectorD &source2)
 
template TVectorDAddElemMult< Double_t > (TVectorD &target, Double_t scalar, const TVectorD &source1, const TVectorD &source2, const TVectorD &select)
 
template TVectorDAddElemDiv< Double_t > (TVectorD &target, Double_t scalar, const TVectorD &source1, const TVectorD &source2)
 
template TVectorDAddElemDiv< Double_t > (TVectorD &target, Double_t scalar, const TVectorD &source1, const TVectorD &source2, const TVectorD &select)
 
template TVectorDElementMult< Double_t > (TVectorD &target, const TVectorD &source)
 
template TVectorDElementMult< Double_t > (TVectorD &target, const TVectorD &source, const TVectorD &select)
 
template TVectorDElementDiv< Double_t > (TVectorD &target, const TVectorD &source)
 
template TVectorDElementDiv< Double_t > (TVectorD &target, const TVectorD &source, const TVectorD &select)
 
template Bool_t AreCompatible< Double_t, Double_t > (const TVectorD &v1, const TVectorD &v2, Int_t verbose)
 
template Bool_t AreCompatible< Double_t, Float_t > (const TVectorD &v1, const TVectorF &v2, Int_t verbose)
 
template Bool_t AreCompatible< Double_t, Double_t > (const TMatrixD &m, const TVectorD &v, Int_t verbose)
 
template Bool_t AreCompatible< Double_t, Double_t > (const TVectorD &v, const TMatrixD &m, Int_t verbose)
 
template void Compare< Double_t > (const TVectorD &v1, const TVectorD &v2)
 
template Bool_t VerifyVectorValue< Double_t > (const TVectorD &m, Double_t val, Int_t verbose, Double_t maxDevAllow)
 
template Bool_t VerifyVectorIdentity< Double_t > (const TVectorD &m1, const TVectorD &m2, Int_t verbose, Double_t maxDevAllow)
 

Function Documentation

template<class Element >
TVectorT<Element>& Add ( TVectorT< Element > &  target,
Element  scalar,
const TVectorT< Element > &  source 
)

Modify addition: target += scalar * source.

Definition at line 1584 of file TVectorT.cxx.

Referenced by operator*().

template<class Element >
TVectorT<Element>& Add ( TVectorT< Element > &  target,
Element  scalar,
const TMatrixT< Element > &  a,
const TVectorT< Element > &  source 
)

Modify addition: target += scalar * A * source.

NOTE: in case scalar=0, do target = A * source.

Definition at line 1613 of file TVectorT.cxx.

template<class Element >
TVectorT<Element>& Add ( TVectorT< Element > &  target,
Element  scalar,
const TMatrixTSym< Element > &  a,
const TVectorT< Element > &  source 
)

Modify addition: target += A * source.

NOTE: in case scalar=0, do target = A * source.

Definition at line 1691 of file TVectorT.cxx.

template<class Element >
TVectorT<Element>& Add ( TVectorT< Element > &  target,
Element  scalar,
const TMatrixTSparse< Element > &  a,
const TVectorT< Element > &  source 
)

Modify addition: target += A * source.

NOTE: in case scalar=0, do target = A * source.

Definition at line 1763 of file TVectorT.cxx.

template TVectorD& Add< Double_t > ( TVectorD target,
Double_t  scalar,
const TVectorD source 
)
template TVectorD& Add< Double_t > ( TVectorD target,
Double_t  scalar,
const TMatrixD a,
const TVectorD source 
)
template TVectorD& Add< Double_t > ( TVectorD target,
Double_t  scalar,
const TMatrixDSym a,
const TVectorD source 
)
template TVectorD& Add< Double_t > ( TVectorD target,
Double_t  scalar,
const TMatrixDSparse a,
const TVectorD source 
)
template TVectorF& Add< Float_t > ( TVectorF target,
Float_t  scalar,
const TVectorF source 
)
template TVectorF& Add< Float_t > ( TVectorF target,
Float_t  scalar,
const TMatrixF a,
const TVectorF source 
)
template TVectorF& Add< Float_t > ( TVectorF target,
Float_t  scalar,
const TMatrixFSym a,
const TVectorF source 
)
template TVectorF& Add< Float_t > ( TVectorF target,
Float_t  scalar,
const TMatrixFSparse a,
const TVectorF source 
)
template<class Element >
TVectorT<Element>& AddElemDiv ( TVectorT< Element > &  target,
Element  scalar,
const TVectorT< Element > &  source1,
const TVectorT< Element > &  source2 
)

Modify addition: target += scalar * ElementDiv(source1,source2) .

Definition at line 1914 of file TVectorT.cxx.

Referenced by TQpLinSolverBase::ComputeDiagonals(), and TQpLinSolverBase::Solve().

template<class Element >
TVectorT<Element>& AddElemDiv ( TVectorT< Element > &  target,
Element  scalar,
const TVectorT< Element > &  source1,
const TVectorT< Element > &  source2,
const TVectorT< Element > &  select 
)

Modify addition: target += scalar * ElementDiv(source1,source2) only for those elements where select[i] != 0.0.

Definition at line 1968 of file TVectorT.cxx.

template TVectorD& AddElemDiv< Double_t > ( TVectorD target,
Double_t  scalar,
const TVectorD source1,
const TVectorD source2 
)
template TVectorD& AddElemDiv< Double_t > ( TVectorD target,
Double_t  scalar,
const TVectorD source1,
const TVectorD source2,
const TVectorD select 
)
template TVectorF& AddElemDiv< Float_t > ( TVectorF target,
Float_t  scalar,
const TVectorF source1,
const TVectorF source2 
)
template TVectorF& AddElemDiv< Float_t > ( TVectorF target,
Float_t  scalar,
const TVectorF source1,
const TVectorF source2,
const TVectorF select 
)
template<class Element >
TVectorT<Element>& AddElemMult ( TVectorT< Element > &  target,
Element  scalar,
const TVectorT< Element > &  source1,
const TVectorT< Element > &  source2 
)

Modify addition: target += scalar * ElementMult(source1,source2) .

Definition at line 1841 of file TVectorT.cxx.

Referenced by TQpResidual::Add_r3_xz_alpha(), TQpLinSolverBase::Solve(), and TQpLinSolverBase::SolveXYZS().

template<class Element >
TVectorT<Element>& AddElemMult ( TVectorT< Element > &  target,
Element  scalar,
const TVectorT< Element > &  source1,
const TVectorT< Element > &  source2,
const TVectorT< Element > &  select 
)

Modify addition: target += scalar * ElementMult(source1,source2) only for those elements where select[i] != 0.0.

Definition at line 1874 of file TVectorT.cxx.

template TVectorD& AddElemMult< Double_t > ( TVectorD target,
Double_t  scalar,
const TVectorD source1,
const TVectorD source2 
)
template TVectorD& AddElemMult< Double_t > ( TVectorD target,
Double_t  scalar,
const TVectorD source1,
const TVectorD source2,
const TVectorD select 
)
template TVectorF& AddElemMult< Float_t > ( TVectorF target,
Float_t  scalar,
const TVectorF source1,
const TVectorF source2 
)
template TVectorF& AddElemMult< Float_t > ( TVectorF target,
Float_t  scalar,
const TVectorF source1,
const TVectorF source2,
const TVectorF select 
)
template<class Element1 , class Element2 >
Bool_t AreCompatible ( const TVectorT< Element1 > &  v1,
const TVectorT< Element2 > &  v2,
Int_t  verbose 
)
template<class Element1 , class Element2 >
Bool_t AreCompatible ( const TMatrixT< Element1 > &  m,
const TVectorT< Element2 > &  v,
Int_t  verbose 
)

Check if m and v are both valid and have compatible shapes for M * v.

Definition at line 2154 of file TVectorT.cxx.

template<class Element1 , class Element2 >
Bool_t AreCompatible ( const TVectorT< Element1 > &  v,
const TMatrixT< Element2 > &  m,
Int_t  verbose 
)

Check if m and v are both valid and have compatible shapes for v * M.

Definition at line 2180 of file TVectorT.cxx.

template Bool_t AreCompatible< Double_t, Double_t > ( const TVectorD v1,
const TVectorD v2,
Int_t  verbose 
)
template Bool_t AreCompatible< Double_t, Double_t > ( const TMatrixD m,
const TVectorD v,
Int_t  verbose 
)
template Bool_t AreCompatible< Double_t, Double_t > ( const TVectorD v,
const TMatrixD m,
Int_t  verbose 
)
template Bool_t AreCompatible< Double_t, Float_t > ( const TVectorD v1,
const TVectorF v2,
Int_t  verbose 
)
template Bool_t AreCompatible< Float_t, Double_t > ( const TVectorF v1,
const TVectorD v2,
Int_t  verbose 
)
template Bool_t AreCompatible< Float_t, Float_t > ( const TVectorF v1,
const TVectorF v2,
Int_t  verbose 
)
template Bool_t AreCompatible< Float_t, Float_t > ( const TMatrixF m,
const TVectorF v,
Int_t  verbose 
)
template Bool_t AreCompatible< Float_t, Float_t > ( const TVectorF v,
const TMatrixF m,
Int_t  verbose 
)
template<class Element >
void Compare ( const TVectorT< Element > &  v1,
const TVectorT< Element > &  v2 
)

Compare two vectors and print out the result of the comparison.

Definition at line 2206 of file TVectorT.cxx.

template void Compare< Double_t > ( const TVectorD v1,
const TVectorD v2 
)
template void Compare< Float_t > ( const TVectorF v1,
const TVectorF v2 
)
template<class Element >
Element Dot ( const TVectorT< Element > &  v1,
const TVectorT< Element > &  v2 
)

return inner-produvt v1 . v2

Definition at line 1475 of file TVectorT.cxx.

Referenced by operator*().

template Double_t Dot< Double_t > ( const TVectorD v1,
const TVectorD v2 
)
template Float_t Dot< Float_t > ( const TVectorF v1,
const TVectorF v2 
)
Double_t Drand ( Double_t ix)

Random number generator [0....1] with seed ix.

Definition at line 1852 of file TMatrixTUtils.cxx.

Referenced by TVectorT< Element >::Randomize().

template<class Element >
TVectorT<Element>& ElementDiv ( TVectorT< Element > &  target,
const TVectorT< Element > &  source 
)

Divide target by the source, element-by-element.

Definition at line 2072 of file TVectorT.cxx.

template<class Element >
TVectorT<Element>& ElementDiv ( TVectorT< Element > &  target,
const TVectorT< Element > &  source,
const TVectorT< Element > &  select 
)

Divide target by the source, element-by-element only where select[i] != 0.0.

Definition at line 2098 of file TVectorT.cxx.

template TVectorD& ElementDiv< Double_t > ( TVectorD target,
const TVectorD source 
)
template TVectorD& ElementDiv< Double_t > ( TVectorD target,
const TVectorD source,
const TVectorD select 
)
template TVectorF& ElementDiv< Float_t > ( TVectorF target,
const TVectorF source 
)
template TVectorF& ElementDiv< Float_t > ( TVectorF target,
const TVectorF source,
const TVectorF select 
)
template<class Element >
TVectorT<Element>& ElementMult ( TVectorT< Element > &  target,
const TVectorT< Element > &  source 
)

Multiply target by the source, element-by-element.

Definition at line 2029 of file TVectorT.cxx.

template<class Element >
TVectorT<Element>& ElementMult ( TVectorT< Element > &  target,
const TVectorT< Element > &  source,
const TVectorT< Element > &  select 
)

Multiply target by the source, element-by-element only where select[i] != 0.0.

Definition at line 2049 of file TVectorT.cxx.

template TVectorD& ElementMult< Double_t > ( TVectorD target,
const TVectorD source 
)
template TVectorD& ElementMult< Double_t > ( TVectorD target,
const TVectorD source,
const TVectorD select 
)
template TVectorF& ElementMult< Float_t > ( TVectorF target,
const TVectorF source 
)
template TVectorF& ElementMult< Float_t > ( TVectorF target,
const TVectorF source,
const TVectorF select 
)
template<class Element1 , class Element2 , class Element3 >
Element1 Mult ( const TVectorT< Element1 > &  v1,
const TMatrixT< Element2 > &  m,
const TVectorT< Element3 > &  v2 
)

Perform v1 * M * v2, a scalar result.

Definition at line 1539 of file TVectorT.cxx.

template Double_t Mult< Double_t, Double_t, Double_t > ( const TVectorD v1,
const TMatrixD m,
const TVectorD v2 
)
template Float_t Mult< Float_t, Float_t, Float_t > ( const TVectorF v1,
const TMatrixF m,
const TVectorF v2 
)
template<class Element >
Element operator* ( const TVectorT< Element > &  v1,
const TVectorT< Element > &  v2 
)

Compute the scalar product.

Definition at line 1393 of file TVectorT.cxx.

template<class Element >
TVectorT<Element> operator* ( const TMatrixT< Element > &  a,
const TVectorT< Element > &  source 
)

return A * source

Definition at line 1431 of file TVectorT.cxx.

template<class Element >
TVectorT<Element> operator* ( const TMatrixTSym< Element > &  a,
const TVectorT< Element > &  source 
)

return A * source

Definition at line 1442 of file TVectorT.cxx.

template<class Element >
TVectorT<Element> operator* ( const TMatrixTSparse< Element > &  a,
const TVectorT< Element > &  source 
)

return A * source

Definition at line 1453 of file TVectorT.cxx.

template<class Element >
TVectorT<Element> operator* ( Element  val,
const TVectorT< Element > &  source 
)

return val * source

Definition at line 1464 of file TVectorT.cxx.

template Double_t operator*< Double_t > ( const TVectorD source1,
const TVectorD source2 
)
template TVectorD operator*< Double_t > ( const TMatrixD a,
const TVectorD source 
)
template TVectorD operator*< Double_t > ( const TMatrixDSym a,
const TVectorD source 
)
template TVectorD operator*< Double_t > ( const TMatrixDSparse a,
const TVectorD source 
)
template TVectorD operator*< Double_t > ( Double_t  val,
const TVectorD source 
)
template Float_t operator*< Float_t > ( const TVectorF source1,
const TVectorF source2 
)
template TVectorF operator*< Float_t > ( const TMatrixF a,
const TVectorF source 
)
template TVectorF operator*< Float_t > ( const TMatrixFSym a,
const TVectorF source 
)
template TVectorF operator*< Float_t > ( const TMatrixFSparse a,
const TVectorF source 
)
template TVectorF operator*< Float_t > ( Float_t  val,
const TVectorF source 
)
template<class Element >
TVectorT<Element> operator+ ( const TVectorT< Element > &  source1,
const TVectorT< Element > &  source2 
)

Return source1+source2.

Definition at line 1409 of file TVectorT.cxx.

template TVectorD operator+< Double_t > ( const TVectorD source1,
const TVectorD source2 
)
template TVectorF operator+< Float_t > ( const TVectorF source1,
const TVectorF source2 
)
template<class Element >
TVectorT<Element> operator- ( const TVectorT< Element > &  source1,
const TVectorT< Element > &  source2 
)

Return source1-source2.

Definition at line 1420 of file TVectorT.cxx.

template TVectorD operator-< Double_t > ( const TVectorD source1,
const TVectorD source2 
)
template TVectorF operator-< Float_t > ( const TVectorF source1,
const TVectorF source2 
)
template<class Element >
Bool_t operator== ( const TVectorT< Element > &  v1,
const TVectorT< Element > &  v2 
)

Check to see if two vectors are identical.

Definition at line 1383 of file TVectorT.cxx.

template Bool_t operator==< Double_t > ( const TVectorD source1,
const TVectorD source2 
)
template Bool_t operator==< Float_t > ( const TVectorF source1,
const TVectorF source2 
)
template<class Element1 , class Element2 >
TMatrixT<Element1> OuterProduct ( const TVectorT< Element1 > &  v1,
const TVectorT< Element2 > &  v2 
)

Return the matrix M = v1 * v2'.

Definition at line 1492 of file TVectorT.cxx.

template<class Element1 , class Element2 , class Element3 >
TMatrixT<Element1>& OuterProduct ( TMatrixT< Element1 > &  target,
const TVectorT< Element2 > &  v1,
const TVectorT< Element3 > &  v2 
)

Return the matrix M = v1 * v2'.

Definition at line 1508 of file TVectorT.cxx.

template TMatrixD OuterProduct< Double_t, Double_t > ( const TVectorD v1,
const TVectorD v2 
)
template TMatrixD& OuterProduct< Double_t, Double_t, Double_t > ( TMatrixD target,
const TVectorD v1,
const TVectorD v2 
)
template TMatrixF OuterProduct< Float_t, Float_t > ( const TVectorF v1,
const TVectorF v2 
)
template TMatrixF& OuterProduct< Float_t, Float_t, Float_t > ( TMatrixF target,
const TVectorF v1,
const TVectorF v2 
)
templateClassImp ( TVectorT  )

Delete data pointer m, if it was assigned on the heap.

Definition at line 43 of file TVectorT.cxx.

template<class Element >
Bool_t VerifyVectorIdentity ( const TVectorT< Element > &  v1,
const TVectorT< Element > &  v2,
Int_t  verbose,
Element  maxDevAllow 
)

Verify that elements of the two vectors are equal within maxDevAllow .

Definition at line 2294 of file TVectorT.cxx.

Referenced by solveLinear(), and VerifyVectorIdentity().

template Bool_t VerifyVectorIdentity< Double_t > ( const TVectorD m1,
const TVectorD m2,
Int_t  verbose,
Double_t  maxDevAllow 
)
template Bool_t VerifyVectorIdentity< Float_t > ( const TVectorF m1,
const TVectorF m2,
Int_t  verbose,
Float_t  maxDevAllow 
)
template<class Element >
Bool_t VerifyVectorValue ( const TVectorT< Element > &  v,
Element  val,
Int_t  verbose,
Element  maxDevAllow 
)

Validate that all elements of vector have value val within maxDevAllow .

Definition at line 2259 of file TVectorT.cxx.

Referenced by VerifyVectorValue().

template Bool_t VerifyVectorValue< Double_t > ( const TVectorD m,
Double_t  val,
Int_t  verbose,
Double_t  maxDevAllow 
)
template Bool_t VerifyVectorValue< Float_t > ( const TVectorF m,
Float_t  val,
Int_t  verbose,
Float_t  maxDevAllow 
)