BG_Flood  0.8
Documentation (Work-in-progress)
Kurganov.h
Go to the documentation of this file.
1 #ifndef KURGANOV_H
2 #define KURGANOV_H
3 
4 #include "General.h"
5 #include "Param.h"
6 #include "Arrays.h"
7 #include "Forcing.h"
8 #include "MemManagement.h"
9 #include "Util_CPU.h"
10 
11 template <class T> __global__ void updateKurgXGPU(Param XParam, BlockP<T> XBlock, EvolvingP<T> XEv, GradientsP<T> XGrad, FluxP<T> XFlux, T* dtmax, T* zb);
12 template <class T> __global__ void AddSlopeSourceXGPU(Param XParam, BlockP<T> XBlock, EvolvingP<T> XEv, GradientsP<T> XGrad, FluxP<T> XFlux, T* zb);
13 
14 template <class T> __host__ void updateKurgXCPU(Param XParam, BlockP<T> XBlock, EvolvingP<T> XEv, GradientsP<T> XGrad, FluxP<T> XFlux, T* dtmax, T* zb);
15 template <class T> __host__ void AddSlopeSourceXCPU(Param XParam, BlockP<T> XBlock, EvolvingP<T> XEv, GradientsP<T> XGrad, FluxP<T> XFlux, T* zb);
16 
17 
18 template <class T> __global__ void updateKurgYGPU(Param XParam, BlockP<T> XBlock, EvolvingP<T> XEv, GradientsP<T> XGrad, FluxP<T> XFlux, T* dtmax, T* zb);
19 template <class T> __global__ void AddSlopeSourceYGPU(Param XParam, BlockP<T> XBlock, EvolvingP<T> XEv, GradientsP<T> XGrad, FluxP<T> XFlux, T* zb);
20 
21 template <class T> __host__ void updateKurgYCPU(Param XParam, BlockP<T> XBlock, EvolvingP<T> XEv, GradientsP<T> XGrad, FluxP<T> XFlux, T* dtmax, T* zb);
22 template <class T> __host__ void AddSlopeSourceYCPU(Param XParam, BlockP<T> XBlock, EvolvingP<T> XEv, GradientsP<T> XGrad, FluxP<T> XFlux, T* zb);
23 
24 template <class T> __global__ void updateKurgXATMGPU(Param XParam, BlockP<T> XBlock, EvolvingP<T> XEv, GradientsP<T> XGrad, FluxP<T> XFlux, T* dtmax, T* zb, T* Patm, T* dPdx);
25 template <class T> __host__ void updateKurgXATMCPU(Param XParam, BlockP<T> XBlock, EvolvingP<T> XEv, GradientsP<T> XGrad, FluxP<T> XFlux, T* dtmax, T* zb, T* Patm, T* dPdx);
26 
27 template <class T> __global__ void updateKurgYATMGPU(Param XParam, BlockP<T> XBlock, EvolvingP<T> XEv, GradientsP<T> XGrad, FluxP<T> XFlux, T* dtmax, T* zb, T* Patm, T* dPdy);
28 template <class T> __host__ void updateKurgYATMCPU(Param XParam, BlockP<T> XBlock, EvolvingP<T> XEv, GradientsP<T> XGrad, FluxP<T> XFlux, T* dtmax, T* zb, T* Patm, T* dPdy);
29 
30 
31 template <class T> __host__ __device__ T KurgSolver(T g, T delta, T epsi, T CFL, T cm, T fm, T hp, T hm, T up, T um, T& fh, T& fu);
32 
33 #endif
__host__ void updateKurgXATMCPU(Param XParam, BlockP< T > XBlock, EvolvingP< T > XEv, GradientsP< T > XGrad, FluxP< T > XFlux, T *dtmax, T *zb, T *Patm, T *dPdx)
Definition: Kurganov.cu:587
__global__ void updateKurgXATMGPU(Param XParam, BlockP< T > XBlock, EvolvingP< T > XEv, GradientsP< T > XGrad, FluxP< T > XFlux, T *dtmax, T *zb, T *Patm, T *dPdx)
Definition: Kurganov.cu:160
__global__ void updateKurgXGPU(Param XParam, BlockP< T > XBlock, EvolvingP< T > XEv, GradientsP< T > XGrad, FluxP< T > XFlux, T *dtmax, T *zb)
Definition: Kurganov.cu:4
__global__ void AddSlopeSourceXGPU(Param XParam, BlockP< T > XBlock, EvolvingP< T > XEv, GradientsP< T > XGrad, FluxP< T > XFlux, T *zb)
Definition: Kurganov.cu:317
__host__ void AddSlopeSourceYCPU(Param XParam, BlockP< T > XBlock, EvolvingP< T > XEv, GradientsP< T > XGrad, FluxP< T > XFlux, T *zb)
Definition: Kurganov.cu:1547
__host__ void updateKurgYATMCPU(Param XParam, BlockP< T > XBlock, EvolvingP< T > XEv, GradientsP< T > XGrad, FluxP< T > XFlux, T *dtmax, T *zb, T *Patm, T *dPdy)
Definition: Kurganov.cu:1395
__global__ void updateKurgYATMGPU(Param XParam, BlockP< T > XBlock, EvolvingP< T > XEv, GradientsP< T > XGrad, FluxP< T > XFlux, T *dtmax, T *zb, T *Patm, T *dPdy)
Definition: Kurganov.cu:1008
__host__ void updateKurgXCPU(Param XParam, BlockP< T > XBlock, EvolvingP< T > XEv, GradientsP< T > XGrad, FluxP< T > XFlux, T *dtmax, T *zb)
Definition: Kurganov.cu:418
__host__ __device__ T KurgSolver(T g, T delta, T epsi, T CFL, T cm, T fm, T hp, T hm, T up, T um, T &fh, T &fu)
Definition: Kurganov.cu:1656
__host__ void updateKurgYCPU(Param XParam, BlockP< T > XBlock, EvolvingP< T > XEv, GradientsP< T > XGrad, FluxP< T > XFlux, T *dtmax, T *zb)
Definition: Kurganov.cu:1252
__host__ void AddSlopeSourceXCPU(Param XParam, BlockP< T > XBlock, EvolvingP< T > XEv, GradientsP< T > XGrad, FluxP< T > XFlux, T *zb)
Definition: Kurganov.cu:757
__global__ void updateKurgYGPU(Param XParam, BlockP< T > XBlock, EvolvingP< T > XEv, GradientsP< T > XGrad, FluxP< T > XFlux, T *dtmax, T *zb)
Definition: Kurganov.cu:872
__global__ void AddSlopeSourceYGPU(Param XParam, BlockP< T > XBlock, EvolvingP< T > XEv, GradientsP< T > XGrad, FluxP< T > XFlux, T *zb)
Definition: Kurganov.cu:1152
Definition: Param.h:10
Definition: Arrays.h:86
Definition: Arrays.h:29
Definition: Arrays.h:46
Definition: Arrays.h:11