https://mooseframework.inl.gov
AnisoHeatConduction.C
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://mooseframework.inl.gov
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 "AnisoHeatConduction.h"
11 
12 registerMooseObject("HeatTransferApp", AnisoHeatConduction);
13 
16 {
18  params.addClassDescription("Anisotropic diffusive heat conduction term $\\nabla \\cdot "
19  "-\\mathbf{k} \\nabla T$ of the thermal energy conservation equation");
20  params.addParam<MaterialPropertyName>(
21  "thermal_conductivity",
22  "thermal_conductivity",
23  "Material property providing thermal conductivity of the material.");
24 
25  return params;
26 }
27 
29  : DerivativeMaterialInterface<Kernel>(parameters),
30  _k(getMaterialProperty<RankTwoTensor>("thermal_conductivity")),
31  _dk_dT(getMaterialPropertyDerivative<RankTwoTensor>("thermal_conductivity", _var.name()))
32 {
33 }
34 
35 Real
37 {
38  return _k[_qp] * _grad_u[_qp] * _grad_test[_i][_qp];
39 }
40 
41 Real
43 {
44  return _k[_qp] * _grad_phi[_j][_qp] * _grad_test[_i][_qp] +
45  _dk_dT[_qp] * _phi[_j][_qp] * _grad_u[_qp] * _grad_test[_i][_qp];
46 }
virtual Real computeQpJacobian() override
void addParam(const std::string &name, const std::initializer_list< typename T::value_type > &value, const std::string &doc_string)
const MaterialProperty< RankTwoTensor > & _k
AnisoHeatConduction(const InputParameters &parameters)
registerMooseObject("HeatTransferApp", AnisoHeatConduction)
InputParameters validParams()
const std::string name
Definition: Setup.h:20
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void addClassDescription(const std::string &doc_string)
virtual Real computeQpResidual() override
This kernel implements the Laplacian operator multiplied by a 2nd order tensor giving anisotropic (di...
const MaterialProperty< RankTwoTensor > & _dk_dT
static InputParameters validParams()