30#include "../CNumericsSIMD.hpp"
36template<
size_t nDim_,
size_t nVar_>
38 static constexpr size_t nDim = nDim_;
39 static constexpr size_t nVar = nVar_;
71 static constexpr size_t nDim = nDim_;
89template<
size_t nDim,
size_t N>
93 for (
size_t iDim = 0; iDim < nDim; ++iDim) {
94 U.
momentum(iDim) =
V.density() *
V.velocity(iDim);
96 U.
rhoEnergy() =
V.density() *
V.enthalpy() -
V.pressure();
115template<
size_t nDim,
class PrimVarType>
123 for (
size_t iDim = 0; iDim < nDim; ++iDim) {
124 roeAvg.
velocity(iDim) = (R*
V.j.velocity(iDim) +
V.i.velocity(iDim)) * D;
126 roeAvg.
enthalpy = (R*
V.j.enthalpy() +
V.i.enthalpy()) * D;
A templated matrix/vector-like object.
Definition C2DContainer.hpp:374
#define FORCEINLINE
Definition code_config.hpp:44
FORCEINLINE ARRAY_T sqrt(const ARRAY_T &x)
Definition special_vectorization.hpp:116
auto squaredNorm(ForwardIterator iterator) -> typename std::decay< decltype(*iterator)>::type
Squared norm.
Definition util.hpp:231
auto dot(ForwardIterator iterator, const T *ptr) -> typename std::decay< decltype(*ptr)>::type
Dot product.
Definition util.hpp:203
@ V
Menter k-w SST model with vorticity production terms.
Type to store compressible conservative (i.e. solution) variables.
Definition variables.hpp:70
VectorDbl< nVar > all
Definition variables.hpp:73
const Double & rhoEnergy() const
Definition variables.hpp:79
const Double & momentum(size_t iDim) const
Definition variables.hpp:80
static constexpr size_t nDim
Definition variables.hpp:71
Double & density()
Definition variables.hpp:75
const Double * momentum() const
Definition variables.hpp:83
Double & rhoEnergy()
Definition variables.hpp:76
static constexpr size_t nVar
Definition variables.hpp:72
Double energy() const
Definition variables.hpp:82
const Double & density() const
Definition variables.hpp:78
Double & momentum(size_t iDim)
Definition variables.hpp:77
Type to store compressible primitive variables and access them by name.
Definition variables.hpp:37
static constexpr size_t nVar
Definition variables.hpp:39
const Double & eddyVisc() const
Definition variables.hpp:61
const Double & velocity(size_t iDim) const
Definition variables.hpp:50
VectorDbl< nVar > all
Definition variables.hpp:40
const Double & laminarVisc() const
Definition variables.hpp:60
Double & thermalCond()
Definition variables.hpp:57
const Double & pressure() const
Definition variables.hpp:47
Double & cp()
Definition variables.hpp:58
const Double & temperature() const
Definition variables.hpp:46
Double & enthalpy()
Definition variables.hpp:44
Double & density()
Definition variables.hpp:43
const Double & enthalpy() const
Definition variables.hpp:49
Double & pressure()
Definition variables.hpp:42
Double & temperature()
Definition variables.hpp:41
const Double & density() const
Definition variables.hpp:48
static constexpr size_t nDim
Definition variables.hpp:38
const Double & speedSound() const
Definition variables.hpp:59
const Double & thermalCond() const
Definition variables.hpp:62
Double & speedSound()
Definition variables.hpp:54
Double & laminarVisc()
Definition variables.hpp:55
Double & eddyVisc()
Definition variables.hpp:56
const Double * velocity() const
Definition variables.hpp:51
const Double & cp() const
Definition variables.hpp:63
Double & velocity(size_t iDim)
Definition variables.hpp:45
Simple pair type for i/j variables.
Definition util.hpp:130
Roe-averaged variables.
Definition variables.hpp:104
Double speedSound
Definition variables.hpp:108
Double enthalpy
Definition variables.hpp:107
Double projVel
Definition variables.hpp:109
Double density
Definition variables.hpp:105
VectorDbl< nDim > velocity
Definition variables.hpp:106
CRoeVariables< nDim > roeAveragedVariables(const Double &gamma, const CPair< PrimVarType > &V, const VectorDbl< nDim > &normal)
Compute Roe-averaged variables from pair of primitive variables.
Definition variables.hpp:116
CCompressibleConservatives< nDim > compressibleConservatives(const CCompressiblePrimitives< nDim, N > &V)
Primitive to conservative conversion.
Definition variables.hpp:90