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

Material class that provides the free energy of an ideal gas with the expression builder and uses automatic differentiation to get the derivatives. More...

#include <GasFreeEnergyBase.h>

Inheritance diagram for GasFreeEnergyBase:
[legend]

Public Types

typedef std::vector< EBTermEBTermList
 
typedef std::vector< EBTermNode * > EBTermNodeList
 
typedef std::vector< const EBSubstitutionRule * > EBSubstitutionRuleList
 

Public Member Functions

 GasFreeEnergyBase (const InputParameters &parameters)
 
 BINARYFUNC_OP_IMPLEMENT (+, ADD) BINARYFUNC_OP_IMPLEMENT(-
 
SUB BINARYFUNC_OP_IMPLEMENT MUL BINARYFUNC_OP_IMPLEMENT (/, DIV) BINARYFUNC_OP_IMPLEMENT(%
 
SUB BINARYFUNC_OP_IMPLEMENT MUL MOD BINARYFUNC_OP_IMPLEMENT (<, LESS) BINARYFUNC_OP_IMPLEMENT(>
 
SUB BINARYFUNC_OP_IMPLEMENT MUL MOD GREATER BINARYFUNC_OP_IMPLEMENT (<=, LESSEQ) BINARYFUNC_OP_IMPLEMENT(>
 
SUB BINARYFUNC_OP_IMPLEMENT MUL MOD GREATER GREATEREQ BINARYFUNC_OP_IMPLEMENT (==, EQ) BINARYFUNC_OP_IMPLEMENT(!
 

Protected Attributes

const EBTerm _T
 Coupled variable value for the Temperature. More...
 
const EBTerm _c
 Coupled variable value for the concentration \( c \). More...
 
const Real _omega
 lattice site volume More...
 
const Real _m
 gas molecule mass in eV*s^2/Ang^2 More...
 
const EBTerm _n
 gas number density n = N/V = c/Omega (where Omega is the lattice site volume) More...
 
const EBTerm _nq
 quantum concentration More...
 
const Real _h
 physical constants More...
 
const Real _kB
 

Detailed Description

Material class that provides the free energy of an ideal gas with the expression builder and uses automatic differentiation to get the derivatives.

Definition at line 25 of file GasFreeEnergyBase.h.

Member Typedef Documentation

◆ EBSubstitutionRuleList

typedef std::vector<const EBSubstitutionRule *> ExpressionBuilder::EBSubstitutionRuleList
inherited

Definition at line 59 of file ExpressionBuilder.h.

◆ EBTermList

typedef std::vector<EBTerm> ExpressionBuilder::EBTermList
inherited

Definition at line 56 of file ExpressionBuilder.h.

◆ EBTermNodeList

typedef std::vector<EBTermNode *> ExpressionBuilder::EBTermNodeList
inherited

Definition at line 58 of file ExpressionBuilder.h.

Constructor & Destructor Documentation

◆ GasFreeEnergyBase()

GasFreeEnergyBase::GasFreeEnergyBase ( const InputParameters &  parameters)

Definition at line 38 of file GasFreeEnergyBase.C.

39  : DerivativeParsedMaterialHelper(parameters),
40  _T("T"),
41  _c("c"),
42  _omega(getParam<Real>("omega")),
43  _m(getParam<Real>("m") * getParam<Real>("mass_unit_conversion")),
44  _h(getParam<Real>("h")),
45  _kB(getParam<Real>("kB")),
46  _n(_c / _omega),
47  _nq(pow(2.0 * libMesh::pi * _m * _kB * _T / (_h * _h), 3.0 / 2.0))
48 {
49 }

Member Function Documentation

◆ BINARYFUNC_OP_IMPLEMENT() [1/5]

ExpressionBuilder::BINARYFUNC_OP_IMPLEMENT ( ,
ADD   
)
inherited

◆ BINARYFUNC_OP_IMPLEMENT() [2/5]

SUB BINARYFUNC_OP_IMPLEMENT MUL ExpressionBuilder::BINARYFUNC_OP_IMPLEMENT ( ,
DIV   
)
inherited

◆ BINARYFUNC_OP_IMPLEMENT() [3/5]

SUB BINARYFUNC_OP_IMPLEMENT MUL MOD ExpressionBuilder::BINARYFUNC_OP_IMPLEMENT ( )
inherited

◆ BINARYFUNC_OP_IMPLEMENT() [4/5]

SUB BINARYFUNC_OP_IMPLEMENT MUL MOD GREATER ExpressionBuilder::BINARYFUNC_OP_IMPLEMENT ( <=  ,
LESSEQ   
)
inherited

◆ BINARYFUNC_OP_IMPLEMENT() [5/5]

SUB BINARYFUNC_OP_IMPLEMENT MUL MOD GREATER GREATEREQ ExpressionBuilder::BINARYFUNC_OP_IMPLEMENT ( EQ  )
inherited

Member Data Documentation

◆ _c

const EBTerm GasFreeEnergyBase::_c
protected

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

Definition at line 35 of file GasFreeEnergyBase.h.

Referenced by IdealGasFreeEnergy::IdealGasFreeEnergy(), and VanDerWaalsFreeEnergy::VanDerWaalsFreeEnergy().

◆ _h

const Real GasFreeEnergyBase::_h
protected

physical constants

Definition at line 44 of file GasFreeEnergyBase.h.

◆ _kB

const Real GasFreeEnergyBase::_kB
protected

◆ _m

const Real GasFreeEnergyBase::_m
protected

gas molecule mass in eV*s^2/Ang^2

Definition at line 41 of file GasFreeEnergyBase.h.

◆ _n

const EBTerm GasFreeEnergyBase::_n
protected

gas number density n = N/V = c/Omega (where Omega is the lattice site volume)

Definition at line 49 of file GasFreeEnergyBase.h.

Referenced by IdealGasFreeEnergy::IdealGasFreeEnergy(), and VanDerWaalsFreeEnergy::VanDerWaalsFreeEnergy().

◆ _nq

const EBTerm GasFreeEnergyBase::_nq
protected

quantum concentration

Definition at line 52 of file GasFreeEnergyBase.h.

Referenced by IdealGasFreeEnergy::IdealGasFreeEnergy(), and VanDerWaalsFreeEnergy::VanDerWaalsFreeEnergy().

◆ _omega

const Real GasFreeEnergyBase::_omega
protected

lattice site volume

Definition at line 38 of file GasFreeEnergyBase.h.

◆ _T

const EBTerm GasFreeEnergyBase::_T
protected

Coupled variable value for the Temperature.

Definition at line 32 of file GasFreeEnergyBase.h.

Referenced by IdealGasFreeEnergy::IdealGasFreeEnergy(), and VanDerWaalsFreeEnergy::VanDerWaalsFreeEnergy().


The documentation for this class was generated from the following files:
GasFreeEnergyBase::_kB
const Real _kB
Definition: GasFreeEnergyBase.h:45
GasFreeEnergyBase::_h
const Real _h
physical constants
Definition: GasFreeEnergyBase.h:44
pow
ExpressionBuilder::EBTerm pow(const ExpressionBuilder::EBTerm &left, T exponent)
Definition: ExpressionBuilder.h:673
GasFreeEnergyBase::_n
const EBTerm _n
gas number density n = N/V = c/Omega (where Omega is the lattice site volume)
Definition: GasFreeEnergyBase.h:49
GasFreeEnergyBase::_omega
const Real _omega
lattice site volume
Definition: GasFreeEnergyBase.h:38
GasFreeEnergyBase::_nq
const EBTerm _nq
quantum concentration
Definition: GasFreeEnergyBase.h:52
GasFreeEnergyBase::_m
const Real _m
gas molecule mass in eV*s^2/Ang^2
Definition: GasFreeEnergyBase.h:41
GasFreeEnergyBase::_T
const EBTerm _T
Coupled variable value for the Temperature.
Definition: GasFreeEnergyBase.h:32
GasFreeEnergyBase::_c
const EBTerm _c
Coupled variable value for the concentration .
Definition: GasFreeEnergyBase.h:35