94{
95
96
97
99 {
104 var_params.set<std::vector<Real>>(
"scaling") = {
_scaling};
105 var_params.applySpecificParameters(
parameters(), {
"block"});
106
107
109
110
112 {
114 break;
118 }
119 }
120
121
122
123
125 {
127 {
129
130 {
131 std::string kernel_type = "TimeDerivative";
132
133 std::string kernel_name =
_var_name +
"_" + kernel_type;
135 params.
set<NonlinearVariableName>(
"variable") =
_var_name;
137
138 _problem->addKernel(kernel_type, kernel_name, params);
139 }
140
141
142 {
143 std::string kernel_type = "CahnHilliard";
144
145 std::string kernel_name =
_var_name +
"_" + kernel_type;
147 params.
set<NonlinearVariableName>(
"variable") =
_var_name;
148 params.
set<MaterialPropertyName>(
"mob_name") = getParam<MaterialPropertyName>(
"mobility");
149 params.
set<MaterialPropertyName>(
"f_name") =
150 getParam<MaterialPropertyName>("free_energy");
152
153 _problem->addKernel(kernel_type, kernel_name, params);
154 }
155
156
157 {
158 std::string kernel_type = "CHInterface";
159
160 std::string kernel_name =
_var_name +
"_" + kernel_type;
162 params.
set<NonlinearVariableName>(
"variable") =
_var_name;
163 params.
set<MaterialPropertyName>(
"mob_name") = getParam<MaterialPropertyName>(
"mobility");
164 params.
set<MaterialPropertyName>(
"kappa_name") = getParam<MaterialPropertyName>(
"kappa");
166
167 _problem->addKernel(kernel_type, kernel_name, params);
168 }
169 break;
170
172
173 {
174 std::string kernel_type = "CoupledTimeDerivative";
175
176 std::string kernel_name =
_var_name +
"_" + kernel_type;
179 params.
set<std::vector<VariableName>>(
"v") = {
_var_name};
181
182 _problem->addKernel(kernel_type, kernel_name, params);
183 }
184
185
186 {
187 std::string kernel_type = "SplitCHWRes";
188
189 std::string kernel_name =
_var_name +
"_" + kernel_type;
192 params.
set<MaterialPropertyName>(
"mob_name") = getParam<MaterialPropertyName>(
"mobility");
194
195 _problem->addKernel(kernel_type, kernel_name, params);
196 }
197
198
199 {
200 std::string kernel_type = "SplitCHParsed";
201
202 std::string kernel_name =
_var_name +
"_" + kernel_type;
204 params.
set<NonlinearVariableName>(
"variable") =
_var_name;
206 params.
set<MaterialPropertyName>(
"f_name") =
207 getParam<MaterialPropertyName>("free_energy");
208 params.
set<MaterialPropertyName>(
"kappa_name") = getParam<MaterialPropertyName>(
"kappa");
210
211 _problem->addKernel(kernel_type, kernel_name, params);
212 }
213 break;
214
216
217 {
218 std::string kernel_type = "TimeDerivative";
219
220 std::string kernel_name =
_var_name +
"_" + kernel_type;
222 params.
set<NonlinearVariableName>(
"variable") =
_var_name;
224
225 _problem->addKernel(kernel_type, kernel_name, params);
226 }
227
228
229 {
230 std::string kernel_type = "MatDiffusion";
231
232 std::string kernel_name =
_var_name +
"_" + kernel_type;
234 params.
set<NonlinearVariableName>(
"variable") =
_var_name;
236 params.
set<MaterialPropertyName>(
"diffusivity") =
237 getParam<MaterialPropertyName>("mobility");
239
240 _problem->addKernel(kernel_type, kernel_name, params);
241 }
242
243 {
244 std::string kernel_type = "MatDiffusion";
245
249 params.
set<std::vector<VariableName>>(
"v") = {
_var_name};
250 params.
set<MaterialPropertyName>(
"diffusivity") = getParam<MaterialPropertyName>(
"kappa");
252
253 _problem->addKernel(kernel_type, kernel_name, params);
254 }
255
256
257 {
258 std::string kernel_type = "CoupledMaterialDerivative";
259
263 params.
set<std::vector<VariableName>>(
"v") = {
_var_name};
264 params.
set<MaterialPropertyName>(
"f_name") =
265 getParam<MaterialPropertyName>("free_energy");
267
268 _problem->addKernel(kernel_type, kernel_name, params);
269 }
270
271
272 {
273 std::string kernel_type = "CoefReaction";
274
278 params.
set<
Real>(
"coefficient") = -1.0;
280
281 _problem->addKernel(kernel_type, kernel_name, params);
282 }
283 }
284 }
285}
std::shared_ptr< FEProblemBase > & _problem
const std::string & _current_task
static std::string variableType(const libMesh::FEType &fe_type, const bool is_fv=false, const bool is_array=false)
const std::string & type() const
std::string stringify(const T &t)
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real