OpenFAST
Wind turbine multiphysics simulator
Public Member Functions | List of all members
nwtc_num::dcm_exp Interface Reference

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...
 

Detailed Description

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.

Parameters
[in]lambdavector containing \(\lambda_1\), \(\lambda_2\), and \(\lambda_3\), the unique components of skew-symmetric matrix \(\lambda\)
Returns
the computed matrix exponential, \(\Lambda\)

Member Function/Subroutine Documentation

◆ dcm_expd()

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.

Parameters
[in]lambdavector containing \(\lambda_1\), \(\lambda_2\), and \(\lambda_3\), the unique components of skew-symmetric matrix \(\lambda\)
Returns
the computed matrix exponential, \(\Lambda\)

◆ dcm_expr()

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.

Parameters
[in]lambdavector containing \(\lambda_1\), \(\lambda_2\), and \(\lambda_3\), the unique components of skew-symmetric matrix \(\lambda\)
Returns
the computed matrix exponential, \(\Lambda\)
Parameters
[in]lambdavector containing unique components of skew-symmetric matrix: \(\lambda_1\), \(\lambda_2\), and \(\lambda_3\)
Returns
the computed matrix exponential, \(\Lambda\)

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