https://mooseframework.inl.gov
Loading...
Searching...
No Matches
GenericKernelGrad.h
Go to the documentation of this file.
1//* This file is part of the MOOSE framework
2//* https://www.mooseframework.org
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 "KernelGrad.h"
13#include "ADKernelGrad.h"
14
15template <bool is_ad>
16using GenericKernelGrad = std::conditional_t<is_ad, ADKernelGrad, KernelGrad>;
17
18#define usingGenericKernelGradMembers \
19 usingFunctionInterfaceMembers; \
20 usingPostprocessorInterfaceMembers; \
21 usingMooseObjectMembers; \
22 usingTransientInterfaceMembers; \
23 usingTaggingInterfaceMembers; \
24 usingBlockRestrictableMembers; \
25 usingCoupleableMembers; \
26 using GenericKernelGrad<is_ad>::_qp; \
27 using GenericKernelGrad<is_ad>::_grad_u
std::conditional_t< is_ad, ADKernelGrad, KernelGrad > GenericKernelGrad