Loading...
Searching...
No Matches
terra::fe::wedge::operators::shell::EpsDivDivStokes< ScalarT, VecDim > Class Template Reference

#include <epsilon_divdiv_stokes.hpp>

Public Types

using SrcVectorType = linalg::VectorQ1IsoQ2Q1< ScalarT, VecDim >
 
using DstVectorType = linalg::VectorQ1IsoQ2Q1< ScalarT, VecDim >
 
using ScalarType = ScalarT
 
using Block11Type = EpsilonDivDivKerngen< ScalarType, VecDim >
 
using Block12Type = Gradient< ScalarType >
 
using Block21Type = Divergence< ScalarType >
 
using Block22Type = Zero< ScalarType >
 

Public Member Functions

 EpsDivDivStokes (const grid::shell::DistributedDomain &domain_fine, const grid::shell::DistributedDomain &domain_coarse, const grid::Grid3DDataVec< ScalarType, 3 > &grid, const grid::Grid2DDataScalar< ScalarType > &radii, const grid::Grid4DDataScalar< grid::shell::ShellBoundaryFlag > &mask, const grid::Grid4DDataScalar< ScalarType > &k, BoundaryConditions bcs, bool diagonal)
 
void apply_impl (const SrcVectorType &src, DstVectorType &dst)
 
const Block11Typeblock_11 () const
 
const Block12Typeblock_12 () const
 
const Block21Typeblock_21 () const
 
const Block22Typeblock_22 () const
 
Block11Typeblock_11 ()
 
Block12Typeblock_12 ()
 
Block21Typeblock_21 ()
 
Block22Typeblock_22 ()
 

Member Typedef Documentation

◆ Block11Type

template<typename ScalarT , int VecDim = 3>
using terra::fe::wedge::operators::shell::EpsDivDivStokes< ScalarT, VecDim >::Block11Type = EpsilonDivDivKerngen< ScalarType, VecDim >

◆ Block12Type

template<typename ScalarT , int VecDim = 3>
using terra::fe::wedge::operators::shell::EpsDivDivStokes< ScalarT, VecDim >::Block12Type = Gradient< ScalarType >

◆ Block21Type

template<typename ScalarT , int VecDim = 3>
using terra::fe::wedge::operators::shell::EpsDivDivStokes< ScalarT, VecDim >::Block21Type = Divergence< ScalarType >

◆ Block22Type

template<typename ScalarT , int VecDim = 3>
using terra::fe::wedge::operators::shell::EpsDivDivStokes< ScalarT, VecDim >::Block22Type = Zero< ScalarType >

◆ DstVectorType

template<typename ScalarT , int VecDim = 3>
using terra::fe::wedge::operators::shell::EpsDivDivStokes< ScalarT, VecDim >::DstVectorType = linalg::VectorQ1IsoQ2Q1< ScalarT, VecDim >

◆ ScalarType

template<typename ScalarT , int VecDim = 3>
using terra::fe::wedge::operators::shell::EpsDivDivStokes< ScalarT, VecDim >::ScalarType = ScalarT

◆ SrcVectorType

template<typename ScalarT , int VecDim = 3>
using terra::fe::wedge::operators::shell::EpsDivDivStokes< ScalarT, VecDim >::SrcVectorType = linalg::VectorQ1IsoQ2Q1< ScalarT, VecDim >

Constructor & Destructor Documentation

◆ EpsDivDivStokes()

template<typename ScalarT , int VecDim = 3>
terra::fe::wedge::operators::shell::EpsDivDivStokes< ScalarT, VecDim >::EpsDivDivStokes ( const grid::shell::DistributedDomain domain_fine,
const grid::shell::DistributedDomain domain_coarse,
const grid::Grid3DDataVec< ScalarType, 3 > &  grid,
const grid::Grid2DDataScalar< ScalarType > &  radii,
const grid::Grid4DDataScalar< grid::shell::ShellBoundaryFlag > &  mask,
const grid::Grid4DDataScalar< ScalarType > &  k,
BoundaryConditions  bcs,
bool  diagonal 
)
inline

Member Function Documentation

◆ apply_impl()

template<typename ScalarT , int VecDim = 3>
void terra::fe::wedge::operators::shell::EpsDivDivStokes< ScalarT, VecDim >::apply_impl ( const SrcVectorType src,
DstVectorType dst 
)
inline

◆ block_11() [1/2]

template<typename ScalarT , int VecDim = 3>
Block11Type & terra::fe::wedge::operators::shell::EpsDivDivStokes< ScalarT, VecDim >::block_11 ( )
inline

◆ block_11() [2/2]

template<typename ScalarT , int VecDim = 3>
const Block11Type & terra::fe::wedge::operators::shell::EpsDivDivStokes< ScalarT, VecDim >::block_11 ( ) const
inline

◆ block_12() [1/2]

template<typename ScalarT , int VecDim = 3>
Block12Type & terra::fe::wedge::operators::shell::EpsDivDivStokes< ScalarT, VecDim >::block_12 ( )
inline

◆ block_12() [2/2]

template<typename ScalarT , int VecDim = 3>
const Block12Type & terra::fe::wedge::operators::shell::EpsDivDivStokes< ScalarT, VecDim >::block_12 ( ) const
inline

◆ block_21() [1/2]

template<typename ScalarT , int VecDim = 3>
Block21Type & terra::fe::wedge::operators::shell::EpsDivDivStokes< ScalarT, VecDim >::block_21 ( )
inline

◆ block_21() [2/2]

template<typename ScalarT , int VecDim = 3>
const Block21Type & terra::fe::wedge::operators::shell::EpsDivDivStokes< ScalarT, VecDim >::block_21 ( ) const
inline

◆ block_22() [1/2]

template<typename ScalarT , int VecDim = 3>
Block22Type & terra::fe::wedge::operators::shell::EpsDivDivStokes< ScalarT, VecDim >::block_22 ( )
inline

◆ block_22() [2/2]

template<typename ScalarT , int VecDim = 3>
const Block22Type & terra::fe::wedge::operators::shell::EpsDivDivStokes< ScalarT, VecDim >::block_22 ( ) const
inline

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