30 const double* __restrict__ Qinside,
31 double * __restrict__ Qoutside,
37 ) > boundaryCondition,
42 int numberOfGridCellsPerPatchPerAxis,
44 int unknownsPlusAuxiliaryVariables,
46 double* __restrict__ Q
106 std::function<
double(
107 const double* __restrict__ Q,
115 double* __restrict__ Q,
118 ) > farFieldSolution,
123 int numberOfGridCellsPerPatchPerAxis,
125 int numberOfUnknowns,
126 int numberOfAuxiliaryVariables,
129 double* __restrict__ Qold,
130 double* __restrict__ Qnew,
131 double CheckpointTimeStamp
141 std::function<
double(
142 const double* __restrict__ Q,
153 int numberOfGridCellsPerPatchPerAxis,
155 int numberOfUnknowns,
156 int numberOfAuxiliaryVariables,
159 double* __restrict__ Qold,
160 double* __restrict__ Qnew,
161 double CheckpointTimeStamp
void applyBoundaryConditions(std::function< void(const double *__restrict__ Qinside, double *__restrict__ Qoutside, const tarch::la::Vector< Dimensions, double > &faceCentre, const tarch::la::Vector< Dimensions, double > &volumeH, double t, double dt, int normal) > boundaryCondition, const tarch::la::Vector< Dimensions, double > &faceCentre, const tarch::la::Vector< Dimensions, double > &patchSize, double t, double dt, int numberOfGridCellsPerPatchPerAxis, int overlap, int unknownsPlusAuxiliaryVariables, int faceNumber, double *__restrict__ Q)
Apply (generic) boundary conditions.
void applySommerfeldConditions(std::function< double(const double *__restrict__ Q, const tarch::la::Vector< Dimensions, double > &faceCentre, const tarch::la::Vector< Dimensions, double > &gridCellH, double t, double dt, int normal) > maxEigenvalue, std::function< void(double *__restrict__ Q, const tarch::la::Vector< Dimensions, double > &faceCentre, const tarch::la::Vector< Dimensions, double > &gridCellH) > farFieldSolution, const tarch::la::Vector< Dimensions, double > &faceCentre, const tarch::la::Vector< Dimensions, double > &patchSize, double t, double dt, int numberOfGridCellsPerPatchPerAxis, int overlap, int numberOfUnknowns, int numberOfAuxiliaryVariables, int faceNumber, const tarch::la::Vector< Dimensions, double > &systemOrigin, double *__restrict__ Qold, double *__restrict__ Qnew, double CheckpointTimeStamp)