Lines Matching refs:MatrixType

30 template <typename MatrixType>
35 typedef typename MatrixType::Scalar Scalar;
36 // typedef typename MatrixType::Index Index;
39 // typedef Matrix<Scalar, MatrixType::RowsAtCompileTime, 1> VectorType;
48 MatrixType compute(const MatrixType& A);
52 void compute2x2(const MatrixType& A, MatrixType& result);
53 void computeBig(const MatrixType& A, MatrixType& result);
57 void computePade(MatrixType& result, const MatrixType& T, int degree);
58 void computePade3(MatrixType& result, const MatrixType& T);
59 void computePade4(MatrixType& result, const MatrixType& T);
60 void computePade5(MatrixType& result, const MatrixType& T);
61 void computePade6(MatrixType& result, const MatrixType& T);
62 void computePade7(MatrixType& result, const MatrixType& T);
63 void computePade8(MatrixType& result, const MatrixType& T);
64 void computePade9(MatrixType& result, const MatrixType& T);
65 void computePade10(MatrixType& result, const MatrixType& T);
66 void computePade11(MatrixType& result, const MatrixType& T);
81 template <typename MatrixType>
82 MatrixType MatrixLogarithmAtomic<MatrixType>::compute(const MatrixType& A)
85 MatrixType result(A.rows(), A.rows());
96 template <typename MatrixType>
97 void MatrixLogarithmAtomic<MatrixType>::compute2x2(const MatrixType& A, MatrixType& result)
125 template <typename MatrixType>
126 void MatrixLogarithmAtomic<MatrixType>::computeBig(const MatrixType& A, MatrixType& result)
132 MatrixType T = A, sqrtT;
140 RealScalar normTminusI = (T - MatrixType::Identity(T.rows(), T.rows())).cwiseAbs().colwise().sum().maxCoeff();
148 MatrixSquareRootTriangular<MatrixType>(T).compute(sqrtT);
158 template <typename MatrixType>
159 int MatrixLogarithmAtomic<MatrixType>::getPadeDegree(float normTminusI)
171 template <typename MatrixType>
172 int MatrixLogarithmAtomic<MatrixType>::getPadeDegree(double normTminusI)
184 template <typename MatrixType>
185 int MatrixLogarithmAtomic<MatrixType>::getPadeDegree(long double normTminusI)
215 template <typename MatrixType>
216 void MatrixLogarithmAtomic<MatrixType>::computePade(MatrixType& result, const MatrixType& T, int degree)
232 template <typename MatrixType>
233 void MatrixLogarithmAtomic<MatrixType>::computePade3(MatrixType& result, const MatrixType& T)
241 MatrixType TminusI = T - MatrixType::Identity(T.rows(), T.rows());
244 result += weights[k] * (MatrixType::Identity(T.rows(), T.rows()) + nodes[k] * TminusI)
248 template <typename MatrixType>
249 void MatrixLogarithmAtomic<MatrixType>::computePade4(MatrixType& result, const MatrixType& T)
257 MatrixType TminusI = T - MatrixType::Identity(T.rows(), T.rows());
260 result += weights[k] * (MatrixType::Identity(T.rows(), T.rows()) + nodes[k] * TminusI)
264 template <typename MatrixType>
265 void MatrixLogarithmAtomic<MatrixType>::computePade5(MatrixType& result, const MatrixType& T)
275 MatrixType TminusI = T - MatrixType::Identity(T.rows(), T.rows());
278 result += weights[k] * (MatrixType::Identity(T.rows(), T.rows()) + nodes[k] * TminusI)
282 template <typename MatrixType>
283 void MatrixLogarithmAtomic<MatrixType>::computePade6(MatrixType& result, const MatrixType& T)
293 MatrixType TminusI = T - MatrixType::Identity(T.rows(), T.rows());
296 result += weights[k] * (MatrixType::Identity(T.rows(), T.rows()) + nodes[k] * TminusI)
300 template <typename MatrixType>
301 void MatrixLogarithmAtomic<MatrixType>::computePade7(MatrixType& result, const MatrixType& T)
313 MatrixType TminusI = T - MatrixType::Identity(T.rows(), T.rows());
316 result += weights[k] * (MatrixType::Identity(T.rows(), T.rows()) + nodes[k] * TminusI)
320 template <typename MatrixType>
321 void MatrixLogarithmAtomic<MatrixType>::computePade8(MatrixType& result, const MatrixType& T)
333 MatrixType TminusI = T - MatrixType::Identity(T.rows(), T.rows());
336 result += weights[k] * (MatrixType::Identity(T.rows(), T.rows()) + nodes[k] * TminusI)
340 template <typename MatrixType>
341 void MatrixLogarithmAtomic<MatrixType>::computePade9(MatrixType& result, const MatrixType& T)
355 MatrixType TminusI = T - MatrixType::Identity(T.rows(), T.rows());
358 result += weights[k] * (MatrixType::Identity(T.rows(), T.rows()) + nodes[k] * TminusI)
362 template <typename MatrixType>
363 void MatrixLogarithmAtomic<MatrixType>::computePade10(MatrixType& result, const MatrixType& T)
377 MatrixType TminusI = T - MatrixType::Identity(T.rows(), T.rows());
380 result += weights[k] * (MatrixType::Identity(T.rows(), T.rows()) + nodes[k] * TminusI)
384 template <typename MatrixType>
385 void MatrixLogarithmAtomic<MatrixType>::computePade11(MatrixType& result, const MatrixType& T)
401 MatrixType TminusI = T - MatrixType::Identity(T.rows(), T.rows());
404 result += weights[k] * (MatrixType::Identity(T.rows(), T.rows()) + nodes[k] * TminusI)