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

Material class to provide switching functions that prevent formation of a third phase at a two-phase interface. More...

#include <SwitchingFunction3PhaseMaterial.h>

Inheritance diagram for SwitchingFunction3PhaseMaterial:
[legend]

Public Types

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

Public Member Functions

 SwitchingFunction3PhaseMaterial (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

EBTerm _eta_i
 Coupled variable values for order parameters. More...
 
EBTerm _eta_j
 
EBTerm _eta_k
 

Detailed Description

Material class to provide switching functions that prevent formation of a third phase at a two-phase interface.

See Folch and Plapp, Phys. Rev. E, v. 72, 011602 (2005).

Definition at line 26 of file SwitchingFunction3PhaseMaterial.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

◆ SwitchingFunction3PhaseMaterial()

SwitchingFunction3PhaseMaterial::SwitchingFunction3PhaseMaterial ( const InputParameters &  parameters)

Definition at line 33 of file SwitchingFunction3PhaseMaterial.C.

34  : DerivativeParsedMaterialHelper(parameters), _eta_i("eta_i"), _eta_j("eta_j"), _eta_k("eta_k")
35 {
36  EBTerm h_i;
37 
38  if (getParam<bool>("constrain_range"))
39  {
40  EBFunction h;
41  EBTerm eta("eta");
42 
43  h(eta) =
44  conditional(eta < 0, 0, conditional(eta > 1, 1, 3.0 * pow(eta, 2) - 2.0 * pow(eta, 3)));
45 
46  h_i = pow(h(_eta_i), 2) / 4.0 *
47  (15.0 * (1.0 - h(_eta_i)) * (1.0 + h(_eta_i) - pow(h(_eta_k) - h(_eta_j), 2)) +
48  h(_eta_i) * (9.0 * pow(h(_eta_i), 2) - 5.0));
49  }
50  else
51  h_i = pow(_eta_i, 2) / 4.0 *
52  (15.0 * (1.0 - _eta_i) * (1.0 + _eta_i - pow(_eta_k - _eta_j, 2)) +
53  _eta_i * (9.0 * pow(_eta_i, 2) - 5.0));
54 
55  // Parse function for automatic differentiation
56  functionParse(h_i);
57 }

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

◆ _eta_i

EBTerm SwitchingFunction3PhaseMaterial::_eta_i
protected

Coupled variable values for order parameters.

Definition at line 34 of file SwitchingFunction3PhaseMaterial.h.

Referenced by SwitchingFunction3PhaseMaterial().

◆ _eta_j

EBTerm SwitchingFunction3PhaseMaterial::_eta_j
protected

Definition at line 35 of file SwitchingFunction3PhaseMaterial.h.

Referenced by SwitchingFunction3PhaseMaterial().

◆ _eta_k

EBTerm SwitchingFunction3PhaseMaterial::_eta_k
protected

Definition at line 36 of file SwitchingFunction3PhaseMaterial.h.

Referenced by SwitchingFunction3PhaseMaterial().


The documentation for this class was generated from the following files:
pow
ExpressionBuilder::EBTerm pow(const ExpressionBuilder::EBTerm &left, T exponent)
Definition: ExpressionBuilder.h:673
SwitchingFunction3PhaseMaterial::_eta_i
EBTerm _eta_i
Coupled variable values for order parameters.
Definition: SwitchingFunction3PhaseMaterial.h:34
SwitchingFunction3PhaseMaterial::_eta_j
EBTerm _eta_j
Definition: SwitchingFunction3PhaseMaterial.h:35
SwitchingFunction3PhaseMaterial::_eta_k
EBTerm _eta_k
Definition: SwitchingFunction3PhaseMaterial.h:36