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

Class which is used to store the list of the Dirichlet boundary conditions (BC). More...

#include <DirichletList.h>

Public Member Functions

 DirichletList (Problem &pbl, Teuchos::RCP< Map > map, Teuchos::RCP< ElementsList > elementsList)
 DirichletList constructor. More...
 
local_ordinal_type getDirichletNumber ()
 Return the number of Dirichlet BC. More...
 
local_ordinal_type getDirichletSize (local_ordinal_type i)
 Return the number of nodes for a given Dirichlet BC. More...
 
global_ordinal_type getDirichletNode (local_ordinal_type i, local_ordinal_type n1)
 Return the global ID of the node n1 of a given BC. More...
 
scalar getDirichletDof (local_ordinal_type i, local_ordinal_type j)
 Return whether the DOF j is fixed for a given BC. More...
 
scalar getDirichletValue (local_ordinal_type i, local_ordinal_type j)
 Return the value of the fixed DOF for a given BC. More...
 

Private Types

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

Private Attributes

Kokkos::View< global_ordinal_type **, Kokkos::LayoutRight > dirichlet_nodesList
 
Kokkos::View< scalar ***, Kokkos::LayoutRight > dirichlet_values_list
 
local_ordinal_type dirichlet_number
 
local_ordinal_type dirichlet_size
 
local_ordinal_type dirichlet_nodes
 
local_ordinal_type dirichlet_time
 
local_ordinal_type dirichlet_dofs
 
local_ordinal_type dirichlet_values
 

Detailed Description

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

Class which is used to store the list of the Dirichlet boundary conditions (BC).

Member Typedef Documentation

◆ global_ordinal_type

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

◆ local_ordinal_type

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

Constructor & Destructor Documentation

◆ DirichletList()

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

DirichletList constructor.

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

Arguments:

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

Member Function Documentation

◆ getDirichletDof()

template<typename scalar >
scalar katoptron::DirichletList< scalar >::getDirichletDof ( local_ordinal_type  i,
local_ordinal_type  j 
)
inline

Return whether the DOF j is fixed for a given BC.

Arguments:

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

◆ getDirichletNode()

template<typename scalar >
global_ordinal_type katoptron::DirichletList< scalar >::getDirichletNode ( local_ordinal_type  i,
local_ordinal_type  n1 
)
inline

Return the global ID of the node n1 of a given BC.

Arguments:

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

◆ getDirichletNumber()

template<typename scalar >
local_ordinal_type katoptron::DirichletList< scalar >::getDirichletNumber ( )
inline

Return the number of Dirichlet BC.

◆ getDirichletSize()

template<typename scalar >
local_ordinal_type katoptron::DirichletList< scalar >::getDirichletSize ( local_ordinal_type  i)
inline

Return the number of nodes for a given Dirichlet BC.

Argument:

  • i: the BC ID.

◆ getDirichletValue()

template<typename scalar >
scalar katoptron::DirichletList< scalar >::getDirichletValue ( local_ordinal_type  i,
local_ordinal_type  j 
)
inline

Return the value of the fixed DOF for a given BC.

Arguments:

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

Member Data Documentation

◆ dirichlet_dofs

template<typename scalar >
local_ordinal_type katoptron::DirichletList< scalar >::dirichlet_dofs
private

◆ dirichlet_nodes

template<typename scalar >
local_ordinal_type katoptron::DirichletList< scalar >::dirichlet_nodes
private

◆ dirichlet_nodesList

template<typename scalar >
Kokkos::View<global_ordinal_type **, Kokkos::LayoutRight> katoptron::DirichletList< scalar >::dirichlet_nodesList
private

◆ dirichlet_number

template<typename scalar >
local_ordinal_type katoptron::DirichletList< scalar >::dirichlet_number
private

◆ dirichlet_size

template<typename scalar >
local_ordinal_type katoptron::DirichletList< scalar >::dirichlet_size
private

◆ dirichlet_time

template<typename scalar >
local_ordinal_type katoptron::DirichletList< scalar >::dirichlet_time
private

◆ dirichlet_values

template<typename scalar >
local_ordinal_type katoptron::DirichletList< scalar >::dirichlet_values
private

◆ dirichlet_values_list

template<typename scalar >
Kokkos::View<scalar ***, Kokkos::LayoutRight> katoptron::DirichletList< scalar >::dirichlet_values_list
private

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