Peano
Loading...
Searching...
No Matches
exahype2::fv::riemann::loopbodies Namespace Reference

Functions

template<class QInEnumeratorType , class QOutEnumeratorType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions GPUCallableInlineMethod void copySolution (const double *__restrict__ QIn, const QInEnumeratorType &QInEnumerator, int patchIndex, const ::tarch::la::Vector< Dimensions, int > &volumeIndex, int unknown, double *__restrict__ QOut, const QOutEnumeratorType &QOutEnumerator) InlineMethod
 
template<int NumberOfUnknowns, int NumberOfAuxiliaryVariables, class QInEnumeratorType , class QOutEnumeratorType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void copySolutionAndAddSourceTerm (const double *__restrict__ QIn, const QInEnumeratorType &QInEnumerator, const SourceFunctor &sourceFunctor, const ::tarch::la::Vector< Dimensions, double > &patchCentre, const ::tarch::la::Vector< Dimensions, double > &patchSize, int patchIndex, const ::tarch::la::Vector< Dimensions, int > &volumeIndex, double t, double dt, double *__restrict__ QOut, const QOutEnumeratorType &QOutEnumerator) InlineMethod
 
template<int NumberOfUnknowns, int NumberOfAuxiliaryVariables>
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void copySolutionAndAddSourceTerm (const double *__restrict__ QIn, const enumerator::AoSLexicographicEnumerator &QInEnumerator, const SourceFunctor &sourceFunctor, const ::tarch::la::Vector< Dimensions, double > &patchCentre, const ::tarch::la::Vector< Dimensions, double > &patchSize, int patchIndex, const ::tarch::la::Vector< Dimensions, int > &volumeIndex, double t, double dt, double *__restrict__ QOut, const enumerator::AoSLexicographicEnumerator &QOutEnumerator) InlineMethod
 
template<class SolverType , class QInEnumeratorType , class QOutEnumeratorType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions GPUCallableInlineMethod void copySolutionAndAddSourceTerm (const double *__restrict__ QIn, const QInEnumeratorType &QInEnumerator, const ::tarch::la::Vector< Dimensions, double > &patchCentre, const ::tarch::la::Vector< Dimensions, double > &patchSize, int patchIndex, const ::tarch::la::Vector< Dimensions, int > &volumeIndex, double t, double dt, double *__restrict__ QOut, const QOutEnumeratorType &QOutEnumerator) InlineMethod
 
template<class SolverType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions GPUCallableInlineMethod void copySolutionAndAddSourceTerm (const double *__restrict__ QIn, const enumerator::AoSLexicographicEnumerator &QInEnumerator, const ::tarch::la::Vector< Dimensions, double > &patchCentre, const ::tarch::la::Vector< Dimensions, double > &patchSize, int patchIndex, const ::tarch::la::Vector< Dimensions, int > &volumeIndex, double t, double dt, double *__restrict__ QOut, const enumerator::AoSLexicographicEnumerator &QOutEnumerator) InlineMethod
 
template<int NumberOfUnknowns, int NumberOfAuxiliaryVariables, class QInEnumeratorType , class EigenvaluesEnumeratorType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void computeEigenvalues (const double *__restrict__ QIn, const QInEnumeratorType &QInEnumerator, const EigenvaluesFunctor &eigenvaluesFunctor, const ::tarch::la::Vector< Dimensions, double > &patchCentre, const ::tarch::la::Vector< Dimensions, double > &patchSize, int patchIndex, const ::tarch::la::Vector< Dimensions, int > &volumeIndex, double t, double dt, int normal, double *__restrict__ eigenvalues, const EigenvaluesEnumeratorType &eigenvaluesEnumerator) InlineMethod
 
template<int NumberOfUnknowns, int NumberOfAuxiliaryVariables>
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void computeEigenvalues (const double *__restrict__ QIn, const enumerator::AoSLexicographicEnumerator &QInEnumerator, const EigenvaluesFunctor &eigenvaluesFunctor, const ::tarch::la::Vector< Dimensions, double > &patchCentre, const ::tarch::la::Vector< Dimensions, double > &patchSize, int patchIndex, const ::tarch::la::Vector< Dimensions, int > &volumeIndex, double t, double dt, int normal, double *__restrict__ eigenvalues, const enumerator::AoSLexicographicEnumerator &eigenvaluesEnumerator) InlineMethod
 
template<class SolverType , class QInEnumeratorType , class EigenvaluesEnumeratorType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions GPUCallableInlineMethod void computeEigenvalues (const double *__restrict__ QIn, const QInEnumeratorType &QInEnumerator, const ::tarch::la::Vector< Dimensions, double > &patchCentre, const ::tarch::la::Vector< Dimensions, double > &patchSize, int patchIndex, const ::tarch::la::Vector< Dimensions, int > &volumeIndex, double t, double dt, int normal, double *__restrict__ eigenvalues, const EigenvaluesEnumeratorType &eigenvaluesEnumerator) InlineMethod
 
template<class SolverType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions GPUCallableInlineMethod void computeEigenvalues (const double *__restrict__ QIn, const enumerator::AoSLexicographicEnumerator &QInEnumerator, const ::tarch::la::Vector< Dimensions, double > &patchCentre, const ::tarch::la::Vector< Dimensions, double > &patchSize, int patchIndex, const ::tarch::la::Vector< Dimensions, int > &volumeIndex, double t, double dt, int normal, double *__restrict__ eigenvalues, const enumerator::AoSLexicographicEnumerator &eigenvaluesEnumerator) InlineMethod
 
template<int NumberOfUnknowns, int NumberOfAuxiliaryVariables, class QInEnumeratorType , class FluxEnumeratorType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void computeFlux (const double *__restrict__ QIn, const QInEnumeratorType &QInEnumerator, const FluxFunctor &fluxFunctor, const ::tarch::la::Vector< Dimensions, double > &patchCentre, const ::tarch::la::Vector< Dimensions, double > &patchSize, int patchIndex, const ::tarch::la::Vector< Dimensions, int > &volumeIndex, double t, double dt, int normal, double *__restrict__ flux, const FluxEnumeratorType &fluxEnumerator) InlineMethod
 
template<int NumberOfUnknowns, int NumberOfAuxiliaryVariables>
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void computeFlux (const double *__restrict__ QIn, const enumerator::AoSLexicographicEnumerator &QInEnumerator, const FluxFunctor &fluxFunctor, const ::tarch::la::Vector< Dimensions, double > &patchCentre, const ::tarch::la::Vector< Dimensions, double > &patchSize, int patchIndex, const ::tarch::la::Vector< Dimensions, int > &volumeIndex, double t, double dt, int normal, double *__restrict__ flux, const enumerator::AoSLexicographicEnumerator &fluxEnumerator) InlineMethod
 
template<class SolverType , class QInEnumeratorType , class FluxEnumeratorType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions GPUCallableInlineMethod void computeFlux (const double *__restrict__ QIn, const QInEnumeratorType &QInEnumerator, const ::tarch::la::Vector< Dimensions, double > &patchCentre, const ::tarch::la::Vector< Dimensions, double > &patchSize, int patchIndex, const ::tarch::la::Vector< Dimensions, int > &volumeIndex, double t, double dt, int normal, double *__restrict__ flux, const FluxEnumeratorType &fluxEnumerator) InlineMethod
 
template<class SolverType , class FluxEnumeratorType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions GPUCallableInlineMethod void computeFlux (const double *__restrict__ QIn, const enumerator::AoSLexicographicEnumerator &QInEnumerator, const ::tarch::la::Vector< Dimensions, double > &patchCentre, const ::tarch::la::Vector< Dimensions, double > &patchSize, int patchIndex, const ::tarch::la::Vector< Dimensions, int > &volumeIndex, double t, double dt, int normal, double *__restrict__ flux, const FluxEnumeratorType &fluxEnumerator) InlineMethod
 
template<class SolverType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions GPUCallableInlineMethod void computeFlux (const double *__restrict__ QIn, const enumerator::AoSLexicographicEnumerator &QInEnumerator, const ::tarch::la::Vector< Dimensions, double > &patchCentre, const ::tarch::la::Vector< Dimensions, double > &patchSize, int patchIndex, const ::tarch::la::Vector< Dimensions, int > &volumeIndex, double t, double dt, int normal, double *__restrict__ flux, const enumerator::AoSLexicographicEnumerator &fluxEnumerator) InlineMethod
 
template<int NumberOfUnknowns, int NumberOfAuxiliaryVariables, class QInEnumeratorType , class NCPFaceEnumeratorType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void computeNonconservativeFlux (const double *__restrict__ QIn, const QInEnumeratorType &QInEnumerator, const NonconservativeProductFunctor &ncpFunctor, const ::tarch::la::Vector< Dimensions, double > &patchCentre, const ::tarch::la::Vector< Dimensions, double > &patchSize, int patchIndex, const ::tarch::la::Vector< Dimensions, int > &volumeIndex, double t, double dt, int normal, double *__restrict__ ncp, const NCPFaceEnumeratorType &ncpEnumerator) InlineMethod
 
template<class SolverType , class QInEnumeratorType , class NCPFaceEnumeratorType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions GPUCallableInlineMethod void computeNonconservativeFlux (const double *__restrict__ QIn, const QInEnumeratorType &QInEnumerator, const ::tarch::la::Vector< Dimensions, double > &patchCentre, const ::tarch::la::Vector< Dimensions, double > &patchSize, int patchIndex, const ::tarch::la::Vector< Dimensions, int > &volumeIndex, double t, double dt, int normal, double *__restrict__ ncp, const NCPFaceEnumeratorType &ncpEnumerator) InlineMethod
 
template<class NCPFaceEnumeratorType , class QOutEnumeratorType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions GPUCallableInlineMethod void updateSolutionWithNonconservativeFlux (const double *__restrict__ ncpX, const double *__restrict__ ncpY, const double *__restrict__ ncpZ, const NCPFaceEnumeratorType &ncpEnumerator, const ::tarch::la::Vector< Dimensions, double > &patchCentre, const ::tarch::la::Vector< Dimensions, double > &patchSize, int patchIndex, const ::tarch::la::Vector< Dimensions, int > &volumeIndex, int unknown, double dt, double *__restrict__ QOut, const QOutEnumeratorType &QOutEnumerator) InlineMethod
 
template<class NCPFaceEnumeratorType , class QOutEnumeratorType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions GPUCallableInlineMethod void updateSolutionWithNonconservativeFlux (const double *__restrict__ ncp, const NCPFaceEnumeratorType &ncpEnumerator, const ::tarch::la::Vector< Dimensions, double > &patchCentre, const ::tarch::la::Vector< Dimensions, double > &patchSize, int patchIndex, const ::tarch::la::Vector< Dimensions, int > &faceIndex, int unknown, double dt, int normal, double *__restrict__ QOut, const QOutEnumeratorType &QOutEnumerator) InlineMethod
 
template<int NumberOfUnknowns, int NumberOfAuxiliaryVariables>
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void computeRiemannSolution (const double *__restrict__ QIn, const enumerator::AoSLexicographicEnumerator &QInEnumerator, const RiemannFunctor &riemannFunctor, const double *__restrict__ flux, const enumerator::AoSLexicographicEnumerator &fluxEnumerator, const double *__restrict__ eigenvalues, const enumerator::AoSLexicographicEnumerator &eigenvaluesEnumerator, const ::tarch::la::Vector< Dimensions, double > &patchCentre, const ::tarch::la::Vector< Dimensions, double > &patchSize, int patchIndex, const ::tarch::la::Vector< Dimensions, int > &volumeIndex, double t, double dt, int normal, double *__restrict__ APDQ, double *__restrict__ AMDQ, const enumerator::AoSLexicographicEnumerator &DQEnumerator, double *__restrict__ maxEigenvalue, const enumerator::AoSLexicographicEnumerator &maxEigenvalueEnumerator) InlineMethod
 
template<class SolverType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions GPUCallableInlineMethod void computeRiemannSolution (const double *__restrict__ QIn, const enumerator::AoSLexicographicEnumerator &QInEnumerator, const double *__restrict__ flux, const enumerator::AoSLexicographicEnumerator &fluxEnumerator, const double *__restrict__ eigenvalues, const enumerator::AoSLexicographicEnumerator &eigenvaluesEnumerator, const ::tarch::la::Vector< Dimensions, double > &patchCentre, const ::tarch::la::Vector< Dimensions, double > &patchSize, int patchIndex, const ::tarch::la::Vector< Dimensions, int > &volumeIndex, double t, double dt, int normal, double *__restrict__ APDQ, double *__restrict__ AMDQ, const enumerator::AoSLexicographicEnumerator &DQEnumerator, double *__restrict__ maxEigenvalue, const enumerator::AoSLexicographicEnumerator &maxEigenvalueEnumerator) InlineMethod
 
template<class RiemannEnumeratorType , class QOutEnumeratorType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void updateSolutionWithRiemannSolution (const double *__restrict__ leftUpdatesX, const double *__restrict__ rightUpdatesX, const double *__restrict__ belowUpdatesY, const double *__restrict__ aboveUpdatesY, const double *__restrict__ backwardUpdatesZ, const double *__restrict__ forwardUpdatesZ, const RiemannEnumeratorType &riemannEnumerator, const tarch::la::Vector< Dimensions, double > &patchCentre, const tarch::la::Vector< Dimensions, double > &patchSize, int patchIndex, const tarch::la::Vector< Dimensions, int > &volumeIndex, int unknown, double dt, double *__restrict__ QOut, const QOutEnumeratorType &QOutEnumerator) InlineMethod
 
KeywordToAvoidDuplicateSymbolsForInlinedFunctions double reduceMaxEigenvalue (const double *__restrict__ maxEigenvalueX, const double *__restrict__ maxEigenvalueY, const double *__restrict__ maxEigenvalueZ, enumerator::AoSLexicographicEnumerator maxEigenvalueEnumerator, int patchIndex, const tarch::la::Vector< Dimensions, int > &volumeIndex) InlineMethod
 

Function Documentation

◆ computeEigenvalues() [1/4]

template<class SolverType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions GPUCallableInlineMethod void exahype2::fv::riemann::loopbodies::computeEigenvalues ( const double *__restrict__  QIn,
const enumerator::AoSLexicographicEnumerator &  QInEnumerator,
const ::tarch::la::Vector< Dimensions, double > &  patchCentre,
const ::tarch::la::Vector< Dimensions, double > &  patchSize,
int  patchIndex,
const ::tarch::la::Vector< Dimensions, int > &  volumeIndex,
double  t,
double  dt,
int  normal,
double *__restrict__  eigenvalues,
const enumerator::AoSLexicographicEnumerator &  eigenvaluesEnumerator 
)

◆ computeEigenvalues() [2/4]

template<int NumberOfUnknowns, int NumberOfAuxiliaryVariables>
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void exahype2::fv::riemann::loopbodies::computeEigenvalues ( const double *__restrict__  QIn,
const enumerator::AoSLexicographicEnumerator &  QInEnumerator,
const EigenvaluesFunctor &  eigenvaluesFunctor,
const ::tarch::la::Vector< Dimensions, double > &  patchCentre,
const ::tarch::la::Vector< Dimensions, double > &  patchSize,
int  patchIndex,
const ::tarch::la::Vector< Dimensions, int > &  volumeIndex,
double  t,
double  dt,
int  normal,
double *__restrict__  eigenvalues,
const enumerator::AoSLexicographicEnumerator &  eigenvaluesEnumerator 
)

◆ computeEigenvalues() [3/4]

template<class SolverType , class QInEnumeratorType , class EigenvaluesEnumeratorType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions GPUCallableInlineMethod void exahype2::fv::riemann::loopbodies::computeEigenvalues ( const double *__restrict__  QIn,
const QInEnumeratorType &  QInEnumerator,
const ::tarch::la::Vector< Dimensions, double > &  patchCentre,
const ::tarch::la::Vector< Dimensions, double > &  patchSize,
int  patchIndex,
const ::tarch::la::Vector< Dimensions, int > &  volumeIndex,
double  t,
double  dt,
int  normal,
double *__restrict__  eigenvalues,
const EigenvaluesEnumeratorType &  eigenvaluesEnumerator 
)

◆ computeEigenvalues() [4/4]

template<int NumberOfUnknowns, int NumberOfAuxiliaryVariables, class QInEnumeratorType , class EigenvaluesEnumeratorType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void exahype2::fv::riemann::loopbodies::computeEigenvalues ( const double *__restrict__  QIn,
const QInEnumeratorType &  QInEnumerator,
const EigenvaluesFunctor &  eigenvaluesFunctor,
const ::tarch::la::Vector< Dimensions, double > &  patchCentre,
const ::tarch::la::Vector< Dimensions, double > &  patchSize,
int  patchIndex,
const ::tarch::la::Vector< Dimensions, int > &  volumeIndex,
double  t,
double  dt,
int  normal,
double *__restrict__  eigenvalues,
const EigenvaluesEnumeratorType &  eigenvaluesEnumerator 
)

◆ computeFlux() [1/5]

template<class SolverType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions GPUCallableInlineMethod void exahype2::fv::riemann::loopbodies::computeFlux ( const double *__restrict__  QIn,
const enumerator::AoSLexicographicEnumerator &  QInEnumerator,
const ::tarch::la::Vector< Dimensions, double > &  patchCentre,
const ::tarch::la::Vector< Dimensions, double > &  patchSize,
int  patchIndex,
const ::tarch::la::Vector< Dimensions, int > &  volumeIndex,
double  t,
double  dt,
int  normal,
double *__restrict__  flux,
const enumerator::AoSLexicographicEnumerator &  fluxEnumerator 
)

◆ computeFlux() [2/5]

template<class SolverType , class FluxEnumeratorType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions GPUCallableInlineMethod void exahype2::fv::riemann::loopbodies::computeFlux ( const double *__restrict__  QIn,
const enumerator::AoSLexicographicEnumerator &  QInEnumerator,
const ::tarch::la::Vector< Dimensions, double > &  patchCentre,
const ::tarch::la::Vector< Dimensions, double > &  patchSize,
int  patchIndex,
const ::tarch::la::Vector< Dimensions, int > &  volumeIndex,
double  t,
double  dt,
int  normal,
double *__restrict__  flux,
const FluxEnumeratorType &  fluxEnumerator 
)

◆ computeFlux() [3/5]

template<int NumberOfUnknowns, int NumberOfAuxiliaryVariables>
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void exahype2::fv::riemann::loopbodies::computeFlux ( const double *__restrict__  QIn,
const enumerator::AoSLexicographicEnumerator &  QInEnumerator,
const FluxFunctor &  fluxFunctor,
const ::tarch::la::Vector< Dimensions, double > &  patchCentre,
const ::tarch::la::Vector< Dimensions, double > &  patchSize,
int  patchIndex,
const ::tarch::la::Vector< Dimensions, int > &  volumeIndex,
double  t,
double  dt,
int  normal,
double *__restrict__  flux,
const enumerator::AoSLexicographicEnumerator &  fluxEnumerator 
)

◆ computeFlux() [4/5]

template<class SolverType , class QInEnumeratorType , class FluxEnumeratorType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions GPUCallableInlineMethod void exahype2::fv::riemann::loopbodies::computeFlux ( const double *__restrict__  QIn,
const QInEnumeratorType &  QInEnumerator,
const ::tarch::la::Vector< Dimensions, double > &  patchCentre,
const ::tarch::la::Vector< Dimensions, double > &  patchSize,
int  patchIndex,
const ::tarch::la::Vector< Dimensions, int > &  volumeIndex,
double  t,
double  dt,
int  normal,
double *__restrict__  flux,
const FluxEnumeratorType &  fluxEnumerator 
)

◆ computeFlux() [5/5]

template<int NumberOfUnknowns, int NumberOfAuxiliaryVariables, class QInEnumeratorType , class FluxEnumeratorType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void exahype2::fv::riemann::loopbodies::computeFlux ( const double *__restrict__  QIn,
const QInEnumeratorType &  QInEnumerator,
const FluxFunctor &  fluxFunctor,
const ::tarch::la::Vector< Dimensions, double > &  patchCentre,
const ::tarch::la::Vector< Dimensions, double > &  patchSize,
int  patchIndex,
const ::tarch::la::Vector< Dimensions, int > &  volumeIndex,
double  t,
double  dt,
int  normal,
double *__restrict__  flux,
const FluxEnumeratorType &  fluxEnumerator 
)

◆ computeNonconservativeFlux() [1/2]

template<class SolverType , class QInEnumeratorType , class NCPFaceEnumeratorType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions GPUCallableInlineMethod void exahype2::fv::riemann::loopbodies::computeNonconservativeFlux ( const double *__restrict__  QIn,
const QInEnumeratorType &  QInEnumerator,
const ::tarch::la::Vector< Dimensions, double > &  patchCentre,
const ::tarch::la::Vector< Dimensions, double > &  patchSize,
int  patchIndex,
const ::tarch::la::Vector< Dimensions, int > &  volumeIndex,
double  t,
double  dt,
int  normal,
double *__restrict__  ncp,
const NCPFaceEnumeratorType &  ncpEnumerator 
)

◆ computeNonconservativeFlux() [2/2]

template<int NumberOfUnknowns, int NumberOfAuxiliaryVariables, class QInEnumeratorType , class NCPFaceEnumeratorType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void exahype2::fv::riemann::loopbodies::computeNonconservativeFlux ( const double *__restrict__  QIn,
const QInEnumeratorType &  QInEnumerator,
const NonconservativeProductFunctor &  ncpFunctor,
const ::tarch::la::Vector< Dimensions, double > &  patchCentre,
const ::tarch::la::Vector< Dimensions, double > &  patchSize,
int  patchIndex,
const ::tarch::la::Vector< Dimensions, int > &  volumeIndex,
double  t,
double  dt,
int  normal,
double *__restrict__  ncp,
const NCPFaceEnumeratorType &  ncpEnumerator 
)

◆ computeRiemannSolution() [1/2]

template<class SolverType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions GPUCallableInlineMethod void exahype2::fv::riemann::loopbodies::computeRiemannSolution ( const double *__restrict__  QIn,
const enumerator::AoSLexicographicEnumerator &  QInEnumerator,
const double *__restrict__  flux,
const enumerator::AoSLexicographicEnumerator &  fluxEnumerator,
const double *__restrict__  eigenvalues,
const enumerator::AoSLexicographicEnumerator &  eigenvaluesEnumerator,
const ::tarch::la::Vector< Dimensions, double > &  patchCentre,
const ::tarch::la::Vector< Dimensions, double > &  patchSize,
int  patchIndex,
const ::tarch::la::Vector< Dimensions, int > &  volumeIndex,
double  t,
double  dt,
int  normal,
double *__restrict__  APDQ,
double *__restrict__  AMDQ,
const enumerator::AoSLexicographicEnumerator &  DQEnumerator,
double *__restrict__  maxEigenvalue,
const enumerator::AoSLexicographicEnumerator &  maxEigenvalueEnumerator 
)

◆ computeRiemannSolution() [2/2]

template<int NumberOfUnknowns, int NumberOfAuxiliaryVariables>
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void exahype2::fv::riemann::loopbodies::computeRiemannSolution ( const double *__restrict__  QIn,
const enumerator::AoSLexicographicEnumerator &  QInEnumerator,
const RiemannFunctor &  riemannFunctor,
const double *__restrict__  flux,
const enumerator::AoSLexicographicEnumerator &  fluxEnumerator,
const double *__restrict__  eigenvalues,
const enumerator::AoSLexicographicEnumerator &  eigenvaluesEnumerator,
const ::tarch::la::Vector< Dimensions, double > &  patchCentre,
const ::tarch::la::Vector< Dimensions, double > &  patchSize,
int  patchIndex,
const ::tarch::la::Vector< Dimensions, int > &  volumeIndex,
double  t,
double  dt,
int  normal,
double *__restrict__  APDQ,
double *__restrict__  AMDQ,
const enumerator::AoSLexicographicEnumerator &  DQEnumerator,
double *__restrict__  maxEigenvalue,
const enumerator::AoSLexicographicEnumerator &  maxEigenvalueEnumerator 
)

◆ copySolution()

template<class QInEnumeratorType , class QOutEnumeratorType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions GPUCallableInlineMethod void exahype2::fv::riemann::loopbodies::copySolution ( const double *__restrict__  QIn,
const QInEnumeratorType &  QInEnumerator,
int  patchIndex,
const ::tarch::la::Vector< Dimensions, int > &  volumeIndex,
int  unknown,
double *__restrict__  QOut,
const QOutEnumeratorType &  QOutEnumerator 
)

Definition at line 17 of file LoopBodies.h.

References exahype2::volumeIndex().

Here is the call graph for this function:

◆ copySolutionAndAddSourceTerm() [1/4]

template<class SolverType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions GPUCallableInlineMethod void exahype2::fv::riemann::loopbodies::copySolutionAndAddSourceTerm ( const double *__restrict__  QIn,
const enumerator::AoSLexicographicEnumerator &  QInEnumerator,
const ::tarch::la::Vector< Dimensions, double > &  patchCentre,
const ::tarch::la::Vector< Dimensions, double > &  patchSize,
int  patchIndex,
const ::tarch::la::Vector< Dimensions, int > &  volumeIndex,
double  t,
double  dt,
double *__restrict__  QOut,
const enumerator::AoSLexicographicEnumerator &  QOutEnumerator 
)

◆ copySolutionAndAddSourceTerm() [2/4]

template<int NumberOfUnknowns, int NumberOfAuxiliaryVariables>
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void exahype2::fv::riemann::loopbodies::copySolutionAndAddSourceTerm ( const double *__restrict__  QIn,
const enumerator::AoSLexicographicEnumerator &  QInEnumerator,
const SourceFunctor &  sourceFunctor,
const ::tarch::la::Vector< Dimensions, double > &  patchCentre,
const ::tarch::la::Vector< Dimensions, double > &  patchSize,
int  patchIndex,
const ::tarch::la::Vector< Dimensions, int > &  volumeIndex,
double  t,
double  dt,
double *__restrict__  QOut,
const enumerator::AoSLexicographicEnumerator &  QOutEnumerator 
)

◆ copySolutionAndAddSourceTerm() [3/4]

template<class SolverType , class QInEnumeratorType , class QOutEnumeratorType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions GPUCallableInlineMethod void exahype2::fv::riemann::loopbodies::copySolutionAndAddSourceTerm ( const double *__restrict__  QIn,
const QInEnumeratorType &  QInEnumerator,
const ::tarch::la::Vector< Dimensions, double > &  patchCentre,
const ::tarch::la::Vector< Dimensions, double > &  patchSize,
int  patchIndex,
const ::tarch::la::Vector< Dimensions, int > &  volumeIndex,
double  t,
double  dt,
double *__restrict__  QOut,
const QOutEnumeratorType &  QOutEnumerator 
)

◆ copySolutionAndAddSourceTerm() [4/4]

template<int NumberOfUnknowns, int NumberOfAuxiliaryVariables, class QInEnumeratorType , class QOutEnumeratorType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void exahype2::fv::riemann::loopbodies::copySolutionAndAddSourceTerm ( const double *__restrict__  QIn,
const QInEnumeratorType &  QInEnumerator,
const SourceFunctor &  sourceFunctor,
const ::tarch::la::Vector< Dimensions, double > &  patchCentre,
const ::tarch::la::Vector< Dimensions, double > &  patchSize,
int  patchIndex,
const ::tarch::la::Vector< Dimensions, int > &  volumeIndex,
double  t,
double  dt,
double *__restrict__  QOut,
const QOutEnumeratorType &  QOutEnumerator 
)

◆ reduceMaxEigenvalue()

KeywordToAvoidDuplicateSymbolsForInlinedFunctions double exahype2::fv::riemann::loopbodies::reduceMaxEigenvalue ( const double *__restrict__  maxEigenvalueX,
const double *__restrict__  maxEigenvalueY,
const double *__restrict__  maxEigenvalueZ,
enumerator::AoSLexicographicEnumerator  maxEigenvalueEnumerator,
int  patchIndex,
const tarch::la::Vector< Dimensions, int > &  volumeIndex 
)

◆ updateSolutionWithNonconservativeFlux() [1/2]

template<class NCPFaceEnumeratorType , class QOutEnumeratorType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions GPUCallableInlineMethod void exahype2::fv::riemann::loopbodies::updateSolutionWithNonconservativeFlux ( const double *__restrict__  ncp,
const NCPFaceEnumeratorType &  ncpEnumerator,
const ::tarch::la::Vector< Dimensions, double > &  patchCentre,
const ::tarch::la::Vector< Dimensions, double > &  patchSize,
int  patchIndex,
const ::tarch::la::Vector< Dimensions, int > &  faceIndex,
int  unknown,
double  dt,
int  normal,
double *__restrict__  QOut,
const QOutEnumeratorType &  QOutEnumerator 
)

◆ updateSolutionWithNonconservativeFlux() [2/2]

template<class NCPFaceEnumeratorType , class QOutEnumeratorType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions GPUCallableInlineMethod void exahype2::fv::riemann::loopbodies::updateSolutionWithNonconservativeFlux ( const double *__restrict__  ncpX,
const double *__restrict__  ncpY,
const double *__restrict__  ncpZ,
const NCPFaceEnumeratorType &  ncpEnumerator,
const ::tarch::la::Vector< Dimensions, double > &  patchCentre,
const ::tarch::la::Vector< Dimensions, double > &  patchSize,
int  patchIndex,
const ::tarch::la::Vector< Dimensions, int > &  volumeIndex,
int  unknown,
double  dt,
double *__restrict__  QOut,
const QOutEnumeratorType &  QOutEnumerator 
)

◆ updateSolutionWithRiemannSolution()

template<class RiemannEnumeratorType , class QOutEnumeratorType >
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void exahype2::fv::riemann::loopbodies::updateSolutionWithRiemannSolution ( const double *__restrict__  leftUpdatesX,
const double *__restrict__  rightUpdatesX,
const double *__restrict__  belowUpdatesY,
const double *__restrict__  aboveUpdatesY,
const double *__restrict__  backwardUpdatesZ,
const double *__restrict__  forwardUpdatesZ,
const RiemannEnumeratorType &  riemannEnumerator,
const tarch::la::Vector< Dimensions, double > &  patchCentre,
const tarch::la::Vector< Dimensions, double > &  patchSize,
int  patchIndex,
const tarch::la::Vector< Dimensions, int > &  volumeIndex,
int  unknown,
double  dt,
double *__restrict__  QOut,
const QOutEnumeratorType &  QOutEnumerator 
)