www.mooseframework.org
CoefDiffusion.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 "CoefDiffusion.h"
11 
13 
14 template <>
15 InputParameters
17 {
18  InputParameters params = validParams<Kernel>();
19  params.addParam<Real>("coef", 0.0, "Diffusion coefficient");
20  params.addParam<FunctionName>("function",
21  "If provided, the diffusion coefficient will be coef + "
22  "this function. This is useful for temporally or "
23  "spatially varying diffusivities");
24  params.addClassDescription("Kernel for diffusion with diffusivity = coef + function");
25  return params;
26 }
27 
28 CoefDiffusion::CoefDiffusion(const InputParameters & parameters)
29  : Kernel(parameters),
30  _coef(getParam<Real>("coef")),
31  _func(parameters.isParamValid("function") ? &getFunction("function") : NULL)
32 {
33 }
34 
35 Real
37 {
38  Real diffusivity = _coef;
39 
40  if (_func)
41  diffusivity += _func->value(_t, _q_point[_qp]);
42 
43  return diffusivity * _grad_test[_i][_qp] * _grad_u[_qp];
44 }
45 
46 Real
48 {
49  Real diffusivity = _coef;
50 
51  if (_func)
52  diffusivity += _func->value(_t, _q_point[_qp]);
53 
54  return diffusivity * _grad_test[_i][_qp] * _grad_phi[_j][_qp];
55 }
CoefDiffusion::computeQpJacobian
virtual Real computeQpJacobian()
Definition: CoefDiffusion.C:47
validParams< CoefDiffusion >
InputParameters validParams< CoefDiffusion >()
Definition: CoefDiffusion.C:16
registerMooseObject
registerMooseObject("MiscApp", CoefDiffusion)
CoefDiffusion.h
CoefDiffusion::computeQpResidual
virtual Real computeQpResidual()
Definition: CoefDiffusion.C:36
CoefDiffusion::_coef
const Real _coef
Definition: CoefDiffusion.h:31
CoefDiffusion
Definition: CoefDiffusion.h:21
CoefDiffusion::_func
const Function *const _func
Definition: CoefDiffusion.h:32
CoefDiffusion::CoefDiffusion
CoefDiffusion(const InputParameters &parameters)
Definition: CoefDiffusion.C:28