Nalu
Nalu: a generalized unstructured massively parallel low Mach flow code designed to support a variety of energy applications of interest (most notably Wind ECP) built on the Sierra Toolkit and Trilinos solver Tpetra/Epetra stack. The open source BSD, clause 3 license model has been chosen for the code base. See LICENSE for more information. http://NaluCFD.org
Public Member Functions | Private Member Functions | Private Attributes | List of all members
sierra::nalu::ScalarDiffFemKernel< AlgTraits > Class Template Reference

CVFEM scalar advection/diffusion kernel. More...

#include <ScalarDiffFemKernel.h>

Inheritance diagram for sierra::nalu::ScalarDiffFemKernel< AlgTraits >:
sierra::nalu::Kernel

Public Member Functions

 ScalarDiffFemKernel (const stk::mesh::BulkData &, const SolutionOptions &, ScalarFieldType *, ScalarFieldType *, ElemDataRequests &)
 
virtual ~ScalarDiffFemKernel ()
 
virtual void execute (SharedMemView< DoubleType ** > &, SharedMemView< DoubleType * > &, ScratchViews< DoubleType > &)
 Execute the kernel within a Kokkos loop and populate the LHS and RHS for the linear solve. More...
 
- Public Member Functions inherited from sierra::nalu::Kernel
 Kernel ()=default
 
virtual ~Kernel ()
 
virtual void setup (const TimeIntegrator &)
 Perform pre-timestep work for the computational kernel. More...
 

Private Member Functions

 ScalarDiffFemKernel ()=delete
 

Private Attributes

const stk::mesh::BulkData * bulkData_
 
ScalarFieldTypescalarQ_ {nullptr}
 
ScalarFieldTypediffFluxCoeff_ {nullptr}
 
VectorFieldTypecoordinates_ {nullptr}
 
Hex8FEMmeFEM_
 
double * ipWeight_
 
const bool shiftedGradOp_
 
Kokkos::View< DoubleType[AlgTraits::numScsIp_][AlgTraits::nodesPerElement_]> v_shape_function_ { "v_shape_func" }
 Shape functions. More...
 

Detailed Description

template<typename AlgTraits>
class sierra::nalu::ScalarDiffFemKernel< AlgTraits >

CVFEM scalar advection/diffusion kernel.

Constructor & Destructor Documentation

template<typename AlgTraits >
sierra::nalu::ScalarDiffFemKernel< AlgTraits >::ScalarDiffFemKernel ( const stk::mesh::BulkData &  bulkData,
const SolutionOptions solnOpts,
ScalarFieldType scalarQ,
ScalarFieldType diffFluxCoeff,
ElemDataRequests dataPreReqs 
)
template<typename AlgTraits >
sierra::nalu::ScalarDiffFemKernel< AlgTraits >::~ScalarDiffFemKernel ( )
virtual
template<typename AlgTraits >
sierra::nalu::ScalarDiffFemKernel< AlgTraits >::ScalarDiffFemKernel ( )
privatedelete

Member Function Documentation

template<typename AlgTraits >
void sierra::nalu::ScalarDiffFemKernel< AlgTraits >::execute ( SharedMemView< DoubleType ** > &  lhs,
SharedMemView< DoubleType * > &  rhs,
ScratchViews< DoubleType > &  scratchViews 
)
virtual

Member Data Documentation

template<typename AlgTraits >
const stk::mesh::BulkData* sierra::nalu::ScalarDiffFemKernel< AlgTraits >::bulkData_
private
template<typename AlgTraits >
VectorFieldType* sierra::nalu::ScalarDiffFemKernel< AlgTraits >::coordinates_ {nullptr}
private
template<typename AlgTraits >
ScalarFieldType* sierra::nalu::ScalarDiffFemKernel< AlgTraits >::diffFluxCoeff_ {nullptr}
private
template<typename AlgTraits >
double* sierra::nalu::ScalarDiffFemKernel< AlgTraits >::ipWeight_
private
template<typename AlgTraits >
Hex8FEM* sierra::nalu::ScalarDiffFemKernel< AlgTraits >::meFEM_
private
template<typename AlgTraits >
ScalarFieldType* sierra::nalu::ScalarDiffFemKernel< AlgTraits >::scalarQ_ {nullptr}
private
template<typename AlgTraits >
const bool sierra::nalu::ScalarDiffFemKernel< AlgTraits >::shiftedGradOp_
private
template<typename AlgTraits >
Kokkos::View<DoubleType[AlgTraits::numScsIp_][AlgTraits::nodesPerElement_]> sierra::nalu::ScalarDiffFemKernel< AlgTraits >::v_shape_function_ { "v_shape_func" }
private

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