https://mooseframework.inl.gov
Loading...
Searching...
No Matches
MaterialPropertyValue.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 "KernelValue.h"
13#include "ADKernelValue.h"
14
15// switch parent class depending on is_ad value
16template <bool is_ad>
17using KernelValueParent = typename std::conditional<is_ad, ADKernelValue, KernelValue>::type;
18
19template <bool is_ad>
21{
22public:
24
26
27protected:
29 virtual Real precomputeQpJacobian();
30
31 const Real _kernel_sign;
33
34 using KernelValueParent<is_ad>::_qp;
35 using KernelValueParent<is_ad>::_u;
36 using KernelValueParent<is_ad>::_phi;
37 using KernelValueParent<is_ad>::_j;
38};
39
typename std::conditional< is_ad, ADKernelValue, KernelValue >::type KernelValueParent
typename GenericMaterialPropertyStruct< T, is_ad >::type GenericMaterialProperty
Moose::GenericType< Real, is_ad > GenericReal
Definition MooseTypes.h:698
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.
virtual GenericReal< is_ad > precomputeQpResidual()
const GenericMaterialProperty< Real, is_ad > & _prop
static InputParameters validParams()
virtual Real precomputeQpJacobian()