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

Computes a concentration-dependent ExtraStress bases on the van der Waals equation of state that is added to the stress computed by the constitutive model. More...

#include <ComputeExtraStressVDWGas.h>

Inheritance diagram for ComputeExtraStressVDWGas:
[legend]

Public Member Functions

 ComputeExtraStressVDWGas (const InputParameters &parameters)
 

Static Public Member Functions

static InputParameters validParams ()
 

Protected Member Functions

virtual void computeQpExtraStress ()
 
virtual void computeQpProperties ()
 

Protected Attributes

const MaterialProperty< Real > & _b
 
const MaterialProperty< Real > & _Va
 
const MaterialProperty< Real > & _T
 
const VariableValue & _cg
 
const Real _nondim_factor
 
const Real _kB
 
const std::string _base_name
 
std::string _extra_stress_name
 
MaterialProperty< RankTwoTensor > & _extra_stress
 

Detailed Description

Computes a concentration-dependent ExtraStress bases on the van der Waals equation of state that is added to the stress computed by the constitutive model.

Definition at line 23 of file ComputeExtraStressVDWGas.h.

Constructor & Destructor Documentation

◆ ComputeExtraStressVDWGas()

ComputeExtraStressVDWGas::ComputeExtraStressVDWGas ( const InputParameters &  parameters)

Definition at line 36 of file ComputeExtraStressVDWGas.C.

37  : ComputeExtraStressBase(parameters),
38  _b(getMaterialProperty<Real>("b")),
39  _Va(getMaterialProperty<Real>("Va")),
40  _T(getMaterialProperty<Real>("T")),
41  _cg(coupledValue("cg")),
42  _nondim_factor(getParam<Real>("nondim_factor")),
43  _kB(1.38064852e-23) // Boltzmann constant in J/K
44 {
45 }

Member Function Documentation

◆ computeQpExtraStress()

void ComputeExtraStressVDWGas::computeQpExtraStress ( )
protectedvirtual

Implements ComputeExtraStressBase.

Definition at line 48 of file ComputeExtraStressVDWGas.C.

49 {
50  _extra_stress[_qp].zero();
51  _extra_stress[_qp].addIa(-_kB * _T[_qp] / (_Va[_qp] / _cg[_qp] - _b[_qp]) * 1.0e27 /
53 }

◆ computeQpProperties()

void ComputeExtraStressBase::computeQpProperties ( )
protectedvirtualinherited

Definition at line 34 of file ComputeExtraStressBase.C.

35 {
37 }

◆ validParams()

InputParameters ComputeExtraStressVDWGas::validParams ( )
static

Definition at line 17 of file ComputeExtraStressVDWGas.C.

18 {
19  InputParameters params = ComputeExtraStressBase::validParams();
20  params.addClassDescription(
21  "Computes a hydrostatic stress corresponding to the pressure of a van der Waals gas that is "
22  "added as an extra_stress to the stress computed by the constitutive model");
23  params.addRequiredParam<MaterialPropertyName>(
24  "b", "Hard-sphere exclusion volume of van der Waals gas atoms in nm^3");
25  params.addRequiredParam<MaterialPropertyName>("Va", "Atomic volume of lattice atoms in nm^3");
26  params.addRequiredParam<MaterialPropertyName>("T", "Temperature in K");
27  params.addRequiredCoupledVar("cg", "Gas concentration (relative to lattice atoms)");
28  params.addParam<Real>("nondim_factor",
29  1.0,
30  "Optional factor to non-dimensionalize pressure (pressure is calculated in "
31  "Pa, set this factor to characteristic energy density used for "
32  "non-dimensionalization if desired)");
33  return params;
34 }

Member Data Documentation

◆ _b

const MaterialProperty<Real>& ComputeExtraStressVDWGas::_b
protected

Definition at line 33 of file ComputeExtraStressVDWGas.h.

Referenced by computeQpExtraStress().

◆ _base_name

const std::string ComputeExtraStressBase::_base_name
protectedinherited

Definition at line 35 of file ComputeExtraStressBase.h.

◆ _cg

const VariableValue& ComputeExtraStressVDWGas::_cg
protected

Definition at line 37 of file ComputeExtraStressVDWGas.h.

Referenced by computeQpExtraStress().

◆ _extra_stress

MaterialProperty<RankTwoTensor>& ComputeExtraStressBase::_extra_stress
protectedinherited

◆ _extra_stress_name

std::string ComputeExtraStressBase::_extra_stress_name
protectedinherited

Definition at line 36 of file ComputeExtraStressBase.h.

◆ _kB

const Real ComputeExtraStressVDWGas::_kB
protected

Definition at line 39 of file ComputeExtraStressVDWGas.h.

Referenced by computeQpExtraStress().

◆ _nondim_factor

const Real ComputeExtraStressVDWGas::_nondim_factor
protected

Definition at line 38 of file ComputeExtraStressVDWGas.h.

Referenced by computeQpExtraStress().

◆ _T

const MaterialProperty<Real>& ComputeExtraStressVDWGas::_T
protected

Definition at line 35 of file ComputeExtraStressVDWGas.h.

Referenced by computeQpExtraStress().

◆ _Va

const MaterialProperty<Real>& ComputeExtraStressVDWGas::_Va
protected

Definition at line 34 of file ComputeExtraStressVDWGas.h.

Referenced by computeQpExtraStress().


The documentation for this class was generated from the following files:
ComputeExtraStressVDWGas::_nondim_factor
const Real _nondim_factor
Definition: ComputeExtraStressVDWGas.h:38
ComputeExtraStressVDWGas::_Va
const MaterialProperty< Real > & _Va
Definition: ComputeExtraStressVDWGas.h:34
ComputeExtraStressVDWGas::_kB
const Real _kB
Definition: ComputeExtraStressVDWGas.h:39
ComputeExtraStressBase::validParams
static InputParameters validParams()
Definition: ComputeExtraStressBase.C:15
ComputeExtraStressBase::_extra_stress
MaterialProperty< RankTwoTensor > & _extra_stress
Definition: ComputeExtraStressBase.h:38
ComputeExtraStressVDWGas::_T
const MaterialProperty< Real > & _T
Definition: ComputeExtraStressVDWGas.h:35
ComputeExtraStressVDWGas::_b
const MaterialProperty< Real > & _b
Definition: ComputeExtraStressVDWGas.h:33
ComputeExtraStressBase::ComputeExtraStressBase
ComputeExtraStressBase(const InputParameters &parameters)
Definition: ComputeExtraStressBase.C:25
ComputeExtraStressBase::computeQpExtraStress
virtual void computeQpExtraStress()=0
ComputeExtraStressVDWGas::_cg
const VariableValue & _cg
Definition: ComputeExtraStressVDWGas.h:37