https://mooseframework.inl.gov
GapConductance.h
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 #pragma once
11 
12 #include "Material.h"
13 
17 class GapConductance : public Material
18 {
19 public:
21  {
25  };
27 
29 
31 
32  static Real gapLength(const GAP_GEOMETRY & gap_geom,
33  const Real radius,
34  const Real r1,
35  const Real r2,
36  const Real max_gap);
37 
41  static Real gapRect(const Real distance, const Real max_gap);
45  static Real gapCyl(const Real radius, const Real r1, const Real r2, const Real max_denom);
49  static Real gapSphere(const Real radius, const Real r1, const Real r2, const Real max_denom);
50 
51  static Real gapAttenuation(Real adjusted_length, Real min_gap, unsigned int min_gap_order);
52 
53  static void setGapGeometryParameters(const InputParameters & params,
54  const Moose::CoordinateSystemType coord_sys,
55  unsigned int axisymmetric_radial_coord,
56  GAP_GEOMETRY & gap_geometry_type,
57  Point & p1,
58  Point & p2);
59 
61  static void computeGapRadii(const GAP_GEOMETRY gap_geometry_type,
62  const Point & current_point,
63  const Point & p1,
64  const Point & p2,
65  const Real & gap_distance,
66  const Point & current_normal,
67  Real & r1,
68  Real & r2,
69  Real & radius);
70 
71  virtual void initialSetup() override;
72 
74  static Real gapLength(
75  const GAP_GEOMETRY & gap_geom, Real radius, Real r1, Real r2, Real min_gap, Real max_gap)
76  {
77  return std::max(min_gap, gapLength(gap_geom, radius, r1, r2, max_gap));
78  }
79 
80 protected:
81  virtual void computeQpProperties() override;
82 
86  virtual void computeQpConductance();
87 
88  virtual Real h_conduction();
89  virtual Real h_radiation();
90  virtual Real dh_conduction();
91  virtual Real dh_radiation();
92  virtual Real gapK();
93 
94  virtual void computeGapValues();
95 
96  const std::string _appended_property_name;
97 
99 
101 
103 
109 
110  bool _has_info;
111 
117 
121 
126 
127  const Real _min_gap;
128  const unsigned int _min_gap_order;
129  const Real _max_gap;
130 
134  DofMap * _dof_map;
135  const bool _warnings;
136 
137  Point & _p1;
138  Point & _p2;
139 };
const VariableValue *const _gap_conductivity_function_variable
MaterialProperty< Real > & _gap_conductance_dT
const Real _stefan_boltzmann
const NumericVector< Number > *const * _serialized_solution
const Real radius
static InputParameters actionParameters()
static Real gapCyl(const Real radius, const Real r1, const Real r2, const Real max_denom)
Compute gap distance for cylinder geometry.
static InputParameters validParams()
static void computeGapRadii(const GAP_GEOMETRY gap_geometry_type, const Point &current_point, const Point &p1, const Point &p2, const Real &gap_distance, const Point &current_normal, Real &r1, Real &r2, Real &radius)
Compute current gap radii for surface integration of gas conductance.
static Real gapLength(const GAP_GEOMETRY &gap_geom, const Real radius, const Real r1, const Real r2, const Real max_gap)
static Real gapLength(const GAP_GEOMETRY &gap_geom, Real radius, Real r1, Real r2, Real min_gap, Real max_gap)
Legacy method that clamps at min_gap.
MaterialProperty< Real > & _gap_thermal_conductivity
const Real _gap_conductivity
static Real gapAttenuation(Real adjusted_length, Real min_gap, unsigned int min_gap_order)
const std::string _appended_property_name
virtual Real h_radiation()
virtual Real dh_radiation()
virtual void initialSetup() override
virtual Real h_conduction()
const VariableValue & _gap_temp_value
const unsigned int _min_gap_order
const Real _max_gap
virtual Real dh_conduction()
static Real gapRect(const Real distance, const Real max_gap)
Compute gap distance for plate geometry.
static Real gapSphere(const Real radius, const Real r1, const Real r2, const Real max_denom)
Compute gap distance for sphere geometry.
static void setGapGeometryParameters(const InputParameters &params, const Moose::CoordinateSystemType coord_sys, unsigned int axisymmetric_radial_coord, GAP_GEOMETRY &gap_geometry_type, Point &p1, Point &p2)
Generic gap heat transfer model, with h_gap = h_conduction + h_contact + h_radiation.
virtual void computeGapValues()
const bool _warnings
const VariableValue & _gap_distance_value
const Real _emissivity_primary
virtual void computeQpProperties() override
OutputTools< Real >::VariableValue VariableValue
virtual void computeQpConductance()
Override this to compute the conductance at _qp.
const Real _min_gap
GAP_GEOMETRY & _gap_geometry_type
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
virtual Real gapK()
const VariableValue & _temp
CoordinateSystemType
PenetrationLocator * _penetration_locator
const InputParameters & parameters() const
const Real _emissivity_secondary
MooseVariable * _temp_var
const Function *const _gap_conductivity_function
GapConductance(const InputParameters &parameters)
MaterialProperty< Real > & _gap_conductance