WPILibC++ 2024.3.2
Eigen::internal::matrix_exp_computeUV< MatrixType, RealScalar > Struct Template Reference

Compute the (17,17)-Padé approximant to the exponential. More...

#include </home/runner/work/allwpilib/allwpilib/wpimath/src/main/native/thirdparty/eigen/include/unsupported/Eigen/src/MatrixFunctions/MatrixExponential.h>

Static Public Member Functions

static void run (const MatrixType &arg, MatrixType &U, MatrixType &V, int &squarings)
 Compute Padé approximant to the exponential. More...
 

Detailed Description

template<typename MatrixType, typename RealScalar = typename NumTraits<typename traits<MatrixType>::Scalar>::Real>
struct Eigen::internal::matrix_exp_computeUV< MatrixType, RealScalar >

Compute the (17,17)-Padé approximant to the exponential.

After exit, \( (V+U)(V-U)^{-1} \) is the Padé approximant of \( \exp(A) \) around \( A = 0 \).

This function activates only if your long double is double-double or quadruple.

Member Function Documentation

◆ run()

template<typename MatrixType , typename RealScalar = typename NumTraits<typename traits<MatrixType>::Scalar>::Real>
static void Eigen::internal::matrix_exp_computeUV< MatrixType, RealScalar >::run ( const MatrixType &  arg,
MatrixType &  U,
MatrixType &  V,
int &  squarings 
)
static

Compute Padé approximant to the exponential.

Computes U, V and squarings such that \( (V+U)(V-U)^{-1} \) is a Padé approximant of \( \exp(2^{-\mbox{squarings}}M) \) around \( M = 0 \), where \( M \) denotes the matrix arg. The degree of the Padé approximant and the value of squarings are chosen such that the approximation error is no more than the round-off error.


The documentation for this struct was generated from the following file: