Peano
Loading...
Searching...
No Matches
SWE.h
Go to the documentation of this file.
1// This file is part of the ExaHyPE2 project. For conditions of distribution and
2// use, please see the copyright notice at www.peano-framework.org
3#pragma once
4
5#include "Constants.h"
6#include "VariableShortcuts.h"
7
8#include "tarch/Assertions.h"
10#include "tarch/la/Vector.h"
11
13 #if defined(GPUOffloadingOMP)
14 #pragma omp declare target
15 #endif
16
19 const double* const __restrict__ Q,
22 const double t,
23 const double dt,
24 const int normal,
25 double* const __restrict__ L
27
30 const double* const __restrict__ Q,
33 const double t,
34 const double dt,
35 const int normal
37
40 const double* const __restrict__ Q,
43 const double t,
44 const double dt,
45 const int normal,
46 double* const __restrict__ maxEigenvalue
48 #if defined(GPUOffloadingOMP)
49 #pragma omp end declare target
50 #endif
51
52 #if defined(GPUOffloadingOMP)
53 #pragma omp declare target
54 #endif
56 void flux(
57 const double* const __restrict__ Q,
60 const double t,
61 const double dt,
62 const int normal,
63 double* const __restrict__ F
65
68 const double* const __restrict__ Q,
69 const double* const __restrict__ deltaQ,
72 const double t,
73 const double dt,
74 const int normal,
75 double* const __restrict__ BTimesDeltaQ
77
78 #if defined(GPUOffloadingOMP)
79 #pragma omp end declare target
80 #endif
81} // namespace applications::exahype2::swe
82
83#include "SWE.cpph"
#define GPUCallableInlineMethod
Definition accelerator.h:37
static GPUCallableInlineMethod double maxEigenvalue(const double *const __restrict__ Q, const tarch::la::Vector< Dimensions, double > &x, const tarch::la::Vector< Dimensions, double > &h, const double t, const double dt, const int normal) InlineMethod
static GPUCallableInlineMethod void nonconservativeProduct(const double *const __restrict__ Q, const double *const __restrict__ deltaQ, const tarch::la::Vector< Dimensions, double > &x, const tarch::la::Vector< Dimensions, double > &h, const double t, const double dt, const int normal, double *const __restrict__ BTimesDeltaQ) InlineMethod
static GPUCallableInlineMethod void eigenvalues(const double *const __restrict__ Q, const tarch::la::Vector< Dimensions, double > &x, const tarch::la::Vector< Dimensions, double > &h, const double t, const double dt, const int normal, double *const __restrict__ L) InlineMethod
Simple vector class.
Definition Vector.h:159
#define InlineMethod
Generic identifier for inlined functions.
Definition tarch.h:97