BG_Flood  0.8
Documentation (Work-in-progress)
ConserveElevation.h
Go to the documentation of this file.
1 
2 #ifndef CONSERVEELEVATION_H
3 #define CONSERVEELEVATION_H
4 
5 #include "General.h"
6 #include "Param.h"
7 #include "Write_txtlog.h"
8 #include "Util_CPU.h"
9 #include "Arrays.h"
10 #include "MemManagement.h"
11 
12 template <class T> void conserveElevation(Param XParam, BlockP<T> XBlock, EvolvingP<T> XEv, T* zb);
13 
14 template <class T> void conserveElevationGPU(Param XParam, BlockP<T> XBlock, EvolvingP<T> XEv, T* zb);
15 
16 
17 //template <class T> void conserveElevationGradHalo(Param XParam, BlockP<T> XBlock, T* h, T* dhdx, T* dhdy);
18 template <class T> void conserveElevationGradHalo(Param XParam, BlockP<T> XBlock, T* h, T* zs, T* zb, T* dhdx, T* dzsdx, T* dhdy, T* dzsdy);
19 //template <class T> void conserveElevationGradHaloGPU(Param XParam, BlockP<T> XBlock, T* h, T* dhdx, T* dhdy);
20 template <class T> void conserveElevationGradHaloGPU(Param XParam, BlockP<T> XBlock, T* h, T* zs, T* zb, T* dhdx, T* dzsdx, T* dhdy, T* dzsdy);
21 
22 template <class T> void conserveElevationLeft(Param XParam, int ib, int ibLB, int ibLT, BlockP<T> XBlock, EvolvingP<T> XEv, T* zb);
23 template <class T> __global__ void conserveElevationLeft(Param XParam, BlockP<T> XBlock, EvolvingP<T> XEv, T* zb);
24 
25 template <class T> void conserveElevationRight(Param XParam, int ib, int ibRB, int ibRT, BlockP<T> XBlock, EvolvingP<T> XEv, T* zb);
26 template <class T> __global__ void conserveElevationRight(Param XParam, BlockP<T> XBlock, EvolvingP<T> XEv, T* zb);
27 
28 template <class T> void conserveElevationTop(Param XParam, int ib, int ibTL, int ibTR, BlockP<T> XBlock, EvolvingP<T> XEv, T* zb);
29 template <class T> __global__ void conserveElevationTop(Param XParam, BlockP<T> XBlock, EvolvingP<T> XEv, T* zb);
30 
31 template <class T> void conserveElevationBot(Param XParam, int ib, int ibBL, int ibBR, BlockP<T> XBlock, EvolvingP<T> XEv, T* zb);
32 template <class T> __global__ void conserveElevationBot(Param XParam, BlockP<T> XBlock, EvolvingP<T> XEv, T* zb);
33 
34 template <class T> void conserveElevationGHLeft(Param XParam, int ib, int ibLB, int ibLT, BlockP<T> XBlock, T* h, T* zs, T* zb, T* dhdx, T* dzsdx);
35 template <class T> __global__ void conserveElevationGHLeft(Param XParam, BlockP<T> XBlock, T* h, T* zs, T* zb, T* dhdx, T* dzsdx);
36 
37 template <class T> void conserveElevationGHRight(Param XParam, int ib, int ibRB, int ibRT, BlockP<T> XBlock, T* h, T* zs, T* zb, T* dhdx, T* dzsdx);
38 template <class T> __global__ void conserveElevationGHRight(Param XParam, BlockP<T> XBlock, T* h, T* zs, T* zb, T* dhdx, T* dzsdx);
39 
40 template <class T> void conserveElevationGHTop(Param XParam, int ib, int ibTL, int ibTR, BlockP<T> XBlock, T* h, T* zs, T* zb, T* dhdx, T* dzsdx);
41 template <class T> __global__ void conserveElevationGHTop(Param XParam, BlockP<T> XBlock, T* h, T* zs, T* zb, T* dhdx, T* dzsdx);
42 
43 template <class T> void conserveElevationGHBot(Param XParam, int ib, int ibBL, int ibBR, BlockP<T> XBlock, T* h, T* zs, T* zb, T* dhdx, T* dzsdx);
44 template <class T> __global__ void conserveElevationGHBot(Param XParam, BlockP<T> XBlock, T* h, T* zs, T* zb, T* dhdx, T* dzsdx);
45 
46 template <class T> void WetDryProlongationGPU(Param XParam, BlockP<T> XBlock, EvolvingP<T> XEv, T* zb);
47 template <class T> void WetDryProlongation(Param XParam, BlockP<T> XBlock, EvolvingP<T> XEv, T* zb);
48 
49 template <class T> void WetDryRestrictionGPU(Param XParam, BlockP<T> XBlock, EvolvingP<T> XEv, T* zb);
50 template <class T> void WetDryRestriction(Param XParam, BlockP<T> XBlock, EvolvingP<T> XEv, T* zb);
51 
52 template <class T> __host__ __device__ void wetdryrestriction(int halowidth, int blkmemwidth, T eps, int ib, int ibn, int ihalo, int jhalo, int i, int j, T* h, T* zs, T* zb);
53 template <class T> __host__ __device__ void ProlongationElevation(int halowidth, int blkmemwidth, T eps, int ib, int ibn, int ihalo, int jhalo, int ip, int jp, T* h, T* zs, T* zb);
54 
55 // End of global definition
56 #endif
void conserveElevationBot(Param XParam, int ib, int ibBL, int ibBR, BlockP< T > XBlock, EvolvingP< T > XEv, T *zb)
Definition: ConserveElevation.cu:1918
void conserveElevationGradHaloGPU(Param XParam, BlockP< T > XBlock, T *h, T *zs, T *zb, T *dhdx, T *dzsdx, T *dhdy, T *dzsdy)
Definition: ConserveElevation.cu:621
void conserveElevation(Param XParam, BlockP< T > XBlock, EvolvingP< T > XEv, T *zb)
Definition: ConserveElevation.cu:4
void conserveElevationGHBot(Param XParam, int ib, int ibBL, int ibBR, BlockP< T > XBlock, T *h, T *zs, T *zb, T *dhdx, T *dzsdx)
Definition: ConserveElevation.cu:1191
__host__ __device__ void wetdryrestriction(int halowidth, int blkmemwidth, T eps, int ib, int ibn, int ihalo, int jhalo, int i, int j, T *h, T *zs, T *zb)
Definition: ConserveElevation.cu:531
__host__ __device__ void ProlongationElevation(int halowidth, int blkmemwidth, T eps, int ib, int ibn, int ihalo, int jhalo, int ip, int jp, T *h, T *zs, T *zb)
Definition: ConserveElevation.cu:366
void conserveElevationGHLeft(Param XParam, int ib, int ibLB, int ibLT, BlockP< T > XBlock, T *h, T *zs, T *zb, T *dhdx, T *dzsdx)
Definition: ConserveElevation.cu:786
void conserveElevationGHRight(Param XParam, int ib, int ibRB, int ibRT, BlockP< T > XBlock, T *h, T *zs, T *zb, T *dhdx, T *dzsdx)
Definition: ConserveElevation.cu:925
void conserveElevationTop(Param XParam, int ib, int ibTL, int ibTR, BlockP< T > XBlock, EvolvingP< T > XEv, T *zb)
Definition: ConserveElevation.cu:1723
void conserveElevationGPU(Param XParam, BlockP< T > XBlock, EvolvingP< T > XEv, T *zb)
Definition: ConserveElevation.cu:27
void WetDryProlongationGPU(Param XParam, BlockP< T > XBlock, EvolvingP< T > XEv, T *zb)
Definition: ConserveElevation.cu:324
void WetDryProlongation(Param XParam, BlockP< T > XBlock, EvolvingP< T > XEv, T *zb)
Definition: ConserveElevation.cu:47
void conserveElevationRight(Param XParam, int ib, int ibRB, int ibRT, BlockP< T > XBlock, EvolvingP< T > XEv, T *zb)
Definition: ConserveElevation.cu:1529
void WetDryRestrictionGPU(Param XParam, BlockP< T > XBlock, EvolvingP< T > XEv, T *zb)
Definition: ConserveElevation.cu:345
void conserveElevationGradHalo(Param XParam, BlockP< T > XBlock, T *h, T *zs, T *zb, T *dhdx, T *dzsdx, T *dhdy, T *dzsdy)
Definition: ConserveElevation.cu:606
void conserveElevationGHTop(Param XParam, int ib, int ibTL, int ibTR, BlockP< T > XBlock, T *h, T *zs, T *zb, T *dhdx, T *dzsdx)
Definition: ConserveElevation.cu:1060
void conserveElevationLeft(Param XParam, int ib, int ibLB, int ibLT, BlockP< T > XBlock, EvolvingP< T > XEv, T *zb)
Definition: ConserveElevation.cu:1323
void WetDryRestriction(Param XParam, BlockP< T > XBlock, EvolvingP< T > XEv, T *zb)
Definition: ConserveElevation.cu:174
Definition: Param.h:10
Definition: Arrays.h:86
Definition: Arrays.h:29