16 std::vector<float>
gV;
21 std::cout <<
"init smearing vector ";
24 gV.push_back( r.
Rndm() );
26 std::cout <<
" with size " << gV.size() << std::endl;
77 result = m1; result += mtmp;
105 result = mtmp; result *=
a;
111 template<
class M,
class V>
123 template<
class M,
class V>
124 void testGMV(
const M & mat,
const V & v1,
const V & v2,
double & time, V &
result) {
130 result = mat * vtmp + v2;
136 template<
class A,
class B,
class C>
143 result = a * btmp + c;
154 double testDot_S(
const V & v1,
const V & v2,
double & time) {
161 result =
Dot(v1,vtmp);
179 template<
class M,
class V>
202 result = mtmp.Inverse(ifail);
209 template<
class A,
class B,
class C>
226 template<
class A,
class B,
class C>
242 template<
class A,
class C>
261 template<
class M,
class V>
268 Add(result,0.0,mat,vtmp);
273 template<
class M,
class V>
274 void testGMV_T(
const M & mat,
const V & v1,
const V & v2,
double & time, V &
result) {
280 memcpy(result.GetMatrixArray(),v2.GetMatrixArray(),v2.GetNoElements()*
sizeof(
Double_t));
281 Add(result,1.0,mat,vtmp);
286 template<
class A,
class B,
class C>
306 result.Plus(m1,mtmp);
310 template<
class A,
class B,
class C>
324 double testDot_T(
const V & v1,
const V & v2,
double & time) {
331 result =
Dot(v1,vtmp);
336 template<
class M,
class V>
343 result = a.Similarity(vtmp);
356 memcpy(result.GetMatrixArray(),mtmp.GetMatrixArray(),mtmp.GetNoElements()*
sizeof(
Double_t));
367 memcpy(result.GetMatrixArray(),mtmp.GetMatrixArray(),mtmp.GetNoElements()*
sizeof(
Double_t));
400 template<
class A,
class B,
class C>
407 memcpy(result.GetMatrixArray(),btmp.GetMatrixArray(),btmp.GetNoElements()*
sizeof(
Double_t));
408 result.Similarity(a);
426 template<
class A,
class C>
433 result.Transpose(atmp);
443 double testDot_C(
const V & v1,
const V & v2,
double & time) {
450 result = dot(v1,vtmp);
455 template<
class M,
class V>
464 result = dot(vtmp,tmp);
490 result = m1; result += mtmp;
509 template<
class A,
class B,
class C>
516 result = a * btmp + c;
530 result = mtmp.inverse(ifail);
531 if (ifail) {std::cout <<
"error inverting" << mtmp << std::endl;
return; }
536 template<
class A,
class B,
class C>
544 result = a * btmp * a.T();
549 template<
class A,
class B,
class C>
556 result = btmp.similarity(a);
561 template<
class A,
class C>
T Dot(const SVector< T, D > &lhs, const SVector< T, D > &rhs)
Vector dot product.
void testATBA_C2(const A &a, const B &b, double &time, C &result)
T Similarity(const SMatrix< T, D, D, R > &lhs, const SVector< T, D > &rhs)
Similarity Vector - Matrix Product: v^T * A * v returning a scalar value of type T ...
void testVeq(const V &v, double &time, V &result)
void testInv_T2(const M &m, double &time, M &result)
void testATBA_T(const A &a, const B &b, double &time, C &result)
Random number generator class based on M.
void testMM(const A &a, const B &b, const C &c, double &time, C &result)
virtual Double_t Rndm()
Machine independent random number generator.
void testMV_T(const M &mat, const V &v, double &time, V &result)
void testVscale(const V &v1, double a, double &time, V &result)
void testATBA_T2(const A &a, const B &b, double &time, C &result)
Expr< TransposeOp< SMatrix< T, D1, D2, R >, T, D1, D2 >, T, D2, D1, typename TranspPolicy< T, D1, D2, R >::RepType > Transpose(const SMatrix< T, D1, D2, R > &rhs)
Matrix Transpose B(i,j) = A(j,i) returning a matrix expression.
void testMscale(const M &m1, double a, double &time, M &result)
double testDot_S(const V &v1, const V &v2, double &time)
void testMM_T(const A &a, const B &b, const C &c, double &time, C &result)
void testInv_T(const M &m, double &time, M &result)
void testMeq(const M &m, double &time, M &result)
void testMad(const M &m1, const M &m2, double &time, M &result)
double testInnerProd_C(const M &a, const V &v, double &time)
void testInv_S(const M &m, double &time, M &result)
RooCmdArg Timer(Bool_t flag=kTRUE)
void testMscale_T(const M &m1, double a, double &time, M &result)
void testMT_S(const A &a, double &time, C &result)
void testMM_C(const A &a, const B &b, const C &c, double &time, C &result)
double testInnerProd_S(const M &a, const V &v, double &time)
double testDot_T(const V &v1, const V &v2, double &time)
void testMeq_C(const M &m, double &time, M &result)
void testATBA_C(const A &a, const B &b, double &time, C &result)
void Add(THist< DIMENSIONS, PRECISION_TO, STAT_TO... > &to, const THist< DIMENSIONS, PRECISION_FROM, STAT_FROM... > &from)
Add two histograms.
void testInv_C(const M &a, double &time, M &result)
void testMT_C(const A &a, double &time, C &result)
void testGMV_T(const M &mat, const V &v1, const V &v2, double &time, V &result)
void testATBA_S(const A &a, const B &b, double &time, C &result)
void testGMV(const M &mat, const V &v1, const V &v2, double &time, V &result)
void testVad(const V &v1, const V &v2, double &time, V &result)
void testVscale_T(const V &v1, double a, double &time, V &result)
double testInnerProd_T(const M &a, const V &v, double &time)
SMatrix< T, D2, D2, MatRepSym< T, D2 > > SimilarityT(const SMatrix< T, D1, D2, R > &lhs, const SMatrix< T, D1, D1, MatRepSym< T, D1 > > &rhs)
Transpose Similarity Matrix Product : B = U^T * A * U for A symmetric returning a symmetric matrix ex...
you should not use this method at all Int_t Int_t Double_t Double_t Double_t Int_t Double_t Double_t Double_t Double_t b
void testMad_C(const M &m1, const M &m2, double &time, M &result)
void testMT_T(const A &a, double &time, C &result)
void testMad_T(const M &m1, const M &m2, double &time, M &result)
double testDot_C(const V &v1, const V &v2, double &time)
void testMV(const M &mat, const V &v, double &time, V &result)
void testVad_T(const V &v1, const V &v2, double &time, V &result)
void testMscale_C(const M &m1, double a, double &time, M &result)
void testATBA_S2(const A &a, const B &b, double &time, C &result)