#include "b2heat_material.H"
|
virtual void | get_conduction_and_capacity_heat (Model *model, const Element *element, const double coordinates[3], const b2linalg::Vector< double, b2linalg::Vdense_constref > nodes_interpolation, const double element_coordinate[3], const int layer_id, const double covariant_base[3][3], const double temperature, const double temperature_dot, const double grad_temperature[3], const double time, const double linear, double heat_conduction[3], double d_heat_conduction_d_temperature[3], double d_heat_conduction_d_grad_temperature[6], double &heat_capacity, double &d_heat_capacity_d_temperature, double &d_heat_capacity_d_temperature_dot, GradientContainer *gradient_container, SolverHints *solver_hints)=0 |
|
virtual void | get_radiation_and_convection_heat (Model *model, const Element *element, const double coordinates[3], const b2linalg::Vector< double, b2linalg::Vdense_constref > nodes_interpolation, const double element_coordinate[], const double temperature, const double time, const bool linear, double &heat, double &d_heat_d_temperature, GradientContainer *gradient_container, SolverHints *solver_hints)=0 |
|
virtual int | number_of_layer () const |
|
virtual void | laminate (const b2linalg::Vector< double, b2linalg::Vdense_constref > nodes_interpolation, double &laminate_begin, double &laminate_end) |
|
virtual void | layer (const b2linalg::Vector< double, b2linalg::Vdense_constref > nodes_interpolation, const int layer_id, double &layer_begin, double &layer_end) |
|
virtual LinearType | linear (const int layer_id=-1) const =0 |
|
virtual bool | isotropic (const int layer_id=-1) const =0 |
|
const std::string & | get_object_name () const override |
|
virtual | ~Object () |
|
The base class for a 3D heat material.
◆ get_conduction_and_capacity_heat()
virtual void b2000::HeatMaterial3D::get_conduction_and_capacity_heat |
( |
Model * |
model, |
|
|
const Element * |
element, |
|
|
const double |
coordinates[3], |
|
|
const b2linalg::Vector< double, b2linalg::Vdense_constref > |
nodes_interpolation, |
|
|
const double |
element_coordinate[3], |
|
|
const int |
layer_id, |
|
|
const double |
covariant_base[3][3], |
|
|
const double |
temperature, |
|
|
const double |
temperature_dot, |
|
|
const double |
grad_temperature[3], |
|
|
const double |
time, |
|
|
const double |
linear, |
|
|
double |
heat_conduction[3], |
|
|
double |
d_heat_conduction_d_temperature[3], |
|
|
double |
d_heat_conduction_d_grad_temperature[6], |
|
|
double & |
heat_capacity, |
|
|
double & |
d_heat_capacity_d_temperature, |
|
|
double & |
d_heat_capacity_d_temperature_dot, |
|
|
GradientContainer * |
gradient_container, |
|
|
SolverHints * |
solver_hints |
|
) |
| |
|
pure virtual |
Return the heat conduction and capacity of the material at a specific location in an element.
- Parameters
-
element | the element at with the heat are calculated. |
coordinates | the position of the material point. |
nodes_interpolation | the nodes interpolation at the location in the element. This can be used by the material to interpolate some fields defined by value at nodes. |
element_coordinate | the element natural coordinate |
layer_id | the layer id or 0 if the material as only one layer. Must be in the interval [0, nb_layer -1]. |
covariant_base | the covariant natural base at the location. This can be used to compute a material referential. |
temperature | the temperature (or 0 for a linear analysis). |
temperature_dot | the time derivative of the temperature (or 0 for a static analysis). |
grad_temperature | the gradient of the temperature field in the global base. grad_temperature[i] = d t / d xi |
time | the current time (or 0 for a static analysis). |
linear | a flag that must be set to true if the returned heat must be computed linearly. |
heat_conduction | the heat flux due to the conduction in the tree direction x0, x1, x2 of the global referential. |
d_heat_conduction_d_temperature | the derivative of the heat conduction flux 'heat_conduction' relatively to the temperature 'temperature'. |
d_heat_conduction_d_grad_temperature | the derivative of the heat conduction flux 'heat_conduction' relatively to the temperature gradient 'grad_temperature'. The 3x3 symmetric matrix is stored in lower packed format in a array of size 6. |
d_heat_conduction_d_grad_temperature[0] = d h0 / d gt0 d_heat_conduction_d_grad_temperature[1] = d h1 / d gt0 d_heat_conduction_d_grad_temperature[2] = d h2 / d gt0 d_heat_conduction_d_grad_temperature[3] = d h1 / d gt1 d_heat_conduction_d_grad_temperature[4] = d h2 / d gt1 d_heat_conduction_d_grad_temperature[5] = d h2 / d gt2
- Parameters
-
heat_capacity | the heat flux due to the capacity |
d_heat_capacity_d_temperature | the derivative of the heat capacity flux 'heat_capacity' relatively to the the temperature 'temperature'. |
d_heat_capacity_d_temperature_dot | the derivative of the heat capacity flux 'heat_capacity' relatively to the time derivative of the temperature 'temperature_dot'. |
gradient_container | the pointer to the gradient container or 0 if the gradient must by not computed. |
solver_hints | the pointer to an SolverHints object or 0. Allows to give hints to the iterative solver if to diverge and when to converge. |
◆ get_radiation_and_convection_heat()
virtual void b2000::HeatMaterial3D::get_radiation_and_convection_heat |
( |
Model * |
model, |
|
|
const Element * |
element, |
|
|
const double |
coordinates[3], |
|
|
const b2linalg::Vector< double, b2linalg::Vdense_constref > |
nodes_interpolation, |
|
|
const double |
element_coordinate[], |
|
|
const double |
temperature, |
|
|
const double |
time, |
|
|
const bool |
linear, |
|
|
double & |
heat, |
|
|
double & |
d_heat_d_temperature, |
|
|
GradientContainer * |
gradient_container, |
|
|
SolverHints * |
solver_hints |
|
) |
| |
|
pure virtual |
Return the heat radiation and convection of the material at a specific location in an element.
- Parameters
-
element | the element at with the heat are calculated. |
coordinates | the position of the material point. |
nodes_interpolation | the nodes interpolation at the location in the element. This can be used by the material to interpolate some fields defined by value at nodes. |
element_coordinate | the element natural coordinate |
temperature | the temperature. |
time | the current time or 0 for a static analysis. |
linear | a flag that must be set to true if the returned heat must be computed linearly. |
heat | the heat flux due to the radiation and convection. |
d_heat_d_temperature | the derivative of the heat flux 'heat' relatively to the temperature 'temperature'. |
gradient_container | the pointer to the gradient container or 0 if the gradient must by not computed. |
solver_hints | the pointer to an SolverHints object or 0. Allows to give hints to the iterative solver if to diverge and when to converge. |
The documentation for this class was generated from the following file: