54 template<
typename dtype>
67 Shape newShape(inShape);
72 for (
uint32 row = 0; row < order; ++row)
74 for (
uint32 col = 0; col < order; ++col)
76 tempArray(row, col) =
static_cast<double>(inArray(row, col));
80 for (
uint32 row = 0; row < order; ++row)
82 for (
uint32 col = order; col < 2 * order; ++col)
84 if (row == col - order)
86 tempArray(row, col) = 1.0;
90 tempArray(row, col) = 0.0;
95 for (
uint32 row = 0; row < order; ++row)
97 double t = tempArray(row, row);
98 for (
uint32 col = row; col < 2 * order; ++col)
100 tempArray(row, col) /= t;
103 for (
uint32 col = 0; col < order; ++col)
107 t = tempArray(col, row);
108 for (
uint32 k = 0; k < 2 * order; ++k)
110 tempArray(col, k) -= t * tempArray(row, k);
117 for (
uint32 row = 0; row < order; row++)
120 for (
uint32 col = order; col < 2 * order; ++col)
122 returnArray(row, colCounter++) = tempArray(row, col);