https://mooseframework.inl.gov
Loading...
Searching...
No Matches
Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
ADACGrGrMulti Class Reference

#include <ACGrGrMulti.h>

Inheritance diagram for ADACGrGrMulti:
[legend]

Static Public Member Functions

static InputParameters validParams ()
 

Protected Member Functions

virtual ADReal computeDFDOP () override
 
GenericReal< is_ad > computedF0du ()
 

Protected Attributes

std::vector< MaterialPropertyName > _gamma_names
 Names of gammas for each order parameter.
 
unsigned int _num_j
 
std::vector< const GenericMaterialProperty< Real, is_ad > * > _prop_gammas
 Values of gammas for each order parameter.
 

Detailed Description

Definition at line 64 of file ACGrGrMulti.h.

Member Function Documentation

◆ computedF0du()

GenericReal< is_ad > ACGrGrMultiTempl< is_ad >::computedF0du ( )
protectedinherited

Definition at line 46 of file ACGrGrMulti.C.

114{
115 GenericReal<is_ad> SumGammaEtaj = 0.0;
116 for (const auto i : make_range(_op_num))
117 SumGammaEtaj += (*_prop_gammas[i])[_qp] * (*_vals[i])[_qp] * (*_vals[i])[_qp];
118
119 return _u[_qp] * _u[_qp] * _u[_qp] - _u[_qp] + 2.0 * _u[_qp] * SumGammaEtaj;
120}
Moose::GenericType< Real, is_ad > GenericReal
std::vector< const GenericMaterialProperty< Real, is_ad > * > _prop_gammas
Values of gammas for each order parameter.
Definition ACGrGrMulti.h:38
IntRange< T > make_range(T beg, T end)

◆ computeDFDOP()

ADReal ADACGrGrMulti::computeDFDOP ( )
overrideprotectedvirtual

Definition at line 84 of file ACGrGrMulti.C.

85{
86 // Sum all other order parameters
87 ADReal SumGammaEtaj = 0.0;
88 for (const auto i : make_range(_op_num))
89 SumGammaEtaj += (*_prop_gammas[i])[_qp] * (*_vals[i])[_qp] * (*_vals[i])[_qp];
90
91 return _mu[_qp] * computedF0du();
92}
DualNumber< Real, DNDerivativeType, true > ADReal
GenericReal< is_ad > computedF0du()

◆ validParams()

InputParameters ACGrGrMultiTempl< is_ad >::validParams ( )
staticinherited

Definition at line 28 of file ACGrGrMulti.C.

18{
20 params.addClassDescription("Multi-phase poly-crystalline Allen-Cahn Kernel");
21 params.addRequiredParam<std::vector<MaterialPropertyName>>(
22 "gamma_names",
23 "List of gamma material property names for each other order parameter. Place "
24 "in same order as order parameters (v)!");
25 return params;
26}
typename std::conditional< is_ad, ADGrainGrowthBase, ACGrGrBase >::type ACGrGrMultiBase
This kernel calculates the residual for grain growth for a multi-phase, poly-crystal system.
Definition ACGrGrMulti.h:22
void addRequiredParam(const std::string &name, const std::string &doc_string)
void addClassDescription(const std::string &doc_string)

Member Data Documentation

◆ _gamma_names

std::vector<MaterialPropertyName> ACGrGrMultiTempl< is_ad >::_gamma_names
protectedinherited

Names of gammas for each order parameter.

Definition at line 34 of file ACGrGrMulti.h.

◆ _num_j

unsigned int ACGrGrMultiTempl< is_ad >::_num_j
protectedinherited

Definition at line 35 of file ACGrGrMulti.h.

◆ _prop_gammas

std::vector<const GenericMaterialProperty<Real, is_ad> *> ACGrGrMultiTempl< is_ad >::_prop_gammas
protectedinherited

Values of gammas for each order parameter.

Definition at line 38 of file ACGrGrMulti.h.


The documentation for this class was generated from the following files: