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()

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 )

Definition at line 1103 of file LoopBodies.cpph.

References exahype2::volumeIndex().

Here is the call graph for this function:

◆ 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 )