/home/runner/work/kynema/kynema/kynema/src/elements/beams/interpolate_QP_vector.hpp Source File

Kynema API: /home/runner/work/kynema/kynema/kynema/src/elements/beams/interpolate_QP_vector.hpp Source File
Kynema API
A flexible multibody structural dynamics code for wind turbines
Loading...
Searching...
No Matches
interpolate_QP_vector.hpp
Go to the documentation of this file.
1#pragma once
2
3#include <Kokkos_Core.hpp>
4
5namespace kynema::beams {
6
11template <typename DeviceType>
13 template <typename ValueType>
14 using View = Kokkos::View<ValueType, DeviceType>;
15 template <typename ValueType>
17 template <typename ValueType>
18 using StrideView = Kokkos::View<ValueType, Kokkos::LayoutStride, DeviceType>;
19 template <typename ValueType>
21
22 size_t element;
23 size_t num_nodes;
27
29 void operator()(size_t qp) const {
30 // const auto j = first_qp + qp;
31 auto local_total = Kokkos::Array<double, 3>{};
32 for (auto node = 0U; node < num_nodes; ++node) {
33 const auto phi = shape_interp(element, node, qp);
34 for (auto component = 0U; component < 3U; ++component) {
36 }
37 }
38 for (auto component = 0U; component < 3U; ++component) {
40 }
41 }
42};
43
44} // namespace kynema::beams
Definition beam_quadrature.hpp:16
A Kernel which interpolates a vector quantity from nodes on a given element to a quadrature point giv...
Definition interpolate_QP_vector.hpp:12
typename View< ValueType >::const_type ConstView
Definition interpolate_QP_vector.hpp:16
size_t element
Definition interpolate_QP_vector.hpp:22
KOKKOS_FUNCTION void operator()(size_t qp) const
Definition interpolate_QP_vector.hpp:29
size_t num_nodes
Definition interpolate_QP_vector.hpp:23
ConstView< double *** > shape_interp
Definition interpolate_QP_vector.hpp:24
View< double **[3]> qp_vector
Definition interpolate_QP_vector.hpp:26
typename StrideView< ValueType >::const_type ConstStrideView
Definition interpolate_QP_vector.hpp:20
Kokkos::View< ValueType, Kokkos::LayoutStride, DeviceType > StrideView
Definition interpolate_QP_vector.hpp:18
ConstStrideView< double **[3]> node_vector
Definition interpolate_QP_vector.hpp:25
Kokkos::View< ValueType, DeviceType > View
Definition interpolate_QP_vector.hpp:14