OpenFAST
Wind turbine multiphysics simulator
|
This function returns the matrix exponential, \(\Lambda = \exp(\lambda)\), of an input skew-symmetric matrix, \(\lambda\). More...
Public Member Functions | |
real(reki) function, dimension(3, 3) | dcm_expr (lambda) |
This function returns the matrix exponential, \(\Lambda = \exp(\lambda)\), of an input skew-symmetric matrix, \(\lambda\). More... | |
real(dbki) function, dimension(3, 3) | dcm_expd (lambda) |
This function returns the matrix exponential, \(\Lambda = \exp(\lambda)\), of an input skew-symmetric matrix, \(\lambda\). More... | |
This function returns the matrix exponential, \(\Lambda = \exp(\lambda)\), of an input skew-symmetric matrix, \(\lambda\).
\(\lambda\) is defined as:
\begin{equation} \lambda = \begin{bmatrix} 0 & \lambda_3 & -\lambda_2 \\ -\lambda_3 & 0 & \lambda_1 \\ \lambda_2 & -\lambda_1 & 0 \end{bmatrix} \end{equation}
The angle of rotation for \(\lambda\) is
\begin{equation} \theta = \sqrt{{\lambda_1}^2+{\lambda_2}^2+{\lambda_3}^2} \end{equation}
The matrix exponential is calculated as
\begin{equation} \Lambda = \exp(\lambda) = \left\{ \begin{matrix} I & \theta = 0 \\ I + \frac{\sin\theta}{\theta}\lambda + \frac{1-\cos\theta}{\theta^2}\lambda^2 & \theta > 0 \end{matrix} \right. \end{equation}
This routine is the inverse of DCM_logMap (nwtc_num::dcm_logmap).
Use DCM_exp (nwtc_num::dcm_exp) instead of directly calling a specific routine in the generic interface.
[in] | lambda | vector containing \(\lambda_1\), \(\lambda_2\), and \(\lambda_3\), the unique components of skew-symmetric matrix \(\lambda\) |
real(dbki) function, dimension(3,3) nwtc_num::dcm_exp::dcm_expd | ( | real(dbki), dimension(3), intent(in) | lambda | ) |
This function returns the matrix exponential, \(\Lambda = \exp(\lambda)\), of an input skew-symmetric matrix, \(\lambda\).
\(\lambda\) is defined as:
\begin{equation} \lambda = \begin{bmatrix} 0 & \lambda_3 & -\lambda_2 \\ -\lambda_3 & 0 & \lambda_1 \\ \lambda_2 & -\lambda_1 & 0 \end{bmatrix} \end{equation}
The angle of rotation for \(\lambda\) is
\begin{equation} \theta = \sqrt{{\lambda_1}^2+{\lambda_2}^2+{\lambda_3}^2} \end{equation}
The matrix exponential is calculated as
\begin{equation} \Lambda = \exp(\lambda) = \left\{ \begin{matrix} I & \theta = 0 \\ I + \frac{\sin\theta}{\theta}\lambda + \frac{1-\cos\theta}{\theta^2}\lambda^2 & \theta > 0 \end{matrix} \right. \end{equation}
This routine is the inverse of DCM_logMap (nwtc_num::dcm_logmap).
Use DCM_exp (nwtc_num::dcm_exp) instead of directly calling a specific routine in the generic interface.
[in] | lambda | vector containing \(\lambda_1\), \(\lambda_2\), and \(\lambda_3\), the unique components of skew-symmetric matrix \(\lambda\) |
real(reki) function, dimension(3,3) nwtc_num::dcm_exp::dcm_expr | ( | real(reki), dimension(3), intent(in) | lambda | ) |
This function returns the matrix exponential, \(\Lambda = \exp(\lambda)\), of an input skew-symmetric matrix, \(\lambda\).
\(\lambda\) is defined as:
\begin{equation} \lambda = \begin{bmatrix} 0 & \lambda_3 & -\lambda_2 \\ -\lambda_3 & 0 & \lambda_1 \\ \lambda_2 & -\lambda_1 & 0 \end{bmatrix} \end{equation}
The angle of rotation for \(\lambda\) is
\begin{equation} \theta = \sqrt{{\lambda_1}^2+{\lambda_2}^2+{\lambda_3}^2} \end{equation}
The matrix exponential is calculated as
\begin{equation} \Lambda = \exp(\lambda) = \left\{ \begin{matrix} I & \theta = 0 \\ I + \frac{\sin\theta}{\theta}\lambda + \frac{1-\cos\theta}{\theta^2}\lambda^2 & \theta > 0 \end{matrix} \right. \end{equation}
This routine is the inverse of DCM_logMap (nwtc_num::dcm_logmap).
Use DCM_exp (nwtc_num::dcm_exp) instead of directly calling a specific routine in the generic interface.
[in] | lambda | vector containing \(\lambda_1\), \(\lambda_2\), and \(\lambda_3\), the unique components of skew-symmetric matrix \(\lambda\) |
[in] | lambda | vector containing unique components of skew-symmetric matrix: \(\lambda_1\), \(\lambda_2\), and \(\lambda_3\) |