www.mooseframework.org
ADTestDerivativeFunction.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 "ADMaterial.h"
13 #include "DerivativeMaterialPropertyNameInterface.h"
14 
15 // Forward Declarations
16 template <ComputeStage>
18 
20 
25 template <ComputeStage compute_stage>
26 class ADTestDerivativeFunction : public ADMaterial<compute_stage>,
27  public DerivativeMaterialPropertyNameInterface
28 {
29 public:
30  ADTestDerivativeFunction(const InputParameters & parameters);
31 
32 protected:
33  virtual void computeQpProperties();
34 
35  enum class FunctionEnum
36  {
37  F1,
38  F2,
39  F3
40  } _function;
41 
43  std::vector<const ADVariableValue *> _op;
44 
46  const MaterialPropertyName _f_name;
47 
49  ADMaterialProperty(Real) & _prop_F;
50 
52  std::vector<ADMaterialProperty(Real) *> _prop_dFdop;
53 
55 };
ADTestDerivativeFunction::FunctionEnum::F1
ADTestDerivativeFunction::FunctionEnum
FunctionEnum
Definition: ADTestDerivativeFunction.h:35
ADTestDerivativeFunction::computeQpProperties
virtual void computeQpProperties()
Definition: ADTestDerivativeFunction.C:55
ADTestDerivativeFunction::ADTestDerivativeFunction
ADTestDerivativeFunction(const InputParameters &parameters)
Definition: ADTestDerivativeFunction.C:29
ADTestDerivativeFunction
Material class that creates the math free energy and its derivatives for use with ADSplitCHParsed.
Definition: ADTestDerivativeFunction.h:17
ADTestDerivativeFunction::_function
enum ADTestDerivativeFunction::FunctionEnum _function
ADTestDerivativeFunction::_prop_dFdop
std::vector< ADMaterialProperty(Real) * > _prop_dFdop
function value derivative
Definition: ADTestDerivativeFunction.h:52
ADTestDerivativeFunction::FunctionEnum::F2
ADTestDerivativeFunction::usingMaterialMembers
usingMaterialMembers
Definition: ADTestDerivativeFunction.h:54
ADTestDerivativeFunction::ADMaterialProperty
ADMaterialProperty(Real) &_prop_F
function value
ADTestDerivativeFunction::FunctionEnum::F3
declareADValidParams
declareADValidParams(ADTestDerivativeFunction)
ADTestDerivativeFunction::_op
std::vector< const ADVariableValue * > _op
Coupled variable value for the order parameter.
Definition: ADTestDerivativeFunction.h:43
ADTestDerivativeFunction::_f_name
const MaterialPropertyName _f_name
property name
Definition: ADTestDerivativeFunction.h:46