www.mooseframework.org
Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Attributes | List of all members
HomogenizedThermalConductivity Class Reference

Homogenization of Temperature-Dependent Thermal Conductivity in Composite Materials, Journal of Thermophysics and Heat Transfer, Vol. More...

#include <HomogenizedThermalConductivity.h>

Inheritance diagram for HomogenizedThermalConductivity:
[legend]

Public Member Functions

 HomogenizedThermalConductivity (const InputParameters &parameters)
 
virtual void initialize ()
 
virtual void execute ()
 
virtual Real getValue ()
 
virtual void threadJoin (const UserObject &y)
 

Static Public Member Functions

static InputParameters validParams ()
 

Protected Member Functions

virtual Real computeQpIntegral ()
 

Private Attributes

const VariableGradient & _grad_temp_x
 
const VariableGradient & _grad_temp_y
 
const VariableGradient & _grad_temp_z
 
const unsigned int _component
 
const MaterialProperty< Real > & _diffusion_coefficient
 
Real _volume
 
Real _integral_value
 
const Real _scale
 

Detailed Description

Homogenization of Temperature-Dependent Thermal Conductivity in Composite Materials, Journal of Thermophysics and Heat Transfer, Vol.

15, No. 1, January-March 2001.

Definition at line 19 of file HomogenizedThermalConductivity.h.

Constructor & Destructor Documentation

◆ HomogenizedThermalConductivity()

HomogenizedThermalConductivity::HomogenizedThermalConductivity ( const InputParameters &  parameters)

Definition at line 39 of file HomogenizedThermalConductivity.C.

40  : ElementAverageValue(parameters),
41  _grad_temp_x(coupledGradient("temp_x")),
42  _grad_temp_y(_subproblem.mesh().dimension() >= 2 ? coupledGradient("temp_y") : _grad_zero),
43  _grad_temp_z(_subproblem.mesh().dimension() == 3 ? coupledGradient("temp_z") : _grad_zero),
44  _component(getParam<unsigned int>("component")),
45  _diffusion_coefficient(getMaterialProperty<Real>("diffusion_coefficient")),
46  _scale(getParam<Real>("scale_factor"))
47 {
48 }

Member Function Documentation

◆ computeQpIntegral()

Real HomogenizedThermalConductivity::computeQpIntegral ( )
protectedvirtual

Definition at line 84 of file HomogenizedThermalConductivity.C.

85 {
86  Real value = 1.0;
87 
88  switch (_component)
89  {
90  case 0:
91  value += _grad_temp_x[_qp](0);
92  break;
93 
94  case 1:
95  value += _grad_temp_y[_qp](1);
96  break;
97 
98  case 2:
99  value += _grad_temp_z[_qp](2);
100  break;
101 
102  default:
103  mooseError("Internal error.");
104  }
105 
106  return _scale * _diffusion_coefficient[_qp] * value;
107 }

◆ execute()

void HomogenizedThermalConductivity::execute ( )
virtual

Definition at line 58 of file HomogenizedThermalConductivity.C.

59 {
60  _integral_value += computeIntegral();
61  _volume += _current_elem_volume;
62 }

◆ getValue()

Real HomogenizedThermalConductivity::getValue ( )
virtual

Definition at line 65 of file HomogenizedThermalConductivity.C.

66 {
67  gatherSum(_integral_value);
68  gatherSum(_volume);
69 
70  return (_integral_value / _volume);
71 }

◆ initialize()

void HomogenizedThermalConductivity::initialize ( )
virtual

Definition at line 51 of file HomogenizedThermalConductivity.C.

52 {
53  _integral_value = 0.0;
54  _volume = 0.0;
55 }

◆ threadJoin()

void HomogenizedThermalConductivity::threadJoin ( const UserObject &  y)
virtual

Definition at line 74 of file HomogenizedThermalConductivity.C.

75 {
76  const HomogenizedThermalConductivity & pps =
77  dynamic_cast<const HomogenizedThermalConductivity &>(y);
78 
80  _volume += pps._volume;
81 }

◆ validParams()

InputParameters HomogenizedThermalConductivity::validParams ( )
static

Definition at line 19 of file HomogenizedThermalConductivity.C.

20 {
21  InputParameters params = ElementAverageValue::validParams();
22  params.addClassDescription(
23  "Postprocessor for asymptotic expansion homogenization for thermal conductivity");
24  params.addRequiredCoupledVar("temp_x", "solution in x");
25  params.addCoupledVar("temp_y", "solution in y");
26  params.addCoupledVar("temp_z", "solution in z");
27  params.addRequiredRangeCheckedParam<unsigned int>(
28  "component",
29  "component < 3",
30  "An integer corresponding to the direction this pp acts in (0 for x, 1 for y, 2 for z)");
31  params.addParam<Real>("scale_factor", 1, "Scale factor");
32  params.addParam<MaterialPropertyName>(
33  "diffusion_coefficient",
34  "thermal_conductivity",
35  "Property name of the diffusivity (Default: thermal_conductivity)");
36  return params;
37 }

Member Data Documentation

◆ _component

const unsigned int HomogenizedThermalConductivity::_component
private

Definition at line 38 of file HomogenizedThermalConductivity.h.

Referenced by computeQpIntegral().

◆ _diffusion_coefficient

const MaterialProperty<Real>& HomogenizedThermalConductivity::_diffusion_coefficient
private

Definition at line 39 of file HomogenizedThermalConductivity.h.

Referenced by computeQpIntegral().

◆ _grad_temp_x

const VariableGradient& HomogenizedThermalConductivity::_grad_temp_x
private

Definition at line 35 of file HomogenizedThermalConductivity.h.

Referenced by computeQpIntegral().

◆ _grad_temp_y

const VariableGradient& HomogenizedThermalConductivity::_grad_temp_y
private

Definition at line 36 of file HomogenizedThermalConductivity.h.

Referenced by computeQpIntegral().

◆ _grad_temp_z

const VariableGradient& HomogenizedThermalConductivity::_grad_temp_z
private

Definition at line 37 of file HomogenizedThermalConductivity.h.

Referenced by computeQpIntegral().

◆ _integral_value

Real HomogenizedThermalConductivity::_integral_value
private

Definition at line 41 of file HomogenizedThermalConductivity.h.

Referenced by execute(), getValue(), initialize(), and threadJoin().

◆ _scale

const Real HomogenizedThermalConductivity::_scale
private

Definition at line 42 of file HomogenizedThermalConductivity.h.

Referenced by computeQpIntegral().

◆ _volume

Real HomogenizedThermalConductivity::_volume
private

Definition at line 40 of file HomogenizedThermalConductivity.h.

Referenced by execute(), getValue(), initialize(), and threadJoin().


The documentation for this class was generated from the following files:
HomogenizedThermalConductivity::_grad_temp_y
const VariableGradient & _grad_temp_y
Definition: HomogenizedThermalConductivity.h:36
HomogenizedThermalConductivity::_integral_value
Real _integral_value
Definition: HomogenizedThermalConductivity.h:41
HomogenizedThermalConductivity::_volume
Real _volume
Definition: HomogenizedThermalConductivity.h:40
HomogenizedThermalConductivity::_diffusion_coefficient
const MaterialProperty< Real > & _diffusion_coefficient
Definition: HomogenizedThermalConductivity.h:39
HomogenizedThermalConductivity::_scale
const Real _scale
Definition: HomogenizedThermalConductivity.h:42
validParams
InputParameters validParams()
HomogenizedThermalConductivity::_grad_temp_x
const VariableGradient & _grad_temp_x
Definition: HomogenizedThermalConductivity.h:35
HomogenizedThermalConductivity::_component
const unsigned int _component
Definition: HomogenizedThermalConductivity.h:38
HomogenizedThermalConductivity::_grad_temp_z
const VariableGradient & _grad_temp_z
Definition: HomogenizedThermalConductivity.h:37
HomogenizedThermalConductivity
Homogenization of Temperature-Dependent Thermal Conductivity in Composite Materials,...
Definition: HomogenizedThermalConductivity.h:19