https://mooseframework.inl.gov
Loading...
Searching...
No Matches
KokkosMaterialRealAux.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
24
25 template <typename Derived>
26 KOKKOS_FUNCTION Real computeValue(const unsigned int qp, AssemblyDatum & datum) const;
27
28private:
31
33 const Real _factor;
34
36 const Real _offset;
37};
38
39template <typename Derived>
40KOKKOS_FUNCTION Real
41KokkosMaterialRealAux::computeValue(const unsigned int qp, AssemblyDatum & datum) const
42{
43 return _prop(datum, qp) * _factor + _offset;
44}
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.
const Real _offset
Value to be added to the material property.
const Real _factor
Multiplier for the material property.
KokkosMaterialRealAux(const InputParameters &parameters)
Class constructor.
const Moose::Kokkos::MaterialProperty< Real > _prop
Material property for this AuxKernel.
static InputParameters validParams()
KOKKOS_FUNCTION Real computeValue(const unsigned int qp, AssemblyDatum &datum) const
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.
The Kokkos material property class.