CreateFullMatrix< CrsMatrixType > Struct Template Reference

Kynema API: kynema_fmb::solver::CreateFullMatrix< CrsMatrixType > Struct Template Reference
Kynema API
A flexible multibody structural dynamics code for wind turbines
Loading...
Searching...
No Matches
kynema_fmb::solver::CreateFullMatrix< CrsMatrixType > Struct Template Reference

The top level function object which creates the CRS matrix structure for the linear system to be solved. More...

#include <create_full_matrix.hpp>

Public Types

using DeviceType = typename CrsMatrixType::device_type
 
template<typename ValueType >
using View = Kokkos::View< ValueType, DeviceType >
 
template<typename ValueType >
using ConstView = typename View< ValueType >::const_type
 

Static Public Member Functions

static CrsMatrixType invoke (size_t num_system_dofs, size_t num_dofs, const ConstView< size_t * > &base_active_dofs, const ConstView< size_t * > &target_active_dofs, const ConstView< size_t *[6]> &base_node_freedom_table, const ConstView< size_t *[6]> &target_node_freedom_table, const ConstView< Kokkos::pair< size_t, size_t > * > &row_range, const ConstView< size_t * > &active_dofs, const ConstView< size_t * > &node_freedom_map_table, const ConstView< size_t * > &num_nodes_per_element, const ConstView< size_t ** > &node_state_indices)
 

Detailed Description

template<typename CrsMatrixType>
struct kynema_fmb::solver::CreateFullMatrix< CrsMatrixType >

The top level function object which creates the CRS matrix structure for the linear system to be solved.

This involves computing both he row pointers and the column indices for the entire matrix. These indices will be unique and sorted

Member Typedef Documentation

◆ ConstView

template<typename CrsMatrixType >
template<typename ValueType >
using kynema_fmb::solver::CreateFullMatrix< CrsMatrixType >::ConstView = typename View<ValueType>::const_type

◆ DeviceType

template<typename CrsMatrixType >
using kynema_fmb::solver::CreateFullMatrix< CrsMatrixType >::DeviceType = typename CrsMatrixType::device_type

◆ View

template<typename CrsMatrixType >
template<typename ValueType >
using kynema_fmb::solver::CreateFullMatrix< CrsMatrixType >::View = Kokkos::View<ValueType, DeviceType>

Member Function Documentation

◆ invoke()

template<typename CrsMatrixType >
static CrsMatrixType kynema_fmb::solver::CreateFullMatrix< CrsMatrixType >::invoke ( size_t  num_system_dofs,
size_t  num_dofs,
const ConstView< size_t * > &  base_active_dofs,
const ConstView< size_t * > &  target_active_dofs,
const ConstView< size_t *[6]> &  base_node_freedom_table,
const ConstView< size_t *[6]> &  target_node_freedom_table,
const ConstView< Kokkos::pair< size_t, size_t > * > &  row_range,
const ConstView< size_t * > &  active_dofs,
const ConstView< size_t * > &  node_freedom_map_table,
const ConstView< size_t * > &  num_nodes_per_element,
const ConstView< size_t ** > &  node_state_indices 
)
inlinestatic

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