OpenFAST
Wind turbine multiphysics simulator
|
This routine sets the rotation parameters (logMap tensors from dcm_logmap) so that they can be appropriately interpolated, based on continunity of the neighborhood. More...
Public Member Functions | |
subroutine | dcm_setlogmapforinterpr (tensor) |
This routine sets the rotation parameters (logMap tensors from dcm_logmap) so that they can be appropriately interpolated, based on continunity of the neighborhood. More... | |
subroutine | dcm_setlogmapforinterpd (tensor) |
This routine sets the rotation parameters (logMap tensors from dcm_logmap) so that they can be appropriately interpolated, based on continunity of the neighborhood. More... | |
This routine sets the rotation parameters (logMap tensors from dcm_logmap) so that they can be appropriately interpolated, based on continunity of the neighborhood.
The tensor input matrix has columns of rotational parameters; one column for each set of values to be interpolated (i.e., for each column, i, tensor(:,i) is the returned logMap value from the routine dcm_logmap).
This is based on the \(2\pi\) periodicity of rotations:
if \(\lambda\) is one solution to \(\log(\Lambda)\), then so is \(\lambda_k = \lambda \left( 1 + \frac{2k\pi}{\left\| \lambda \right\|}\right)\) for any integer k.
Use DCM_SetLogMapForInterp (nwtc_num::dcm_setlogmapforinterp) instead of directly calling a specific routine in the generic interface.
[in,out] | tensor | a 3xn matrix, whose columns represent individual skew-symmmetric matrices. On exit, each column will be within \(2\pi\) of the previous column, allowing for interpolation of the quantities. |
subroutine nwtc_num::dcm_setlogmapforinterp::dcm_setlogmapforinterpd | ( | real(dbki), dimension(:,:), intent(inout) | tensor | ) |
This routine sets the rotation parameters (logMap tensors from dcm_logmap) so that they can be appropriately interpolated, based on continunity of the neighborhood.
The tensor input matrix has columns of rotational parameters; one column for each set of values to be interpolated (i.e., for each column, i, tensor(:,i) is the returned logMap value from the routine dcm_logmap).
This is based on the \(2\pi\) periodicity of rotations:
if \(\lambda\) is one solution to \(\log(\Lambda)\), then so is \(\lambda_k = \lambda \left( 1 + \frac{2k\pi}{\left\| \lambda \right\|}\right)\) for any integer k.
Use DCM_SetLogMapForInterp (nwtc_num::dcm_setlogmapforinterp) instead of directly calling a specific routine in the generic interface.
[in,out] | tensor | a 3xn matrix, whose columns represent individual skew-symmmetric matrices. On exit, each column will be within \(2\pi\) of the previous column, allowing for interpolation of the quantities. |
subroutine nwtc_num::dcm_setlogmapforinterp::dcm_setlogmapforinterpr | ( | real(reki), dimension(:,:), intent(inout) | tensor | ) |
This routine sets the rotation parameters (logMap tensors from dcm_logmap) so that they can be appropriately interpolated, based on continunity of the neighborhood.
The tensor input matrix has columns of rotational parameters; one column for each set of values to be interpolated (i.e., for each column, i, tensor(:,i) is the returned logMap value from the routine dcm_logmap).
This is based on the \(2\pi\) periodicity of rotations:
if \(\lambda\) is one solution to \(\log(\Lambda)\), then so is \(\lambda_k = \lambda \left( 1 + \frac{2k\pi}{\left\| \lambda \right\|}\right)\) for any integer k.
Use DCM_SetLogMapForInterp (nwtc_num::dcm_setlogmapforinterp) instead of directly calling a specific routine in the generic interface.
[in,out] | tensor | a 3xn matrix, whose columns represent individual skew-symmmetric matrices. On exit, each column will be within \(2\pi\) of the previous column, allowing for interpolation of the quantities. |