17#ifndef ALICEO2_GPUCOMMON_TPCFASTTRANSFORMATION_SYMMATRIXSOLVER_H
18#define ALICEO2_GPUCOMMON_TPCFASTTRANSFORMATION_SYMMATRIXSOLVER_H
43 assert(N > 0 && M > 0);
44 mA.resize(mN * mShift, 0.);
48 double&
A(int32_t
i, int32_t
j)
50 auto ij = std::minmax(
i,
j);
51 assert(ij.first >= 0 && ij.second < mN);
52 return mA[ij.first * mShift + ij.second];
56 double&
B(int32_t
i, int32_t
j)
58 assert(
i >= 0 && i < mN && j >= 0 &&
j < mM);
59 return mA[
i * mShift + mN +
j];
69 static int32_t
test(
bool prn = 0);
76 std::vector<double> mA;
double & B(int32_t i, int32_t j)
access to B elements
double & A(int32_t i, int32_t j)
access to A elements
SymMatrixSolver(int32_t N, int32_t M)
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...
FIXME: do not use data model tables.