GEOSX
Public Member Functions | List of all members
geos::finiteElement::SparsityKernelFactory< KERNEL_TEMPLATE > Class Template Reference

Helper struct to define a specialization of #geos::finiteElement::SparsityKernelBase that may be used to generate the sparsity pattern. More...

#include <SparsityKernelBase.hpp>

Public Member Functions

 SparsityKernelFactory (arrayView1d< globalIndex const > const &inputDofNumber, globalIndex const rankOffset, SparsityPattern< globalIndex > &inputSparsityPattern)
 Constructor. More...
 
template<typename SUBREGION_TYPE , typename CONSTITUTIVE_TYPE , typename FE_TYPE >
auto createKernel (NodeManager const &nodeManager, EdgeManager const &edgeManager, FaceManager const &faceManager, localIndex const targetRegionIndex, SUBREGION_TYPE const &elementSubRegion, FE_TYPE const &finiteElementSpace, CONSTITUTIVE_TYPE &inputConstitutiveType)
 Return a new instance of SparsityKernelBase specialized for KERNEL_TEMPLATE. More...
 

Detailed Description

template<template< typename, typename, typename > class KERNEL_TEMPLATE>
class geos::finiteElement::SparsityKernelFactory< KERNEL_TEMPLATE >

Helper struct to define a specialization of #geos::finiteElement::SparsityKernelBase that may be used to generate the sparsity pattern.

Template Parameters
KERNEL_TEMPLATETemplated class that defines the physics kernel. Most likely derives from SparsityKernelBase.

Definition at line 187 of file SparsityKernelBase.hpp.

Constructor & Destructor Documentation

◆ SparsityKernelFactory()

template<template< typename, typename, typename > class KERNEL_TEMPLATE>
geos::finiteElement::SparsityKernelFactory< KERNEL_TEMPLATE >::SparsityKernelFactory ( arrayView1d< globalIndex const > const &  inputDofNumber,
globalIndex const  rankOffset,
SparsityPattern< globalIndex > &  inputSparsityPattern 
)
inline

Constructor.

Parameters
inputDofNumberAn array containing the input degree of freedom numbers.
rankOffsetThe global rank offset.
inputSparsityPatternThe local sparsity pattern.

Definition at line 197 of file SparsityKernelBase.hpp.

Member Function Documentation

◆ createKernel()

template<template< typename, typename, typename > class KERNEL_TEMPLATE>
template<typename SUBREGION_TYPE , typename CONSTITUTIVE_TYPE , typename FE_TYPE >
auto geos::finiteElement::SparsityKernelFactory< KERNEL_TEMPLATE >::createKernel ( NodeManager const &  nodeManager,
EdgeManager const &  edgeManager,
FaceManager const &  faceManager,
localIndex const  targetRegionIndex,
SUBREGION_TYPE const &  elementSubRegion,
FE_TYPE const &  finiteElementSpace,
CONSTITUTIVE_TYPE &  inputConstitutiveType 
)
inline

Return a new instance of SparsityKernelBase specialized for KERNEL_TEMPLATE.

Template Parameters
SUBREGION_TYPEThe type of of elementSubRegion.
CONSTITUTIVE_TYPEThe type of inputConstitutiveType.
FE_TYPEThe type of finiteElementSpace.
Parameters
nodeManagerThe node manager.
edgeManagerThe edge manager.
faceManagerThe face manager.
targetRegionIndexThe target region index.
elementSubRegionThe sub region on which to generate the sparsity.
finiteElementSpaceThe finite element space.
inputConstitutiveTypeThe constitutive relation.
Returns
A new instance of SparsityKernelBase specialized for KERNEL_TEMPLATE.

Definition at line 220 of file SparsityKernelBase.hpp.


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