https://mooseframework.inl.gov
Loading...
Searching...
No Matches
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
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
30 _k(getMaterialProperty<RankTwoTensor>("thermal_conductivity")),
31 _dk_dT(getMaterialPropertyDerivative<RankTwoTensor>("thermal_conductivity", _var.name()))
32{
33}
34
35Real
37{
38 return _k[_qp] * _grad_u[_qp] * _grad_test[_i][_qp];
39}
40
41Real
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}
registerMooseObject("HeatTransferApp", AnisoHeatConduction)
const std::string name
Definition Setup.h:21
This kernel implements the Laplacian operator multiplied by a 2nd order tensor giving anisotropic (di...
static InputParameters validParams()
const MaterialProperty< RankTwoTensor > & _dk_dT
virtual Real computeQpJacobian() override
virtual Real computeQpResidual() override
AnisoHeatConduction(const InputParameters &parameters)
const MaterialProperty< RankTwoTensor > & _k
void addParam(const std::string &name, const std::initializer_list< typename T::value_type > &value, const std::string &doc_string)
void addClassDescription(const std::string &doc_string)