www.mooseframework.org
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
SusceptibilityTimeDerivative Class Reference

#include <SusceptibilityTimeDerivative.h>

Inheritance diagram for SusceptibilityTimeDerivative:
[legend]

Public Types

typedef DerivativeMaterialPropertyNameInterface::SymbolName SymbolName
 

Public Member Functions

 SusceptibilityTimeDerivative (const InputParameters &parameters)
 
virtual void initialSetup () override
 
const GenericMaterialProperty< U, is_ad > & getDefaultMaterialProperty (const std::string &name)
 
const GenericMaterialProperty< U, is_ad > & getDefaultMaterialPropertyByName (const std::string &name)
 
void validateDerivativeMaterialPropertyBase (const std::string &base)
 
const MaterialPropertyName derivativePropertyName (const MaterialPropertyName &base, const std::vector< SymbolName > &c) const
 
const MaterialPropertyName derivativePropertyNameFirst (const MaterialPropertyName &base, const SymbolName &c1) const
 
const MaterialPropertyName derivativePropertyNameSecond (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2) const
 
const MaterialPropertyName derivativePropertyNameThird (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2, const SymbolName &c3) const
 
GenericMaterialProperty< U, is_ad > & declarePropertyDerivative (const std::string &base, const std::vector< VariableName > &c)
 
GenericMaterialProperty< U, is_ad > & declarePropertyDerivative (const std::string &base, const std::vector< SymbolName > &c)
 
GenericMaterialProperty< U, is_ad > & declarePropertyDerivative (const std::string &base, const SymbolName &c1, const SymbolName &c2="", const SymbolName &c3="")
 
GenericMaterialProperty< U, is_ad > & declarePropertyDerivative (const std::string &base, const std::vector< VariableName > &c)
 
GenericMaterialProperty< U, is_ad > & declarePropertyDerivative (const std::string &base, const std::vector< SymbolName > &c)
 
GenericMaterialProperty< U, is_ad > & declarePropertyDerivative (const std::string &base, const SymbolName &c1, const SymbolName &c2="", const SymbolName &c3="")
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivative (const std::string &base, const std::vector< VariableName > &c)
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivative (const std::string &base, const std::vector< SymbolName > &c)
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivative (const std::string &base, const SymbolName &c1, const SymbolName &c2="", const SymbolName &c3="")
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivative (const std::string &base, const SymbolName &c1, unsigned int v2, unsigned int v3=libMesh::invalid_uint)
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivative (const std::string &base, unsigned int v1, unsigned int v2=libMesh::invalid_uint, unsigned int v3=libMesh::invalid_uint)
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivative (const std::string &base, const std::vector< VariableName > &c)
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivative (const std::string &base, const std::vector< SymbolName > &c)
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivative (const std::string &base, const SymbolName &c1, const SymbolName &c2="", const SymbolName &c3="")
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivative (const std::string &base, const SymbolName &c1, unsigned int v2, unsigned int v3=libMesh::invalid_uint)
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivative (const std::string &base, unsigned int v1, unsigned int v2=libMesh::invalid_uint, unsigned int v3=libMesh::invalid_uint)
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivativeByName (const MaterialPropertyName &base, const std::vector< VariableName > &c)
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivativeByName (const MaterialPropertyName &base, const std::vector< SymbolName > &c)
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivativeByName (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2="", const SymbolName &c3="")
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivativeByName (const MaterialPropertyName &base, const std::vector< VariableName > &c)
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivativeByName (const MaterialPropertyName &base, const std::vector< SymbolName > &c)
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivativeByName (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2="", const SymbolName &c3="")
 
void validateCoupling (const MaterialPropertyName &base, const std::vector< VariableName > &c, bool validate_aux=true)
 
void validateCoupling (const MaterialPropertyName &base, const VariableName &c1="", const VariableName &c2="", const VariableName &c3="")
 
void validateCoupling (const MaterialPropertyName &base, const std::vector< VariableName > &c, bool validate_aux=true)
 
void validateCoupling (const MaterialPropertyName &base, const VariableName &c1="", const VariableName &c2="", const VariableName &c3="")
 
void validateNonlinearCoupling (const MaterialPropertyName &base, const VariableName &c1="", const VariableName &c2="", const VariableName &c3="")
 
void validateNonlinearCoupling (const MaterialPropertyName &base, const VariableName &c1="", const VariableName &c2="", const VariableName &c3="")
 
const MaterialPropertyName propertyName (const MaterialPropertyName &base, const std::vector< SymbolName > &c) const
 
const MaterialPropertyName propertyName (const MaterialPropertyName &base, const std::vector< SymbolName > &c) const
 
const MaterialPropertyName propertyNameFirst (const MaterialPropertyName &base, const SymbolName &c1) const
 
const MaterialPropertyName propertyNameFirst (const MaterialPropertyName &base, const SymbolName &c1) const
 
const MaterialPropertyName propertyNameSecond (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2) const
 
const MaterialPropertyName propertyNameSecond (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2) const
 
const MaterialPropertyName propertyNameThird (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2, const SymbolName &c3) const
 
const MaterialPropertyName propertyNameThird (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2, const SymbolName &c3) const
 

Static Public Member Functions

static InputParameters validParams ()
 

Protected Member Functions

virtual Real computeQpResidual () override
 
virtual Real computeQpJacobian () override
 
virtual Real computeQpOffDiagJacobian (unsigned int jvar) override
 

Protected Attributes

const MaterialProperty< Real > & _dChidu
 susceptibility derivative w.r.t. the kernel variable More...
 
std::vector< const MaterialProperty< Real > * > _dChidarg
 susceptibility derivatives w.r.t. coupled variables More...
 
const GenericMaterialProperty< Real, is_ad > & _Chi
 susceptibility More...
 

Detailed Description

Definition at line 40 of file SusceptibilityTimeDerivative.h.

Constructor & Destructor Documentation

◆ SusceptibilityTimeDerivative()

SusceptibilityTimeDerivative::SusceptibilityTimeDerivative ( const InputParameters parameters)

Definition at line 39 of file SusceptibilityTimeDerivative.C.

41  _dChidu(getMaterialPropertyDerivative<Real>("f_name", _var.name())),
42  _dChidarg(_n_args)
43 {
44  // fetch derivatives
45  for (unsigned int i = 0; i < _n_args; ++i)
46  _dChidarg[i] = &getMaterialPropertyDerivative<Real>("f_name", i);
47 }
std::vector< const MaterialProperty< Real > * > _dChidarg
susceptibility derivatives w.r.t. coupled variables
const MaterialProperty< Real > & _dChidu
susceptibility derivative w.r.t. the kernel variable

Member Function Documentation

◆ computeQpJacobian()

Real SusceptibilityTimeDerivative::computeQpJacobian ( )
overrideprotectedvirtual

Definition at line 68 of file SusceptibilityTimeDerivative.C.

69 {
70  return TimeDerivative::computeQpJacobian() * _Chi[_qp] +
71  TimeDerivative::computeQpResidual() * _dChidu[_qp] * _phi[_j][_qp];
72 }
virtual Real computeQpResidual() override
virtual Real computeQpJacobian() override
const GenericMaterialProperty< Real, is_ad > & _Chi
susceptibility
const MaterialProperty< Real > & _dChidu
susceptibility derivative w.r.t. the kernel variable

◆ computeQpOffDiagJacobian()

Real SusceptibilityTimeDerivative::computeQpOffDiagJacobian ( unsigned int  jvar)
overrideprotectedvirtual

Definition at line 75 of file SusceptibilityTimeDerivative.C.

76 {
77  // get the coupled variable jvar is referring to
78  const unsigned int cvar = mapJvarToCvar(jvar);
79 
80  return TimeDerivative::computeQpResidual() * (*_dChidarg[cvar])[_qp] * _phi[_j][_qp];
81 }
virtual Real computeQpResidual() override
std::vector< const MaterialProperty< Real > * > _dChidarg
susceptibility derivatives w.r.t. coupled variables

◆ computeQpResidual()

Real SusceptibilityTimeDerivative::computeQpResidual ( )
overrideprotectedvirtual

Definition at line 56 of file SusceptibilityTimeDerivative.C.

57 {
59 }
virtual Real computeQpResidual() override
const GenericMaterialProperty< Real, is_ad > & _Chi
susceptibility

◆ initialSetup()

void SusceptibilityTimeDerivative::initialSetup ( )
overridevirtual

Definition at line 50 of file SusceptibilityTimeDerivative.C.

51 {
52  validateNonlinearCoupling<Real>("f_name");
53 }

◆ validParams()

InputParameters SusceptibilityTimeDerivativeTempl< is_ad >::validParams ( )
staticinherited

Definition at line 17 of file SusceptibilityTimeDerivative.C.

18 {
20  params.addClassDescription(
21  "A modified time derivative Kernel that multiplies the time derivative "
22  "of a variable by a generalized susceptibility");
23  params.addRequiredParam<MaterialPropertyName>(
24  "f_name", "Susceptibility function F defined in a FunctionMaterial");
25  params.addCoupledVar("args", "Vector of variable arguments of the susceptibility");
26  params.deprecateCoupledVar("args", "coupled_variables", "02/27/2024");
27  return params;
28 }
void addRequiredParam(const std::string &name, const std::string &doc_string)
InputParameters validParams()
void deprecateCoupledVar(const std::string &old_name, const std::string &new_name, const std::string &removal_date)
void addCoupledVar(const std::string &name, const std::string &doc_string)
void addClassDescription(const std::string &doc_string)

Member Data Documentation

◆ _Chi

const GenericMaterialProperty<Real, is_ad>& SusceptibilityTimeDerivativeTempl< is_ad >::_Chi
protectedinherited

susceptibility

Definition at line 37 of file SusceptibilityTimeDerivative.h.

Referenced by computeQpJacobian(), and computeQpResidual().

◆ _dChidarg

std::vector<const MaterialProperty<Real> *> SusceptibilityTimeDerivative::_dChidarg
protected

susceptibility derivatives w.r.t. coupled variables

Definition at line 55 of file SusceptibilityTimeDerivative.h.

Referenced by computeQpOffDiagJacobian(), and SusceptibilityTimeDerivative().

◆ _dChidu

const MaterialProperty<Real>& SusceptibilityTimeDerivative::_dChidu
protected

susceptibility derivative w.r.t. the kernel variable

Definition at line 52 of file SusceptibilityTimeDerivative.h.

Referenced by computeQpJacobian().


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