www.mooseframework.org
KKSMultiFreeEnergy.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
10 #pragma once
11 
12 #include "TotalFreeEnergyBase.h"
13 #include "Material.h"
14 
15 // Forward Declarations
16 class KKSMultiFreeEnergy;
17 
18 template <>
19 InputParameters validParams<KKSMultiFreeEnergy>();
20 
26 {
27 public:
28  KKSMultiFreeEnergy(const InputParameters & parameters);
29 
30 protected:
31  virtual Real computeValue();
32 
34  std::vector<MaterialPropertyName> _Fj_names;
35  const unsigned int _num_j;
36 
38  std::vector<const MaterialProperty<Real> *> _prop_Fj;
39 
41  std::vector<MaterialPropertyName> _hj_names;
42 
44  std::vector<const MaterialProperty<Real> *> _prop_hj;
45 
47  std::vector<MaterialPropertyName> _gj_names;
48 
50  std::vector<const MaterialProperty<Real> *> _prop_gj;
51 
53  const Real _w;
54 
56  std::vector<const MaterialProperty<Real> *> _kappas;
57 };
58 
TotalFreeEnergyBase
Total free energy (both the bulk and gradient parts), where the bulk free energy has been defined in ...
Definition: TotalFreeEnergyBase.h:24
KKSMultiFreeEnergy::_hj_names
std::vector< MaterialPropertyName > _hj_names
Switching function names.
Definition: KKSMultiFreeEnergy.h:41
KKSMultiFreeEnergy::_prop_Fj
std::vector< const MaterialProperty< Real > * > _prop_Fj
Values of the free energy functions for each phase .
Definition: KKSMultiFreeEnergy.h:38
KKSMultiFreeEnergy
Compute the free energy in the multi-phase KKS Model .
Definition: KKSMultiFreeEnergy.h:25
TotalFreeEnergyBase.h
KKSMultiFreeEnergy::computeValue
virtual Real computeValue()
Definition: KKSMultiFreeEnergy.C:79
KKSMultiFreeEnergy::_gj_names
std::vector< MaterialPropertyName > _gj_names
Barrier function names.
Definition: KKSMultiFreeEnergy.h:47
validParams< KKSMultiFreeEnergy >
InputParameters validParams< KKSMultiFreeEnergy >()
Definition: KKSMultiFreeEnergy.C:16
KKSMultiFreeEnergy::_prop_hj
std::vector< const MaterialProperty< Real > * > _prop_hj
Values of the switching functions for each phase .
Definition: KKSMultiFreeEnergy.h:44
KKSMultiFreeEnergy::_prop_gj
std::vector< const MaterialProperty< Real > * > _prop_gj
Values of the barrier functions for each phase .
Definition: KKSMultiFreeEnergy.h:50
KKSMultiFreeEnergy::KKSMultiFreeEnergy
KKSMultiFreeEnergy(const InputParameters &parameters)
Definition: KKSMultiFreeEnergy.C:39
KKSMultiFreeEnergy::_kappas
std::vector< const MaterialProperty< Real > * > _kappas
Gradient interface free energy coefficients.
Definition: KKSMultiFreeEnergy.h:56
KKSMultiFreeEnergy::_Fj_names
std::vector< MaterialPropertyName > _Fj_names
Names of free energy functions for each phase .
Definition: KKSMultiFreeEnergy.h:34
KKSMultiFreeEnergy::_w
const Real _w
Barrier term height.
Definition: KKSMultiFreeEnergy.h:53
KKSMultiFreeEnergy::_num_j
const unsigned int _num_j
Definition: KKSMultiFreeEnergy.h:35