CalculateConstraintResidualGradient< DeviceType > Struct Template Reference
|
Kynema API
A flexible multibody structural dynamics code for wind turbines
|
Loading...
Searching...
No Matches
kynema_fmb::constraints::CalculateConstraintResidualGradient< DeviceType > Struct Template Reference
Top level kernel which calculates the residual and gradient contributions of a constraint. More...
#include <calculate_constraint_residual_gradient.hpp>
Public Types | |
| using | TransposeMatrix = KokkosBatched::SerialCopy< KokkosBatched::Trans::Transpose > |
| using | Gemm = KokkosBatched::SerialGemm< KokkosBatched::Trans::NoTranspose, KokkosBatched::Trans::NoTranspose, KokkosBatched::Algo::Gemm::Default > |
| using | CopyVector = KokkosBatched::SerialCopy< KokkosBatched::Trans::NoTranspose, 1 > |
| using | CopyMatrix = KokkosBatched::SerialCopy< KokkosBatched::Trans::NoTranspose, 2 > |
| template<typename ValueType > | |
| using | View = Kokkos::View< ValueType, DeviceType > |
| template<typename ValueType > | |
| using | ConstView = typename View< ValueType >::const_type |
Public Member Functions | |
| KOKKOS_FUNCTION void | FixedBC (size_t constraint) const |
| KOKKOS_FUNCTION void | FixedBC3DOF (size_t constraint) const |
| KOKKOS_FUNCTION void | PrescribedBC (size_t constraint) const |
| KOKKOS_FUNCTION void | PrescribedBC3DOF (size_t constraint) const |
| KOKKOS_FUNCTION void | RigidJoint (size_t constraint) const |
| KOKKOS_FUNCTION void | RigidJoint3DOF (size_t constraint) const |
| KOKKOS_FUNCTION void | RevoluteJoint (size_t constraint) const |
| KOKKOS_FUNCTION void | RotationControl (size_t constraint) const |
| KOKKOS_FUNCTION void | operator() (size_t constraint) const |
Public Attributes | |
| ConstView< ConstraintType * > | type_ |
| ConstView< size_t * > | base_node_index_ |
| ConstView< size_t * > | target_node_index_ |
| ConstView< double *[3]> | X0_ |
| ConstView< double *[3][3]> | axes_ |
| ConstView< double *[7]> | constraint_inputs_ |
| ConstView< double *[6]> | lambda_ |
| ConstView< double *[6][6]> | tangent_ |
| ConstView< double *[7]> | node_u_ |
| View< double *[6]> | res_ |
| View< double *[6]> | b_lambda_res_ |
| View< double *[6]> | t_lambda_res_ |
| View< double *[6]> | system_res_ |
| View< double *[6][6]> | b_grad_ |
| View< double *[6][6]> | t_grad_ |
| View< double *[6][6]> | b_grad_trans_ |
| View< double *[6][6]> | t_grad_trans_ |
Detailed Description
template<typename DeviceType>
struct kynema_fmb::constraints::CalculateConstraintResidualGradient< DeviceType >
struct kynema_fmb::constraints::CalculateConstraintResidualGradient< DeviceType >
Top level kernel which calculates the residual and gradient contributions of a constraint.
This Kernel performs the action of identifying the constraint's type, loading the required input variables into local variables, and then calling specialized kernels that perform the actual calculations.
Member Typedef Documentation
◆ ConstView
template<typename DeviceType >
template<typename ValueType >
| using kynema_fmb::constraints::CalculateConstraintResidualGradient< DeviceType >::ConstView = typename View<ValueType>::const_type |
◆ CopyMatrix
template<typename DeviceType >
| using kynema_fmb::constraints::CalculateConstraintResidualGradient< DeviceType >::CopyMatrix = KokkosBatched::SerialCopy<KokkosBatched::Trans::NoTranspose, 2> |
◆ CopyVector
template<typename DeviceType >
| using kynema_fmb::constraints::CalculateConstraintResidualGradient< DeviceType >::CopyVector = KokkosBatched::SerialCopy<KokkosBatched::Trans::NoTranspose, 1> |
◆ Gemm
template<typename DeviceType >
| using kynema_fmb::constraints::CalculateConstraintResidualGradient< DeviceType >::Gemm = KokkosBatched::SerialGemm< KokkosBatched::Trans::NoTranspose, KokkosBatched::Trans::NoTranspose, KokkosBatched::Algo::Gemm::Default> |
◆ TransposeMatrix
template<typename DeviceType >
| using kynema_fmb::constraints::CalculateConstraintResidualGradient< DeviceType >::TransposeMatrix = KokkosBatched::SerialCopy<KokkosBatched::Trans::Transpose> |
◆ View
template<typename DeviceType >
template<typename ValueType >
| using kynema_fmb::constraints::CalculateConstraintResidualGradient< DeviceType >::View = Kokkos::View<ValueType, DeviceType> |
Member Function Documentation
◆ FixedBC()
template<typename DeviceType >
|
inline |
◆ FixedBC3DOF()
template<typename DeviceType >
|
inline |
◆ operator()()
template<typename DeviceType >
|
inline |
◆ PrescribedBC()
template<typename DeviceType >
|
inline |
◆ PrescribedBC3DOF()
template<typename DeviceType >
|
inline |
◆ RevoluteJoint()
template<typename DeviceType >
|
inline |
◆ RigidJoint()
template<typename DeviceType >
|
inline |
◆ RigidJoint3DOF()
template<typename DeviceType >
|
inline |
◆ RotationControl()
template<typename DeviceType >
|
inline |
Member Data Documentation
◆ axes_
template<typename DeviceType >
| ConstView<double* [3][3]> kynema_fmb::constraints::CalculateConstraintResidualGradient< DeviceType >::axes_ |
◆ b_grad_
template<typename DeviceType >
| View<double* [6][6]> kynema_fmb::constraints::CalculateConstraintResidualGradient< DeviceType >::b_grad_ |
◆ b_grad_trans_
template<typename DeviceType >
| View<double* [6][6]> kynema_fmb::constraints::CalculateConstraintResidualGradient< DeviceType >::b_grad_trans_ |
◆ b_lambda_res_
template<typename DeviceType >
| View<double* [6]> kynema_fmb::constraints::CalculateConstraintResidualGradient< DeviceType >::b_lambda_res_ |
◆ base_node_index_
template<typename DeviceType >
| ConstView<size_t*> kynema_fmb::constraints::CalculateConstraintResidualGradient< DeviceType >::base_node_index_ |
◆ constraint_inputs_
template<typename DeviceType >
| ConstView<double* [7]> kynema_fmb::constraints::CalculateConstraintResidualGradient< DeviceType >::constraint_inputs_ |
◆ lambda_
template<typename DeviceType >
| ConstView<double* [6]> kynema_fmb::constraints::CalculateConstraintResidualGradient< DeviceType >::lambda_ |
◆ node_u_
template<typename DeviceType >
| ConstView<double* [7]> kynema_fmb::constraints::CalculateConstraintResidualGradient< DeviceType >::node_u_ |
◆ res_
template<typename DeviceType >
| View<double* [6]> kynema_fmb::constraints::CalculateConstraintResidualGradient< DeviceType >::res_ |
◆ system_res_
template<typename DeviceType >
| View<double* [6]> kynema_fmb::constraints::CalculateConstraintResidualGradient< DeviceType >::system_res_ |
◆ t_grad_
template<typename DeviceType >
| View<double* [6][6]> kynema_fmb::constraints::CalculateConstraintResidualGradient< DeviceType >::t_grad_ |
◆ t_grad_trans_
template<typename DeviceType >
| View<double* [6][6]> kynema_fmb::constraints::CalculateConstraintResidualGradient< DeviceType >::t_grad_trans_ |
◆ t_lambda_res_
template<typename DeviceType >
| View<double* [6]> kynema_fmb::constraints::CalculateConstraintResidualGradient< DeviceType >::t_lambda_res_ |
◆ tangent_
template<typename DeviceType >
| ConstView<double* [6][6]> kynema_fmb::constraints::CalculateConstraintResidualGradient< DeviceType >::tangent_ |
◆ target_node_index_
template<typename DeviceType >
| ConstView<size_t*> kynema_fmb::constraints::CalculateConstraintResidualGradient< DeviceType >::target_node_index_ |
◆ type_
template<typename DeviceType >
| ConstView<ConstraintType*> kynema_fmb::constraints::CalculateConstraintResidualGradient< DeviceType >::type_ |
◆ X0_
template<typename DeviceType >
| ConstView<double* [3]> kynema_fmb::constraints::CalculateConstraintResidualGradient< DeviceType >::X0_ |
The documentation for this struct was generated from the following file:
- /home/runner/work/kynema-fmb/kynema-fmb/kynema-fmb/src/constraints/calculate_constraint_residual_gradient.hpp
Generated by