|
DNDSR 0.1.0.dev1+gcd065ad
Distributed Numeric Data Structure for CFV
|
Core type definitions and utilities for the EulerP alternative Navier-Stokes evaluator module. More...
Go to the source code of this file.
Classes | |
| class | DNDS::EulerP::EvaluatorArgBase< TDerived > |
| CRTP base class for packed kernel argument structs used by the Evaluator. More... | |
Namespaces | |
| namespace | DNDS |
| the host side operators are provided as implemented | |
| namespace | DNDS::EulerP |
| Namespace for the EulerP alternative evaluator module with GPU support. | |
Typedefs | |
| using | DNDS::EulerP::TU = Eigen::Vector< real, nVarsFlow > |
| Fixed-size 5-component conservative state vector (rho, rhoU, rhoV, rhoW, E). | |
| using | DNDS::EulerP::TDiffU = Eigen::Matrix< real, 3, nVarsFlow > |
| Fixed-size 3x5 spatial gradient of the conservative state (one row per spatial dimension). | |
| using | DNDS::EulerP::TUFull = Eigen::Vector< real, Eigen::Dynamic > |
| Dynamic-size state vector for extended variables (flow + turbulence model variables). | |
| using | DNDS::EulerP::TDiffUFull = Eigen::Matrix< real, 3, Eigen::Dynamic > |
| Dynamic-size 3xN spatial gradient for extended variables. | |
| using | DNDS::EulerP::TUFullMap = Eigen::Map< TUFull > |
| Eigen::Map wrapper for non-owning access to a dynamic-size state vector. | |
| using | DNDS::EulerP::TDiffUFullMap = Eigen::Map< TDiffUFull > |
| Eigen::Map wrapper for non-owning access to a dynamic-size gradient matrix. | |
| using | DNDS::EulerP::TUDof = ArrayDof< nVarsFlow, 1 > |
| Distributed array of 5-component flow state vectors (one per DOF). | |
| using | DNDS::EulerP::TUGrad = ArrayDof< 3, nVarsFlow > |
| Distributed array of 3x5 gradient matrices (one per DOF). | |
| using | DNDS::EulerP::TUScalar = ArrayDof< 1, 1 > |
| Distributed array of scalar values (e.g., pressure, temperature). | |
| using | DNDS::EulerP::TUScalarGrad = ArrayDof< 3, 1 > |
| Distributed array of 3-component scalar gradients. | |
| using | DNDS::EulerP::TUScalar2 = ArrayDof< 2, 1 > |
| Distributed array of 2-component scalar values (e.g., paired quantities). | |
| using | DNDS::EulerP::TUVec = ArrayDof< 3, 1 > |
| Distributed array of 3-component vectors (e.g., velocity, coordinates). | |
| using | DNDS::EulerP::TUVecGrad = ArrayDof< 3, 3 > |
| Distributed array of 3x3 vector gradient tensors. | |
Functions | |
| template<class TU > | |
| DNDS_DEVICE_CALLABLE DNDS_FORCEINLINE auto | DNDS::EulerP::U123 (TU &&v) |
| Extracts the momentum components (indices 1,2,3) from a state vector as a 3x1 block. | |
| template<class TU > | |
| DNDS_DEVICE_CALLABLE DNDS_FORCEINLINE auto | DNDS::EulerP::U012 (TU &&v) |
| Extracts the first 3 components (indices 0,1,2) from a vector as a 3x1 block. | |
Core type definitions and utilities for the EulerP alternative Navier-Stokes evaluator module.
The EulerP module is an alternative compressible Navier-Stokes evaluator with CUDA GPU support. Unlike the Euler module (which uses Eigen compile-time nVars and template-heavy dispatch), EulerP uses scalar loops, is device-callable, and supports both Host and CUDA backends via the DeviceBackend template parameter.
This header defines:
Definition in file EulerP.hpp.