Documentation 6b54b78464
Loading...
Searching...
No Matches
CNoViscousFlux< NDIM > Class Template Reference

Numerics classes that accept a compile-time decorator should use this class template as a "do-nothing" decorator and as a link to the interface when they are not being decorated. Compile-time decoration works by specifying the base class as a template parameter. Then the class being decorated should call a method of its base class to add some contribution to the flux/source and Jacobians just before writting the results to CSysVector and CSysMatrix. The mechanism can be used to chain any number of classes at compile-time, but its main purpose is to combine convective and viscous fluxes in the most (nearly) efficient way. More...

#include <viscous_fluxes.hpp>

Inheritance diagram for CNoViscousFlux< NDIM >:
[legend]

Protected Member Functions

template<class... Ts>
 CNoViscousFlux (Ts &...)
 
template<class... Ts>
void viscousTerms (Ts &...) const
 Empty method, real decorators should take as arguments whatever the decorated class can pass them to avoid expensive data accesses.
 

Static Protected Attributes

static constexpr size_t nDim = NDIM
 
static constexpr size_t nPrimVar = 0
 

Additional Inherited Members

- Public Member Functions inherited from CNumericsSIMD
virtual void ComputeFlux (Int iEdge, const CConfig &config, const CGeometry &geometry, const CVariable &solution, UpdateType updateType, Double updateMask, CSysVector< su2double > &vector, SparseMatrixType &matrix, su2activevector *edgeMassFluxes) const =0
 Interface for edge flux computation.
 
virtual ~CNumericsSIMD (void)=default
 Destructor of the class.
 
- Static Public Member Functions inherited from CNumericsSIMD
static CNumericsSIMD * CreateNumerics (const CConfig &config, int nDim, int iMesh, const CVariable *turbVars=nullptr)
 Factory method.
 

Detailed Description

template<size_t NDIM>
class CNoViscousFlux< NDIM >

Numerics classes that accept a compile-time decorator should use this class template as a "do-nothing" decorator and as a link to the interface when they are not being decorated. Compile-time decoration works by specifying the base class as a template parameter. Then the class being decorated should call a method of its base class to add some contribution to the flux/source and Jacobians just before writting the results to CSysVector and CSysMatrix. The mechanism can be used to chain any number of classes at compile-time, but its main purpose is to combine convective and viscous fluxes in the most (nearly) efficient way.

Constructor & Destructor Documentation

◆ CNoViscousFlux()

template<size_t NDIM>
template<class... Ts>
CNoViscousFlux< NDIM >::CNoViscousFlux ( Ts &  ...)
inlineprotected

Member Function Documentation

◆ viscousTerms()

template<size_t NDIM>
template<class... Ts>
void CNoViscousFlux< NDIM >::viscousTerms ( Ts &  ...) const
inlineprotected

Empty method, real decorators should take as arguments whatever the decorated class can pass them to avoid expensive data accesses.

Member Data Documentation

◆ nDim

template<size_t NDIM>
constexpr size_t CNoViscousFlux< NDIM >::nDim = NDIM
staticconstexprprotected

◆ nPrimVar

template<size_t NDIM>
constexpr size_t CNoViscousFlux< NDIM >::nPrimVar = 0
staticconstexprprotected

The documentation for this class was generated from the following file: