|
VertexCFD
0.0-dev
|
Evaluator that computes the conductive heat flux \(\mathbf{q} = -k \nabla T\) for a given temperature gradient and thermal conductivity. More...
#include <VertexCFD_Closure_ConductionFlux.hpp>


Public Types | |
| using | scalar_type = typename EvalType::ScalarT |
Public Member Functions | |
| ConductionFlux (const panzer::IntegrationRule &ir, const std::string &flux_prefix="", const std::string &gradient_prefix="") | |
| Constructor. More... | |
| void | evaluateFields (typename Traits::EvalData workset) override |
| Evaluate the conductive flux for each cell/point. More... | |
| KOKKOS_INLINE_FUNCTION void | operator() (const Kokkos::TeamPolicy< PHX::exec_space >::member_type &team) const |
| Kokkos functor invoked for a team of threads. More... | |
Public Attributes | |
| PHX::MDField< scalar_type, panzer::Cell, panzer::Point, panzer::Dim > | _conduction_flux |
| Field that stores the computed conductive flux. More... | |
Evaluator that computes the conductive heat flux \(\mathbf{q} = -k \nabla T\) for a given temperature gradient and thermal conductivity.
The evaluator is templated on the evaluation type (e.g., Residual, Jacobian) and the Traits class required by the Panzer/Phalanx framework.
| EvalType | Evaluation type providing the scalar type. |
| Traits | Traits class defining the evaluation data layout. |
| VertexCFD::ClosureModel::ConductionFlux< EvalType, Traits >::ConductionFlux | ( | const panzer::IntegrationRule & | ir, |
| const std::string & | flux_prefix = "", |
||
| const std::string & | gradient_prefix = "" |
||
| ) |
Constructor.
Registers the fields required for the evaluation of the conductive flux. The flux field name is formed by concatenating flux_prefix with the string "CONDUCTION_FLUX_energy". The temperature gradient field name is formed analogously using gradient_prefix.
| [in] | ir | Integration rule providing data layouts. |
| [in] | flux_prefix | Optional prefix for the flux field name. |
| [in] | gradient_prefix | Optional prefix for the temperature gradient field name. |
|
override |
Evaluate the conductive flux for each cell/point.
This method is called by the Phalanx evaluation engine. It loops over the workset and computes \(\mathbf{q}_i = -k\,\nabla T_i\) for each integration point \(i\).
| [in] | workset | Evaluation data containing the current workset. |
| KOKKOS_INLINE_FUNCTION void VertexCFD::ClosureModel::ConductionFlux< EvalType, Traits >::operator() | ( | const Kokkos::TeamPolicy< PHX::exec_space >::member_type & | team | ) | const |
Kokkos functor invoked for a team of threads.
The functor computes the flux for a subset of cells assigned to the given team. It is intended for use with a Kokkos::TeamPolicy.
| [in] | team | Team member provided by Kokkos. |
| PHX::MDField<scalar_type, panzer::Cell, panzer::Point, panzer::Dim> VertexCFD::ClosureModel::ConductionFlux< EvalType, Traits >::_conduction_flux |
Field that stores the computed conductive flux.
The field has layout (Cell, Point, Dim) and is evaluated by this evaluator.