This material calculates necessary parameters for the grand potential sintering model with multiple defect species coupled with electrochemistry. More...
#include <ElectrochemicalSinteringMaterial.h>
Public Types | |
| typedef DerivativeMaterialPropertyNameInterface::SymbolName | SymbolName |
Public Member Functions | |
| ElectrochemicalSinteringMaterial (const InputParameters ¶meters) | |
| 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 void | computeQpProperties () |
Protected Attributes | |
| const unsigned int | _neta |
| number of solid phase order paramters | |
| std::vector< const VariableValue * > | _eta |
| solid phase order parameters | |
| std::vector< VariableName > | _eta_name |
| const unsigned int | _ndefects |
| number of defect species | |
| std::vector< const VariableValue * > | _w |
| chemical potentials for defects | |
| std::vector< VariableName > | _w_name |
| const VariableValue & | _phi |
| void phase order parameter | |
| const NonlinearVariableName | _phi_name |
| std::vector< MaterialPropertyName > | _ns_min_names |
| minima in energy wrt vacancy concentration in solid | |
| std::vector< const MaterialProperty< Real > * > | _ns_min |
| std::vector< std::vector< const MaterialProperty< Real > * > > | _dns_min |
| std::vector< std::vector< std::vector< const MaterialProperty< Real > * > > > | _d2ns_min |
| const VariableValue & | _temp |
| temperature | |
| const VariableValue & | _v |
| electric potential | |
| const VariableGradient & | _grad_V |
| Gradient of electric potential. | |
| std::vector< MaterialPropertyName > | _kv_names |
| Names of void energy coefficient for each defect. | |
| std::vector< const MaterialProperty< Real > * > | _kv |
| void energy coefficients for each defect | |
| std::vector< MaterialPropertyName > | _ks_names |
| Names of solid energy coefficient for each defect. | |
| std::vector< const MaterialProperty< Real > * > | _ks |
| solid energy coefficient for each defect | |
| MaterialProperty< Real > & | _hv |
| void phase switching function | |
| MaterialProperty< Real > & | _dhv |
| MaterialProperty< Real > & | _d2hv |
| MaterialProperty< Real > & | _hs |
| solid phase switching function | |
| MaterialProperty< Real > & | _dhs |
| MaterialProperty< Real > & | _d2hs |
| MaterialProperty< Real > & | _omegav |
| void phase grand potential density | |
| std::vector< MaterialProperty< Real > * > | _domegavdw |
| std::vector< MaterialProperty< Real > * > | _d2omegavdw2 |
| MaterialProperty< Real > & | _omegas |
| solid phase grand potential density | |
| std::vector< MaterialProperty< Real > * > | _domegasdw |
| std::vector< MaterialProperty< Real > * > | _d2omegasdw2 |
| std::vector< MaterialProperty< Real > * > | _domegasdeta |
| std::vector< std::vector< MaterialProperty< Real > * > > | _d2omegasdwdeta |
| std::vector< std::vector< MaterialProperty< Real > * > > | _d2omegasdetadeta |
| MaterialProperty< Real > & | _mu |
| energy barrier coefficient | |
| MaterialProperty< Real > & | _dmu |
| MaterialProperty< Real > & | _d2mu |
| MaterialProperty< Real > & | _kappa |
| gradient energy coefficient | |
| MaterialProperty< Real > & | _dkappa |
| MaterialProperty< Real > & | _d2kappa |
| MaterialProperty< Real > & | _gamma |
| interface profile coefficient | |
| const Real | _sigma_s |
| surface energy | |
| const Real | _sigma_gb |
| grain boundary energy | |
| const Real | _int_width |
| interface width | |
| const Real | _switch |
| Parameter to determine accuracy of surface/GB phase switching function. | |
| const MooseEnum | _solid_energy |
| Type of energy function to use for the solid phase. | |
| const Real | _mu_s |
| mu value on surfaces | |
| const Real | _mu_gb |
| mu value on grain boundaries | |
| const Real | _kappa_s |
| kappa value on surfaces | |
| const Real | _kappa_gb |
| kappa value on grain boundaries | |
| const Real | _kB |
| Boltzmann constant. | |
| const Real | _e |
| Electron charge. | |
| const std::vector< int > | _z |
| Defects species charges in units of e. | |
| const Real | _v_scale |
| Voltage scale. | |
| const Real | _eps_r |
| Solid phase relative permittivity. | |
| const std::vector< Real > | _nv_min |
| minima in energy wrt vacancy concentration in void | |
Private Member Functions | |
| bool | haveMaterialProperty (const std::string &prop_name) |
| std::vector< VariableName > | buildVariableVector (const VariableName &c1, const VariableName &c2, const VariableName &c3) |
| void | validateCouplingHelper (const MaterialPropertyName &base, const std::vector< VariableName > &c, const System &system, std::vector< VariableName > &missing) |
| bool | isNotObjectVariable (const VariableName &name) |
Private Attributes | |
| FEProblemBase & | _dmi_fe_problem |
This material calculates necessary parameters for the grand potential sintering model with multiple defect species coupled with electrochemistry.
Definition at line 19 of file ElectrochemicalSinteringMaterial.h.
| ElectrochemicalSinteringMaterial::ElectrochemicalSinteringMaterial | ( | const InputParameters & | parameters | ) |
Definition at line 71 of file ElectrochemicalSinteringMaterial.C.
|
protectedvirtual |
Definition at line 188 of file ElectrochemicalSinteringMaterial.C.
|
static |
Definition at line 17 of file ElectrochemicalSinteringMaterial.C.
|
protected |
Definition at line 79 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
Definition at line 74 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
Definition at line 102 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
Definition at line 97 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
Definition at line 51 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties(), and ElectrochemicalSinteringMaterial().
|
protected |
Definition at line 92 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties(), and ElectrochemicalSinteringMaterial().
|
protected |
Definition at line 89 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties(), and ElectrochemicalSinteringMaterial().
|
protected |
Definition at line 91 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties(), and ElectrochemicalSinteringMaterial().
|
protected |
Definition at line 84 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties(), and ElectrochemicalSinteringMaterial().
|
protected |
Definition at line 78 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
Definition at line 73 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
Definition at line 101 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
Definition at line 96 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
Definition at line 50 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties(), and ElectrochemicalSinteringMaterial().
|
protected |
Definition at line 90 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties(), and ElectrochemicalSinteringMaterial().
|
protected |
Definition at line 88 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties(), and ElectrochemicalSinteringMaterial().
|
protected |
Definition at line 83 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties(), and ElectrochemicalSinteringMaterial().
|
protected |
Electron charge.
Definition at line 138 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
Solid phase relative permittivity.
Definition at line 147 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
solid phase order parameters
Definition at line 33 of file ElectrochemicalSinteringMaterial.h.
Referenced by ElectrochemicalSinteringMaterial().
|
protected |
Definition at line 34 of file ElectrochemicalSinteringMaterial.h.
Referenced by ElectrochemicalSinteringMaterial().
|
protected |
interface profile coefficient
Definition at line 105 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
Gradient of electric potential.
Definition at line 60 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
solid phase switching function
Definition at line 77 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
void phase switching function
Definition at line 72 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
interface width
Definition at line 114 of file ElectrochemicalSinteringMaterial.h.
|
protected |
gradient energy coefficient
Definition at line 100 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
kappa value on grain boundaries
Definition at line 132 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
kappa value on surfaces
Definition at line 129 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
Boltzmann constant.
Definition at line 135 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
solid energy coefficient for each defect
Definition at line 69 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties(), and ElectrochemicalSinteringMaterial().
|
protected |
Names of solid energy coefficient for each defect.
Definition at line 67 of file ElectrochemicalSinteringMaterial.h.
Referenced by ElectrochemicalSinteringMaterial().
|
protected |
void energy coefficients for each defect
Definition at line 65 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties(), and ElectrochemicalSinteringMaterial().
|
protected |
Names of void energy coefficient for each defect.
Definition at line 63 of file ElectrochemicalSinteringMaterial.h.
Referenced by ElectrochemicalSinteringMaterial().
|
protected |
energy barrier coefficient
Definition at line 95 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
mu value on grain boundaries
Definition at line 126 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
mu value on surfaces
Definition at line 123 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
number of defect species
Definition at line 37 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties(), and ElectrochemicalSinteringMaterial().
|
protected |
number of solid phase order paramters
Definition at line 30 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties(), and ElectrochemicalSinteringMaterial().
|
protected |
Definition at line 49 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties(), and ElectrochemicalSinteringMaterial().
|
protected |
minima in energy wrt vacancy concentration in solid
Definition at line 48 of file ElectrochemicalSinteringMaterial.h.
Referenced by ElectrochemicalSinteringMaterial().
|
protected |
minima in energy wrt vacancy concentration in void
Definition at line 150 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties(), and ElectrochemicalSinteringMaterial().
|
protected |
solid phase grand potential density
Definition at line 87 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
void phase grand potential density
Definition at line 82 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
void phase order parameter
Definition at line 44 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
Definition at line 45 of file ElectrochemicalSinteringMaterial.h.
|
protected |
grain boundary energy
Definition at line 111 of file ElectrochemicalSinteringMaterial.h.
|
protected |
surface energy
Definition at line 108 of file ElectrochemicalSinteringMaterial.h.
|
protected |
Type of energy function to use for the solid phase.
Definition at line 120 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
Parameter to determine accuracy of surface/GB phase switching function.
Definition at line 117 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
temperature
Definition at line 54 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
electric potential
Definition at line 57 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
Voltage scale.
Definition at line 144 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
chemical potentials for defects
Definition at line 40 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties().
|
protected |
Definition at line 41 of file ElectrochemicalSinteringMaterial.h.
Referenced by ElectrochemicalSinteringMaterial().
|
protected |
Defects species charges in units of e.
Definition at line 141 of file ElectrochemicalSinteringMaterial.h.
Referenced by computeQpProperties(), and ElectrochemicalSinteringMaterial().