www.mooseframework.org
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
ADMathFreeEnergy< compute_stage > Class Template Reference

Material class that creates the math free energy and its derivatives for use with ADSplitCHParsed. More...

#include <ADMathFreeEnergy.h>

Inheritance diagram for ADMathFreeEnergy< compute_stage >:
[legend]

Public Member Functions

 ADMathFreeEnergy (const InputParameters &parameters)
 

Protected Member Functions

virtual void computeQpProperties ()
 
 ADMaterialProperty (Real) &_prop_F
 function value More...
 
 ADMaterialProperty (Real) &_prop_dFdc
 function value derivative More...
 

Protected Attributes

const ADVariableValue & _c
 Coupled variable value for the concentration \( c \). More...
 
const MaterialPropertyName _f_name
 property name More...
 
 usingMaterialMembers
 

Detailed Description

template<ComputeStage compute_stage>
class ADMathFreeEnergy< compute_stage >

Material class that creates the math free energy and its derivatives for use with ADSplitCHParsed.

\( F = \frac14(1 + c)^2(1 - c)^2 \).

Definition at line 18 of file ADMathFreeEnergy.h.

Constructor & Destructor Documentation

◆ ADMathFreeEnergy()

template<ComputeStage compute_stage>
ADMathFreeEnergy< compute_stage >::ADMathFreeEnergy ( const InputParameters &  parameters)

Definition at line 23 of file ADMathFreeEnergy.C.

24  : ADMaterial<compute_stage>(parameters),
25  _c(adCoupledValue("c")),
26  _f_name(adGetParam<MaterialPropertyName>("f_name")),
27  _prop_F(adDeclareADProperty<Real>(_f_name)),
28  _prop_dFdc(adDeclareADProperty<Real>(
29  derivativePropertyNameFirst(_f_name, this->getVar("c", 0)->name())))
30 {
31 }
const std::string name
Definition: Setup.h:22
const MaterialPropertyName _f_name
property name
const ADVariableValue & _c
Coupled variable value for the concentration .

Member Function Documentation

◆ ADMaterialProperty() [1/2]

template<ComputeStage compute_stage>
ADMathFreeEnergy< compute_stage >::ADMaterialProperty ( Real  ) &
protected

function value

◆ ADMaterialProperty() [2/2]

template<ComputeStage compute_stage>
ADMathFreeEnergy< compute_stage >::ADMaterialProperty ( Real  ) &
protected

function value derivative

◆ computeQpProperties()

template<ComputeStage compute_stage>
void ADMathFreeEnergy< compute_stage >::computeQpProperties ( )
protectedvirtual

Definition at line 35 of file ADMathFreeEnergy.C.

36 {
37  _prop_F[_qp] = 1.0 / 4.0 * (1.0 + _c[_qp]) * (1.0 + _c[_qp]) * (1.0 - _c[_qp]) * (1.0 - _c[_qp]);
38  _prop_dFdc[_qp] = _c[_qp] * (_c[_qp] * _c[_qp] - 1.0);
39 }
const ADVariableValue & _c
Coupled variable value for the concentration .

Member Data Documentation

◆ _c

template<ComputeStage compute_stage>
const ADVariableValue& ADMathFreeEnergy< compute_stage >::_c
protected

Coupled variable value for the concentration \( c \).

Definition at line 37 of file ADMathFreeEnergy.h.

◆ _f_name

template<ComputeStage compute_stage>
const MaterialPropertyName ADMathFreeEnergy< compute_stage >::_f_name
protected

property name

Definition at line 40 of file ADMathFreeEnergy.h.

◆ usingMaterialMembers

template<ComputeStage compute_stage>
ADMathFreeEnergy< compute_stage >::usingMaterialMembers
protected

Definition at line 48 of file ADMathFreeEnergy.h.


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