www.mooseframework.org
PFCRFFMaterial.C
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 #include "PFCRFFMaterial.h"
11 
12 registerMooseObject("PhaseFieldApp", PFCRFFMaterial);
13 
14 template <>
15 InputParameters
17 {
18  InputParameters params = validParams<Material>();
19  params.addRequiredParam<unsigned int>(
20  "num_L", "specifies the number of complex L variables will be solved for");
21  return params;
22 }
23 
24 PFCRFFMaterial::PFCRFFMaterial(const InputParameters & parameters)
25  : Material(parameters),
26  _M(declareProperty<Real>("M")),
27  _alpha_R_0(declareProperty<Real>("alpha_R_0")),
28  _alpha_I_0(declareProperty<Real>("alpha_I_0")),
29  _A_R_0(declareProperty<Real>("A_R_0")),
30  _A_I_0(declareProperty<Real>("A_I_0")),
31  _alpha_R_1(declareProperty<Real>("alpha_R_1")),
32  _alpha_I_1(declareProperty<Real>("alpha_I_1")),
33  _A_R_1(declareProperty<Real>("A_R_1")),
34  _A_I_1(declareProperty<Real>("A_I_1")),
35  _alpha_R_2(declareProperty<Real>("alpha_R_2")),
36  _alpha_I_2(declareProperty<Real>("alpha_I_2")),
37  _A_R_2(declareProperty<Real>("A_R_2")),
38  _A_I_2(declareProperty<Real>("A_I_2")),
39  _alpha_R_3(declareProperty<Real>("alpha_R_3")),
40  _alpha_I_3(declareProperty<Real>("alpha_I_3")),
41  _A_R_3(declareProperty<Real>("A_R_3")),
42  _A_I_3(declareProperty<Real>("A_I_3")),
43  _alpha_R_4(declareProperty<Real>("alpha_R_4")),
44  _alpha_I_4(declareProperty<Real>("alpha_I_4")),
45  _A_R_4(declareProperty<Real>("A_R_4")),
46  _A_I_4(declareProperty<Real>("A_I_4")),
47  _num_L(getParam<unsigned int>("num_L"))
48 {
49 }
50 
51 void
53 {
54  // Mobility
55  _M[_qp] = 1.0;
56 
57  // Alpha and A constants
58  if (_num_L == 3)
59  {
60  // alpha constants
61  _alpha_R_0[_qp] = 2.352788316033853;
62  _alpha_I_0[_qp] = 0.0;
63  _alpha_R_1[_qp] = -4.371217046300305;
64  _alpha_I_1[_qp] = 6.153993830413678;
65  _alpha_R_2[_qp] = -4.371217046300305;
66  _alpha_I_2[_qp] = -6.153993830413678;
67 
68  // A constants
69  _A_R_0[_qp] = -1.254832460194660e2;
70  _A_I_0[_qp] = 4.141043034348927e-15;
71  _A_R_1[_qp] = 24.798843718179786;
72  _A_I_1[_qp] = 37.678064436502760;
73  _A_R_2[_qp] = 24.798843718179786;
74  _A_I_2[_qp] = -37.678064436502760;
75  }
76  else if (_num_L == 5)
77  {
78  // alpha constants
79  _alpha_R_0[_qp] = 2.429134088464706;
80  _alpha_I_0[_qp] = 0.0;
81  _alpha_R_1[_qp] = -3.972333899872749;
82  _alpha_I_1[_qp] = 6.499130135847140;
83  _alpha_R_2[_qp] = -3.972333899872749;
84  _alpha_I_2[_qp] = -6.499130135847140;
85  _alpha_R_3[_qp] = -18.943264072194637;
86  _alpha_I_3[_qp] = 9.349446845430961;
87  _alpha_R_4[_qp] = -18.943264072194637;
88  _alpha_I_4[_qp] = -9.349446845430961;
89 
90  // A constants
91  _A_R_0[_qp] = -1.282478656880326e02;
92  _A_I_0[_qp] = 9.910190130869531e-15;
93  _A_R_1[_qp] = 34.212475550662354;
94  _A_I_1[_qp] = 42.274652746493430;
95  _A_R_2[_qp] = 34.212475550666770;
96  _A_I_2[_qp] = -42.274652746496530;
97  _A_R_3[_qp] = 10.501019149011636;
98  _A_I_3[_qp] = -2.363585468012575;
99  _A_R_4[_qp] = 10.501019149026910;
100  _A_I_4[_qp] = 2.363585467971611;
101  }
102 }
103 
104 /*
105  _alpha_R_0[_qp] = 2.412;
106  _alpha_I_0[_qp] = 0.0;
107  _alpha_R_1[_qp] = -18.62;
108  _alpha_I_1[_qp] = 9.968;
109  _alpha_R_2[_qp] = -51.8;
110  _alpha_I_2[_qp] = -18.58;
111  _alpha_R_3[_qp] = -104.6;
112  _alpha_I_3[_qp] = -19.21;
113  _alpha_R_4[_qp] = -3.88;
114  _alpha_I_4[_qp] = 6.545;
115 
116  // A constants
117  _A_R_0[_qp] = -63.1;
118  _A_I_0[_qp] = 0.0;
119  _A_R_1[_qp] = 12.52;
120  _A_I_1[_qp] = -3.607;
121  _A_R_2[_qp] = 3.88;
122  _A_I_2[_qp] = 0.7762;
123  _A_R_3[_qp] = 0.9984;
124  _A_I_3[_qp] = 0.1591;
125  _A_R_4[_qp] = 36.7;
126  _A_I_4[_qp] = 42.66;
127 
128  else if (_num_L == 5)
129  {
130  // alpha constants
131  _alpha_R_0[_qp] = 2.4887266073084095552303551812656223773956298828125;
132  _alpha_I_0[_qp] = 0.0;
133  _alpha_R_1[_qp] = -19.2733746470461682065433706156909465789794921875;
134  _alpha_I_1[_qp] = -9.18277447910810451503493823111057281494140625;
135  _alpha_R_2[_qp] = -19.2733746470461682065433706156909465789794921875;
136  _alpha_I_2[_qp] = 9.18277447910810451503493823111057281494140625;
137  _alpha_R_3[_qp] = -3.8695517424123173633176975272363051772117614746094;
138  _alpha_I_3[_qp] = 6.7955256217773678528715208813082426786422729492188;
139  _alpha_R_4[_qp] = -3.8695517424123173633176975272363051772117614746094;
140  _alpha_I_4[_qp] = -6.7955256217773678528715208813082426786422729492188;
141 
142  // A constants
143  _A_R_0[_qp] = -133.2927098034036816898151300847530364990234375;
144  _A_I_0[_qp] = 0.0;
145  _A_R_1[_qp] = 10.728194854990965367846911249216645956039428710938;
146  _A_I_1[_qp] = 2.5027746492227604946378960448782891035079956054688;
147  _A_R_2[_qp] = 10.728194854990965367846911249216645956039428710938;
148  _A_I_2[_qp] = -2.5027746492227604946378960448782891035079956054688;
149  _A_R_3[_qp] = 35.9742594324134188354946672916412353515625;
150  _A_I_3[_qp] = 45.6070815722133602321264334022998809814453125;
151  _A_R_4[_qp] = 35.9742594324134188354946672916412353515625;
152  _A_I_4[_qp] = -45.6070815722133602321264334022998809814453125;
153  }
154 
155 */
PFCRFFMaterial::_alpha_I_2
MaterialProperty< Real > & _alpha_I_2
Definition: PFCRFFMaterial.h:39
PFCRFFMaterial::_A_R_2
MaterialProperty< Real > & _A_R_2
Definition: PFCRFFMaterial.h:40
PFCRFFMaterial::_alpha_R_0
MaterialProperty< Real > & _alpha_R_0
Definition: PFCRFFMaterial.h:30
PFCRFFMaterial::PFCRFFMaterial
PFCRFFMaterial(const InputParameters &parameters)
Definition: PFCRFFMaterial.C:24
PFCRFFMaterial::_alpha_I_0
MaterialProperty< Real > & _alpha_I_0
Definition: PFCRFFMaterial.h:31
PFCRFFMaterial::computeQpProperties
virtual void computeQpProperties()
Definition: PFCRFFMaterial.C:52
PFCRFFMaterial::_alpha_I_1
MaterialProperty< Real > & _alpha_I_1
Definition: PFCRFFMaterial.h:35
validParams< PFCRFFMaterial >
InputParameters validParams< PFCRFFMaterial >()
Definition: PFCRFFMaterial.C:16
PFCRFFMaterial::_A_I_1
MaterialProperty< Real > & _A_I_1
Definition: PFCRFFMaterial.h:37
PFCRFFMaterial::_A_R_3
MaterialProperty< Real > & _A_R_3
Definition: PFCRFFMaterial.h:44
registerMooseObject
registerMooseObject("PhaseFieldApp", PFCRFFMaterial)
PFCRFFMaterial::_A_R_4
MaterialProperty< Real > & _A_R_4
Definition: PFCRFFMaterial.h:48
PFCRFFMaterial
Definition: PFCRFFMaterial.h:20
PFCRFFMaterial::_alpha_R_3
MaterialProperty< Real > & _alpha_R_3
Definition: PFCRFFMaterial.h:42
PFCRFFMaterial::_A_I_2
MaterialProperty< Real > & _A_I_2
Definition: PFCRFFMaterial.h:41
PFCRFFMaterial::_alpha_R_4
MaterialProperty< Real > & _alpha_R_4
Definition: PFCRFFMaterial.h:46
PFCRFFMaterial::_A_I_3
MaterialProperty< Real > & _A_I_3
Definition: PFCRFFMaterial.h:45
PFCRFFMaterial::_A_R_0
MaterialProperty< Real > & _A_R_0
Definition: PFCRFFMaterial.h:32
PFCRFFMaterial::_num_L
unsigned int _num_L
Definition: PFCRFFMaterial.h:51
PFCRFFMaterial::_alpha_R_2
MaterialProperty< Real > & _alpha_R_2
Definition: PFCRFFMaterial.h:38
PFCRFFMaterial::_alpha_I_3
MaterialProperty< Real > & _alpha_I_3
Definition: PFCRFFMaterial.h:43
PFCRFFMaterial::_alpha_R_1
MaterialProperty< Real > & _alpha_R_1
Definition: PFCRFFMaterial.h:34
PFCRFFMaterial::_A_I_0
MaterialProperty< Real > & _A_I_0
Definition: PFCRFFMaterial.h:33
PFCRFFMaterial::_M
MaterialProperty< Real > & _M
Definition: PFCRFFMaterial.h:29
PFCRFFMaterial::_A_I_4
MaterialProperty< Real > & _A_I_4
Definition: PFCRFFMaterial.h:49
PFCRFFMaterial::_A_R_1
MaterialProperty< Real > & _A_R_1
Definition: PFCRFFMaterial.h:36
PFCRFFMaterial::_alpha_I_4
MaterialProperty< Real > & _alpha_I_4
Definition: PFCRFFMaterial.h:47
PFCRFFMaterial.h