|
DNDSR 0.1.0.dev1+gcd065ad
Distributed Numeric Data Structure for CFV
|
Shared device-callable kernel implementations for the EulerP Evaluator. More...
#include "DNDS/Defines.hpp"#include "DNDS/DeviceStorage.hpp"#include "DNDS/Errors.hpp"#include "EulerP/EulerP.hpp"#include "EulerP_ARS.hpp"#include "EulerP_Evaluator_impl.hpp"#include "Geom/Geometric.hpp"#include "EulerP_Evaluator_impl_utils.hpp"Go to the source code of this file.
Namespaces | |
| namespace | DNDS |
| the host side operators are provided as implemented | |
| namespace | DNDS::EulerP |
| Namespace for the EulerP alternative evaluator module with GPU support. | |
Functions | |
| template<DeviceBackend B = DeviceBackend::Host> | |
| DNDS_DEVICE void | DNDS::EulerP::RecGradient_GGRec_Kernel_BndVal (EvaluatorDeviceView< B > &self_view, typename Evaluator_impl< B >::RecGradient_Arg::Portable &arg, index iBnd, index iBndEnd, int nVars, int nVarsScalar) |
| Generates boundary ghost values for Green-Gauss gradient reconstruction. | |
| template DNDS_DEVICE void | DNDS::EulerP::RecGradient_GGRec_Kernel_BndVal< DeviceBackend::Host > (EvaluatorDeviceView< DeviceBackend::Host > &self_view, typename Evaluator_impl< DeviceBackend::Host >::RecGradient_Arg::Portable &arg, index iBnd, index iBndEnd, int nVars, int nVarsScalar) |
| template<DeviceBackend B = DeviceBackend::Host> | |
| DNDS_DEVICE void | DNDS::EulerP::RecGradient_GGRec_Kernel_GG (EvaluatorDeviceView< B > &self_view, typename Evaluator_impl< B >::RecGradient_Arg::Portable &arg, index iCell, index iCellEnd, int nVars, int nVarsScalar) |
| Green-Gauss gradient reconstruction kernel (per-cell). | |
| template DNDS_DEVICE void | DNDS::EulerP::RecGradient_GGRec_Kernel_GG< DeviceBackend::Host > (EvaluatorDeviceView< DeviceBackend::Host > &self_view, typename Evaluator_impl< DeviceBackend::Host >::RecGradient_Arg::Portable &arg, index iCell, index iCellEnd, int nVars, int nVarsScalar) |
| template<DeviceBackend B = DeviceBackend::Host> | |
| DNDS_DEVICE void | DNDS::EulerP::RecGradient_BarthLimiter_Kernel_FlowPart (EvaluatorDeviceView< B > &self_view, typename Evaluator_impl< B >::RecGradient_Arg::Portable &arg, index iCell, index iCellEnd, int nVars, int nVarsScalar) |
| Barth-Jespersen gradient limiter kernel for flow variables (per-cell). | |
| template DNDS_DEVICE void | DNDS::EulerP::RecGradient_BarthLimiter_Kernel_FlowPart< DeviceBackend::Host > (EvaluatorDeviceView< DeviceBackend::Host > &self_view, typename Evaluator_impl< DeviceBackend::Host >::RecGradient_Arg::Portable &arg, index iCell, index iCellEnd, int nVars, int nVarsScalar) |
| template<DeviceBackend B = DeviceBackend::Host> | |
| DNDS_DEVICE void | DNDS::EulerP::RecGradient_BarthLimiter_Kernel_ScalarPart (EvaluatorDeviceView< B > &self_view, typename Evaluator_impl< B >::RecGradient_Arg::Portable &arg, index iCell, index iCellEnd, int nVars, int nVarsScalar) |
| Barth-Jespersen gradient limiter kernel for transported scalar variables (per-cell). | |
| template DNDS_DEVICE void | DNDS::EulerP::RecGradient_BarthLimiter_Kernel_ScalarPart< DeviceBackend::Host > (EvaluatorDeviceView< DeviceBackend::Host > &self_view, typename Evaluator_impl< DeviceBackend::Host >::RecGradient_Arg::Portable &arg, index iCell, index iCellEnd, int nVars, int nVarsScalar) |
| template<DeviceBackend B = DeviceBackend::Host> | |
| DNDS_DEVICE void | DNDS::EulerP::Cons2PrimMu_Kernel (EvaluatorDeviceView< B > &self_view, typename Evaluator_impl< B >::Cons2PrimMu_Arg::Portable &arg, index iPt, index iPtEnd, int nVars, int nVarsScalar) |
| Conservative-to-primitive conversion with gradient transformation and viscosity (per-cell). | |
| template DNDS_DEVICE void | DNDS::EulerP::Cons2PrimMu_Kernel< DeviceBackend::Host > (EvaluatorDeviceView< DeviceBackend::Host > &self_view, typename Evaluator_impl< DeviceBackend::Host >::Cons2PrimMu_Arg::Portable &arg, index iPt, index iPtEnd, int nVars, int nVarsScalar) |
| template<DeviceBackend B = DeviceBackend::Host> | |
| DNDS_DEVICE void | DNDS::EulerP::Cons2Prim_Kernel (EvaluatorDeviceView< B > &self_view, typename Evaluator_impl< B >::Cons2Prim_Arg::Portable &arg, index iPt, index iPtEnd, int nVars, int nVarsScalar) |
| Conservative-to-primitive conversion without gradient transformation or viscosity (per-cell). | |
| template DNDS_DEVICE void | DNDS::EulerP::Cons2Prim_Kernel< DeviceBackend::Host > (EvaluatorDeviceView< DeviceBackend::Host > &self_view, typename Evaluator_impl< DeviceBackend::Host >::Cons2Prim_Arg::Portable &arg, index iPt, index iPtEnd, int nVars, int nVarsScalar) |
| template<DeviceBackend B = DeviceBackend::Host> | |
| DNDS_DEVICE void | DNDS::EulerP::EstEigenDt_GetFaceLam_Kernel (EvaluatorDeviceView< B > &self_view, typename Evaluator_impl< B >::EstEigenDt_Arg::Portable &arg, index iFace, index iFaceEnd, int nVars, int nVarsScalar) |
| Per-face eigenvalue estimation kernel for time-step computation. | |
| template DNDS_DEVICE void | DNDS::EulerP::EstEigenDt_GetFaceLam_Kernel< DeviceBackend::Host > (EvaluatorDeviceView< DeviceBackend::Host > &self_view, typename Evaluator_impl< DeviceBackend::Host >::EstEigenDt_Arg::Portable &arg, index iFace, index iFaceEnd, int nVars, int nVarsScalar) |
| template<DeviceBackend B = DeviceBackend::Host> | |
| DNDS_DEVICE void | DNDS::EulerP::EstEigenDt_FaceLam2CellDt_Kernel (EvaluatorDeviceView< B > &self_view, typename Evaluator_impl< B >::EstEigenDt_Arg::Portable &arg, index iCell, index iCellEnd, int nVars, int nVarsScalar) |
| Per-cell kernel converting face eigenvalues to a local CFL time step. | |
| template DNDS_DEVICE void | DNDS::EulerP::EstEigenDt_FaceLam2CellDt_Kernel< DeviceBackend::Host > (EvaluatorDeviceView< DeviceBackend::Host > &self_view, typename Evaluator_impl< DeviceBackend::Host >::EstEigenDt_Arg::Portable &arg, index iCell, index iCellEnd, int nVars, int nVarsScalar) |
| template<DeviceBackend B = DeviceBackend::Host> | |
| DNDS_DEVICE void | DNDS::EulerP::RecFace2nd_Kernel (EvaluatorDeviceView< B > &self_view, typename Evaluator_impl< B >::RecFace2nd_Arg::Portable &arg, index iFace, index iFaceEnd, int nVars, int nVarsScalar) |
| 2nd-order face value reconstruction kernel (per-face). | |
| template DNDS_DEVICE void | DNDS::EulerP::RecFace2nd_Kernel< DeviceBackend::Host > (EvaluatorDeviceView< DeviceBackend::Host > &self_view, typename Evaluator_impl< DeviceBackend::Host >::RecFace2nd_Arg::Portable &arg, index iFace, index iFaceEnd, int nVars, int nVarsScalar) |
| template<DeviceBackend B = DeviceBackend::Host> | |
| DNDS_DEVICE void | DNDS::EulerP::Flux2nd_Kernel_FluxFace (EvaluatorDeviceView< B > &self_view, typename Evaluator_impl< B >::Flux2nd_Arg::Portable &arg, index iFace, index iFaceEnd, int nVars, int nVarsScalar) |
| 2nd-order Roe inviscid flux computation kernel (per-face). | |
| template DNDS_DEVICE void | DNDS::EulerP::Flux2nd_Kernel_FluxFace< DeviceBackend::Host > (EvaluatorDeviceView< DeviceBackend::Host > &self_view, typename Evaluator_impl< DeviceBackend::Host >::Flux2nd_Arg::Portable &arg, index iFace, index iFaceEnd, int nVars, int nVarsScalar) |
| template<DeviceBackend B = DeviceBackend::Host> | |
| DNDS_DEVICE void | DNDS::EulerP::Flux2nd_Kernel_Face2Cell (EvaluatorDeviceView< B > &self_view, typename Evaluator_impl< B >::Flux2nd_Arg::Portable &arg, index iCell, index iCellEnd, int nVars, int nVarsScalar) |
| Scatters face fluxes to cell RHS residual (per-cell). | |
| template DNDS_DEVICE void | DNDS::EulerP::Flux2nd_Kernel_Face2Cell< DeviceBackend::Host > (EvaluatorDeviceView< DeviceBackend::Host > &self_view, typename Evaluator_impl< DeviceBackend::Host >::Flux2nd_Arg::Portable &arg, index iCell, index iCellEnd, int nVars, int nVarsScalar) |
Shared device-callable kernel implementations for the EulerP Evaluator.
Contains the per-element kernel functions (per-cell or per-face) that implement the computational core of each EulerP evaluation stage. These kernels are called from both the Host backend (via OpenMP loops in EulerP_Evaluator_impl.cpp) and the CUDA backend (via CUDA kernel launches).
Each kernel operates on a single element index range [i, iEnd) and uses the Portable sub-struct from the corresponding Evaluator_impl arg for data access. CUDA-specific shared memory buffers are conditionally compiled with DNDS_USE_CUDA.
Kernels defined here:
Definition in file EulerP_Evaluator_impl_common.hxx.