Controlpp
Loading...
Searching...
No Matches
expm.hpp File Reference

Includes functions for matrix exponentiation. More...

#include "math.hpp"

Go to the source code of this file.

Classes

struct  controlpp::ExpmPadeParams
 Pade for the scaled pade matrix exponential. More...
 

Namespaces

namespace  controlpp
 The main namespace for the Control++ library.
 

Functions

template<class T , int Rows, int Cols, int Options, int MaxRows, int MaxCols>
Eigen::Matrix< T, Rows, Cols, Options, MaxRows, MaxCols > controlpp::expm_taylor (const Eigen::Matrix< T, Rows, Cols, Options, MaxRows, MaxCols > &x, int n)
 Exponential function with a taylor approximation.
 
template<class T , int Rows, int Cols, int Options, int MaxRows, int MaxCols>
Eigen::Matrix< T, Rows, Cols, Options, MaxRows, MaxCols > controlpp::expm_taylor_scaled (const Eigen::Matrix< T, Rows, Cols, Options, MaxRows, MaxCols > &M, int taylor_order=8, int scaling=10)
 Calculates the matrix exponent \( \exp{\mathbf{M}} \).
 
template<class T , int N, int Options, int MaxRows, int MaxCols>
Eigen::Matrix< T, N, N > controlpp::expm_pade (const Eigen::Matrix< T, N, N, Options, MaxRows, MaxCols > &A, int Order=5)
 Approximates \(\exp{A}\) using a pade fraction.
 
template<class T , int N, int Options, int MaxRows, int MaxCols>
Eigen::Matrix< T, N, N > controlpp::expm_pade_scaled (const Eigen::Matrix< T, N, N, Options, MaxRows, MaxCols > &M, int order, int scaling)
 Applies scaling and squaring to the pade approximation of the matrix exponential.
 
template<class T , int N, int Options, int MaxRows, int MaxCols>
ExpmPadeParams controlpp::expm_pade_params (const Eigen::Matrix< T, N, N, Options, MaxRows, MaxCols > &M)
 Determines the order and scaling factor for the scaled pade approximation of the matrix exponential.
 
template<class T , int N, int Options, int MaxRows, int MaxCols>
Eigen::Matrix< T, N, N > controlpp::expm_pade_scaled (const Eigen::Matrix< T, N, N, Options, MaxRows, MaxCols > &M)
 Matrix exponential using a scaled Pade approximation with automatic order and scaling factor determination.
 
template<class T , int N, int Options, int MaxRows, int MaxCols>
Eigen::Matrix< T, N, N > controlpp::expm (const Eigen::Matrix< T, N, N, Options, MaxRows, MaxCols > &M)
 Calculates the matrix exponent \( \exp{\mathbf{M}} \).
 

Detailed Description

Includes functions for matrix exponentiation.