waves
Basic FE playground
katoptron::WeightsList< scalar > Class Template Reference

Class which is used to store the list of the weights used for the residual computation. More...

#include <WeightsList.h>

Public Member Functions

 WeightsList (Problem &pbl, Teuchos::RCP< Map > map, Teuchos::RCP< ElementsList > elementsList)
 WeightsList constructor. More...
 
local_ordinal_type getWeightRegionsNumber ()
 Return the number of weighted regions. More...
 
local_ordinal_type getWeightRegionSize (local_ordinal_type i)
 Return the number of nodes for a given weighted region. More...
 
local_ordinal_type getNode (local_ordinal_type i, local_ordinal_type n1)
 Return the global ID of the node n1 of a given weighted region. More...
 
bool getWeightDof (local_ordinal_type i, local_ordinal_type j)
 Return whether the DOF j is weighted for a given weighted region. More...
 
scalar getWeightValue (local_ordinal_type i, local_ordinal_type j)
 Return the value of weight for the DOF for a given weighted region. More...
 

Private Types

typedef Map::local_ordinal_type local_ordinal_type
 
typedef Map::global_ordinal_type global_ordinal_type
 

Private Attributes

Kokkos::View< int **, Kokkos::LayoutRight > weights_nodesList
 
Kokkos::View< scalar **, Kokkos::LayoutRight > weights_values_list
 
local_ordinal_type weights_number
 
local_ordinal_type weights_size
 
local_ordinal_type weights_nodes
 
local_ordinal_type weights_dofs
 
local_ordinal_type weights_values
 

Detailed Description

template<typename scalar>
class katoptron::WeightsList< scalar >

Class which is used to store the list of the weights used for the residual computation.

Member Typedef Documentation

◆ global_ordinal_type

template<typename scalar >
typedef Map::global_ordinal_type katoptron::WeightsList< scalar >::global_ordinal_type
private

◆ local_ordinal_type

template<typename scalar >
typedef Map::local_ordinal_type katoptron::WeightsList< scalar >::local_ordinal_type
private

Constructor & Destructor Documentation

◆ WeightsList()

template<typename scalar >
katoptron::WeightsList< scalar >::WeightsList ( Problem pbl,
Teuchos::RCP< Map map,
Teuchos::RCP< ElementsList elementsList 
)

WeightsList constructor.

This constructor allocates 2 Kokkos::View which store all the required information related to each weighted region, including:

  • all the weighted nodes,
  • all the values of the weights.

Arguments:

  • pbl: a Problem object,
  • map: an RCP to a Map object,
  • elementsList: an RCP to an ElementList object.

Member Function Documentation

◆ getNode()

template<typename scalar >
local_ordinal_type katoptron::WeightsList< scalar >::getNode ( local_ordinal_type  i,
local_ordinal_type  n1 
)
inline

Return the global ID of the node n1 of a given weighted region.

Arguments:

  • i: the weighted region ID,
  • n1: the ID of the node on the current BC.

◆ getWeightDof()

template<typename scalar >
bool katoptron::WeightsList< scalar >::getWeightDof ( local_ordinal_type  i,
local_ordinal_type  j 
)
inline

Return whether the DOF j is weighted for a given weighted region.

Arguments:

  • i: the weighted region ID,
  • j: the index of the DOF (0-3 if thermomechanical problems).

◆ getWeightRegionSize()

template<typename scalar >
local_ordinal_type katoptron::WeightsList< scalar >::getWeightRegionSize ( local_ordinal_type  i)
inline

Return the number of nodes for a given weighted region.

Argument:

  • i: the weighted region ID.

◆ getWeightRegionsNumber()

template<typename scalar >
local_ordinal_type katoptron::WeightsList< scalar >::getWeightRegionsNumber ( )
inline

Return the number of weighted regions.

◆ getWeightValue()

template<typename scalar >
scalar katoptron::WeightsList< scalar >::getWeightValue ( local_ordinal_type  i,
local_ordinal_type  j 
)
inline

Return the value of weight for the DOF for a given weighted region.

Arguments:

  • i: the weighted region ID,
  • j: the index of the DOF (0-3 if thermomechanical problems).

Member Data Documentation

◆ weights_dofs

template<typename scalar >
local_ordinal_type katoptron::WeightsList< scalar >::weights_dofs
private

◆ weights_nodes

template<typename scalar >
local_ordinal_type katoptron::WeightsList< scalar >::weights_nodes
private

◆ weights_nodesList

template<typename scalar >
Kokkos::View<int **, Kokkos::LayoutRight> katoptron::WeightsList< scalar >::weights_nodesList
private

◆ weights_number

template<typename scalar >
local_ordinal_type katoptron::WeightsList< scalar >::weights_number
private

◆ weights_size

template<typename scalar >
local_ordinal_type katoptron::WeightsList< scalar >::weights_size
private

◆ weights_values

template<typename scalar >
local_ordinal_type katoptron::WeightsList< scalar >::weights_values
private

◆ weights_values_list

template<typename scalar >
Kokkos::View<scalar **, Kokkos::LayoutRight> katoptron::WeightsList< scalar >::weights_values_list
private

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