SWE
|
00001 00028 #ifndef __SWE_RUSANOVBLOCKCUDAKERNELS_HH 00029 #define __SWE_RUSANOVBLOCKCUDAKERNELS_HH 00030 00031 //****************************************************************** 00032 // kernels to implement Euler time-stepping 00033 //****************************************************************** 00034 00035 __global__ 00036 void kernelComputeFluxesF(float* hd, float* hud, float* hvd, 00037 float* Fhd, float* Fhud, float* Fhvd, 00038 int ny, float g, float llf, int istart); 00039 00040 __global__ 00041 void kernelComputeFluxesG(float* hd, float* hud, float* hvd, 00042 float* Ghd, float* Ghud, float* Ghvd, 00043 int ny, float g, float llf, int jstart); 00044 00045 __global__ 00046 void kernelComputeBathymetrySources(float* hd, float* bd, float* Bxd, float* Byd, 00047 int ny, float g); 00048 00049 __global__ 00050 void kernelEulerTimestep(float* hd, float* hud, float* hvd, 00051 float* Fhd, float* Fhud, float* Fhvd, 00052 float* Ghd, float* Ghud, float* Ghvd, 00053 float* Bxd, float* Byd, 00054 float* maxhd, float* maxvd, 00055 int nx, int ny, float dt, float dxi, float dyi); 00056 00057 00058 __global__ 00059 void kernelMaximum(float* maxhd, float* maxvd, int start, int size); 00060 00061 #endif 00062 00063 00064