https://mooseframework.inl.gov
Loading...
Searching...
No Matches
KokkosVectorFunctionDirichletBC.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 "KokkosVectorNodalBC.h"
13#include "KokkosFunction.h"
14
42
43template <typename Derived>
44KOKKOS_FUNCTION Moose::Kokkos::Real3
46 AssemblyDatum & datum) const
47{
48 const auto p = datum.q_point(qp);
49
51 if (_has_function)
53 else
56
57 return _u(datum, qp) - values;
58}
std::array< Real, 2 > values
Definition MortarUtils.C:52
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.
Imposes the essential boundary condition u = g(t, x) on a vector variable, where the components of g ...
static InputParameters validParams()
const bool _has_function
Whether the vector function is provided.
KOKKOS_FUNCTION Moose::Kokkos::Real3 computeQpResidual(const unsigned int qp, AssemblyDatum &datum) const
const Moose::Kokkos::Function _function_x
Component functions, used if the vector function is not provided.
KokkosVectorFunctionDirichletBC(const InputParameters &parameters)
const Moose::Kokkos::Function _function
Optional vector function.
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.
KOKKOS_FUNCTION Real3 q_point(const unsigned int qp)
Get the physical quadrature point coordinate.
The abstract class that provides polymorphic interfaces for a function.
KOKKOS_FUNCTION Real value(Real t, Real3 p) const
KOKKOS_FUNCTION Real3 vectorValue(Real t, Real3 p) const
Scalar< Real > _t
TODO: Move to TransientInterface.
The base class for a user to derive their own Kokkos nodal boundary conditions on vector variables.
const VectorVariableValue _u
Current vector solution at nodes.
Vector3< Real > Real3
Definition KokkosTypes.h:32