https://mooseframework.inl.gov
Loading...
Searching...
No Matches
KokkosExtraElementIDAux.h
Go to the documentation of this file.
1//* This file is part of the MOOSE framework
2//* https://mooseframework.inl.gov
3//*
4//* All rights reserved, see COPYRIGHT for full restrictions
5//* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6//*
7//* Licensed under LGPL 2.1, please see LICENSE for details
8//* https://www.gnu.org/licenses/lgpl-2.1.html
9
10#pragma once
11
12#include "KokkosAuxKernel.h"
13
15{
16public:
18
20
21 template <typename Derived>
22 KOKKOS_FUNCTION Real computeValue(const unsigned int qp, AssemblyDatum & datum) const;
23
24protected:
25 const unsigned int _index;
26};
27
28template <typename Derived>
29KOKKOS_FUNCTION Real
30KokkosExtraElementIDAux::computeValue(const unsigned int, AssemblyDatum & datum) const
31{
32 const dof_id_type id = datum.extraElemID(_index);
33
34 return id == libMesh::DofObject::invalid_id ? -1.0 : id;
35}
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.
KokkosExtraElementIDAux(const InputParameters &parameters)
KOKKOS_FUNCTION Real computeValue(const unsigned int qp, AssemblyDatum &datum) const
static InputParameters validParams()
const InputParameters & parameters() const
Get the parameters of the object.
Definition MooseBase.h:131
The Kokkos object that holds thread-private data in the parallel operations of Kokkos kernels.
The base class for a user to derive their own Kokkos auxiliary kernels.
KOKKOS_FUNCTION dof_id_type extraElemID(unsigned int index) const
Get the extra element ID.
static constexpr dof_id_type invalid_id