/home/runner/work/kynema/kynema/kynema/src/system/beams/integrate_residual_vector.hpp Source File

Kynema API: /home/runner/work/kynema/kynema/kynema/src/system/beams/integrate_residual_vector.hpp Source File
Kynema API
A flexible multibody structural dynamics code for wind turbines
Loading...
Searching...
No Matches
integrate_residual_vector.hpp
Go to the documentation of this file.
1#pragma once
2
3#include <Kokkos_Core.hpp>
4
5namespace kynema::beams {
6
7template <typename DeviceType>
9 template <typename ValueType>
10 using View = Kokkos::View<ValueType, DeviceType>;
11 template <typename ValueType>
13 template <typename ValueType>
14 using LeftView = Kokkos::View<ValueType, Kokkos::LayoutLeft, DeviceType>;
15 template <typename ValueType>
17
18 size_t element;
19 size_t num_qps;
33
35 void operator()(size_t node) const {
36 auto local_residual = Kokkos::Array<double, 6>{};
37 for (auto qp = 0U; qp < num_qps; ++qp) {
38 const auto weight = qp_weight_(qp);
39 const auto coeff_c = weight * shape_deriv_(node, qp);
40 const auto coeff_dig = weight * qp_jacobian_(qp) * shape_interp_(node, qp);
41 for (auto component = 0U; component < 6U; ++component) {
44 coeff_dig *
47 }
48 }
49 for (auto component = 0U; component < 6U; ++component) {
52 }
53 }
54};
55
56} // namespace kynema::beams
Definition beam_quadrature.hpp:14
Definition integrate_residual_vector.hpp:8
ConstView< double *[6]> qp_Fi_
Definition integrate_residual_vector.hpp:29
typename View< ValueType >::const_type ConstView
Definition integrate_residual_vector.hpp:12
ConstView< double * > qp_weight_
Definition integrate_residual_vector.hpp:20
size_t num_qps
Definition integrate_residual_vector.hpp:19
ConstView< double *[6]> qp_Fe_
Definition integrate_residual_vector.hpp:30
View< double **[6]> residual_vector_terms_
Definition integrate_residual_vector.hpp:32
ConstView< double *[6]> qp_FD2_
Definition integrate_residual_vector.hpp:28
Kokkos::View< ValueType, Kokkos::LayoutLeft, DeviceType > LeftView
Definition integrate_residual_vector.hpp:14
ConstView< double *[6]> qp_FE1_
Definition integrate_residual_vector.hpp:25
Kokkos::View< ValueType, DeviceType > View
Definition integrate_residual_vector.hpp:10
ConstView< double * > qp_jacobian_
Definition integrate_residual_vector.hpp:21
KOKKOS_FUNCTION void operator()(size_t node) const
Definition integrate_residual_vector.hpp:35
ConstLeftView< double ** > shape_deriv_
Definition integrate_residual_vector.hpp:23
size_t element
Definition integrate_residual_vector.hpp:18
ConstView< double *[6]> qp_Fg_
Definition integrate_residual_vector.hpp:31
ConstView< double *[6]> node_FX_
Definition integrate_residual_vector.hpp:24
ConstView< double *[6]> qp_FE2_
Definition integrate_residual_vector.hpp:26
ConstLeftView< double ** > shape_interp_
Definition integrate_residual_vector.hpp:22
ConstView< double *[6]> qp_FD1_
Definition integrate_residual_vector.hpp:27
typename LeftView< ValueType >::const_type ConstLeftView
Definition integrate_residual_vector.hpp:16