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

StressBasedChemicalPotential computes chemical potential based on stress and a direction tensor Forest et. More...

#include <StressBasedChemicalPotential.h>

Inheritance diagram for StressBasedChemicalPotential:
[legend]

Public Member Functions

 StressBasedChemicalPotential (const InputParameters &parameters)
 

Protected Member Functions

virtual void initQpStatefulProperties ()
 
virtual void computeQpProperties ()
 

Protected Attributes

MaterialProperty< Real > & _chemical_potential
 
MaterialProperty< Real > * _dchemical_potential
 
const MaterialProperty< RankTwoTensor > & _stress_old
 
const MaterialProperty< RealTensorValue > & _direction_tensor
 
const MaterialProperty< Real > & _prefactor
 
const MaterialProperty< Real > * _dprefactor_dc
 
bool _has_coupled_c
 

Detailed Description

StressBasedChemicalPotential computes chemical potential based on stress and a direction tensor Forest et.

al. MSMSE 2015

Definition at line 24 of file StressBasedChemicalPotential.h.

Constructor & Destructor Documentation

StressBasedChemicalPotential::StressBasedChemicalPotential ( const InputParameters &  parameters)

Definition at line 25 of file StressBasedChemicalPotential.C.

26  : DerivativeMaterialInterface<Material>(parameters),
27  _chemical_potential(declareProperty<Real>(getParam<MaterialPropertyName>("property_name"))),
28  _stress_old(getMaterialPropertyOld<RankTwoTensor>("stress_name")),
29  _direction_tensor(getMaterialProperty<RealTensorValue>("direction_tensor_name")),
30  _prefactor(getMaterialProperty<Real>("prefactor_name")),
31  _has_coupled_c(isCoupled("c"))
32 {
33  if (_has_coupled_c)
34  {
35  _dchemical_potential = &declarePropertyDerivative<Real>(
36  getParam<MaterialPropertyName>("property_name"), getVar("c", 0)->name());
37  _dprefactor_dc = &getMaterialPropertyDerivative<Real>("prefactor_name", getVar("c", 0)->name());
38  }
39 }
const MaterialProperty< Real > * _dprefactor_dc
MaterialProperty< Real > * _dchemical_potential
const MaterialProperty< RealTensorValue > & _direction_tensor
const MaterialProperty< RankTwoTensor > & _stress_old
MaterialProperty< Real > & _chemical_potential
const MaterialProperty< Real > & _prefactor

Member Function Documentation

void StressBasedChemicalPotential::computeQpProperties ( )
protectedvirtual

Definition at line 51 of file StressBasedChemicalPotential.C.

52 {
53  RankTwoTensor direction_tensor_rank_two = _direction_tensor[_qp];
54  _chemical_potential[_qp] =
55  -_stress_old[_qp].doubleContraction(direction_tensor_rank_two) * _prefactor[_qp];
56 
57  if (_has_coupled_c)
58  (*_dchemical_potential)[_qp] =
59  -_stress_old[_qp].doubleContraction(direction_tensor_rank_two) * (*_dprefactor_dc)[_qp];
60 }
const MaterialProperty< RealTensorValue > & _direction_tensor
const MaterialProperty< RankTwoTensor > & _stress_old
MaterialProperty< Real > & _chemical_potential
const MaterialProperty< Real > & _prefactor
void StressBasedChemicalPotential::initQpStatefulProperties ( )
protectedvirtual

Definition at line 42 of file StressBasedChemicalPotential.C.

43 {
44  _chemical_potential[_qp] = 0.0;
45 
46  if (_has_coupled_c)
47  (*_dchemical_potential)[_qp] = 0.0;
48 }
MaterialProperty< Real > & _chemical_potential

Member Data Documentation

MaterialProperty<Real>& StressBasedChemicalPotential::_chemical_potential
protected

Definition at line 33 of file StressBasedChemicalPotential.h.

Referenced by computeQpProperties(), and initQpStatefulProperties().

MaterialProperty<Real>* StressBasedChemicalPotential::_dchemical_potential
protected

Definition at line 34 of file StressBasedChemicalPotential.h.

Referenced by StressBasedChemicalPotential().

const MaterialProperty<RealTensorValue>& StressBasedChemicalPotential::_direction_tensor
protected

Definition at line 37 of file StressBasedChemicalPotential.h.

Referenced by computeQpProperties().

const MaterialProperty<Real>* StressBasedChemicalPotential::_dprefactor_dc
protected

Definition at line 39 of file StressBasedChemicalPotential.h.

Referenced by StressBasedChemicalPotential().

bool StressBasedChemicalPotential::_has_coupled_c
protected
const MaterialProperty<Real>& StressBasedChemicalPotential::_prefactor
protected

Definition at line 38 of file StressBasedChemicalPotential.h.

Referenced by computeQpProperties().

const MaterialProperty<RankTwoTensor>& StressBasedChemicalPotential::_stress_old
protected

Definition at line 36 of file StressBasedChemicalPotential.h.

Referenced by computeQpProperties().


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