BG_Flood  0.8
Documentation (Work-in-progress)
Gradients.h File Reference
#include "General.h"
#include "Param.h"
#include "Arrays.h"
#include "Forcing.h"
#include "Util_CPU.h"
#include "Setup_GPU.h"
#include "MemManagement.h"
#include "Halo.h"
Include dependency graph for Gradients.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

template<class T >
void gradientCPU (Param XParam, BlockP< T >XBlock, EvolvingP< T > XEv, GradientsP< T > XGrad, T *zb)
 
template<class T >
void gradientC (Param XParam, BlockP< T > XBlock, T *a, T *dadx, T *dady)
 
template<class T >
void gradientHalo (Param XParam, BlockP< T >XBlock, T *a, T *dadx, T *dady)
 
template<class T >
void gradientGPU (Param XParam, BlockP< T >XBlock, EvolvingP< T > XEv, GradientsP< T > XGrad, T *zb)
 
template<class T >
void gradientGPUnew (Param XParam, BlockP< T >XBlock, EvolvingP< T > XEv, GradientsP< T > XGrad, T *zb)
 
template<class T >
__global__ void gradient (int halowidth, int *active, int *level, T theta, T dx, T *a, T *dadx, T *dady)
 
template<class T >
__global__ void gradientSM (int halowidth, int *active, int *level, T theta, T dx, T *a, T *dadx, T *dady)
 
template<class T >
__global__ void gradientSMB (int halowidth, int *active, int *level, T theta, T dx, T *a, T *dadx, T *dady)
 
template<class T >
__global__ void gradientSMC (int halowidth, int *active, int *level, T theta, T dx, T *a, T *dadx, T *dady)
 
template<class T >
__global__ void gradientedgeX (int halowidth, int *active, int *level, T theta, T dx, T *a, T *dadx)
 
template<class T >
__global__ void gradientedgeY (int halowidth, int *active, int *level, T theta, T dx, T *a, T *dady)
 
template<class T >
void gradientHaloGPU (Param XParam, BlockP< T >XBlock, T *a, T *dadx, T *dady)
 
template<class T >
__global__ void WetsloperesetXGPU (Param XParam, BlockP< T >XBlock, EvolvingP< T > XEv, GradientsP< T > XGrad, T *zb)
 
template<class T >
__global__ void WetsloperesetYGPU (Param XParam, BlockP< T >XBlock, EvolvingP< T > XEv, GradientsP< T > XGrad, T *zb)
 
template<class T >
__global__ void WetsloperesetHaloLeftGPU (Param XParam, BlockP< T >XBlock, EvolvingP< T > XEv, GradientsP< T > XGrad, T *zb)
 
template<class T >
__global__ void WetsloperesetHaloRightGPU (Param XParam, BlockP< T >XBlock, EvolvingP< T > XEv, GradientsP< T > XGrad, T *zb)
 
template<class T >
__global__ void WetsloperesetHaloBotGPU (Param XParam, BlockP< T >XBlock, EvolvingP< T > XEv, GradientsP< T > XGrad, T *zb)
 
template<class T >
__global__ void WetsloperesetHaloTopGPU (Param XParam, BlockP< T >XBlock, EvolvingP< T > XEv, GradientsP< T > XGrad, T *zb)
 
template<class T >
__global__ void gradientHaloLeftGPU (Param XParam, BlockP< T >XBlock, T *a, T *dadx, T *dady)
 
template<class T >
__global__ void gradientHaloRightGPU (Param XParam, BlockP< T >XBlock, T *a, T *dadx, T *dady)
 
template<class T >
__global__ void gradientHaloTopGPU (Param XParam, BlockP< T >XBlock, T *a, T *dadx, T *dady)
 
template<class T >
__global__ void gradientHaloBotGPU (Param XParam, BlockP< T >XBlock, T *a, T *dadx, T *dady)
 

Function Documentation

◆ gradient()

template<class T >
__global__ void gradient ( int  halowidth,
int *  active,
int *  level,
theta,
dx,
T *  a,
T *  dadx,
T *  dady 
)

Device kernel for calculating grdients for an evolving poarameter using the minmod limiter

◆ gradientC()

template<class T >
void gradientC ( Param  XParam,
BlockP< T >  XBlock,
T *  a,
T *  dadx,
T *  dady 
)

◆ gradientCPU()

template<class T >
void gradientCPU ( Param  XParam,
BlockP< T >  XBlock,
EvolvingP< T >  XEv,
GradientsP< T >  XGrad,
T *  zb 
)

◆ gradientedgeX()

template<class T >
__global__ void gradientedgeX ( int  halowidth,
int *  active,
int *  level,
theta,
dx,
T *  a,
T *  dadx 
)

◆ gradientedgeY()

template<class T >
__global__ void gradientedgeY ( int  halowidth,
int *  active,
int *  level,
theta,
dx,
T *  a,
T *  dady 
)

◆ gradientGPU()

template<class T >
void gradientGPU ( Param  XParam,
BlockP< T >  XBlock,
EvolvingP< T >  XEv,
GradientsP< T >  XGrad,
T *  zb 
)

Wrapping function to calculate gradien of evolving variables on GPU This function is the entry point to the gradient functions on the GPU

◆ gradientGPUnew()

template<class T >
void gradientGPUnew ( Param  XParam,
BlockP< T >  XBlock,
EvolvingP< T >  XEv,
GradientsP< T >  XGrad,
T *  zb 
)

◆ gradientHalo()

template<class T >
void gradientHalo ( Param  XParam,
BlockP< T >  XBlock,
T *  a,
T *  dadx,
T *  dady 
)

◆ gradientHaloBotGPU()

template<class T >
__global__ void gradientHaloBotGPU ( Param  XParam,
BlockP< T >  XBlock,
T *  a,
T *  dadx,
T *  dady 
)

◆ gradientHaloGPU()

template<class T >
void gradientHaloGPU ( Param  XParam,
BlockP< T >  XBlock,
T *  a,
T *  dadx,
T *  dady 
)

◆ gradientHaloLeftGPU()

template<class T >
__global__ void gradientHaloLeftGPU ( Param  XParam,
BlockP< T >  XBlock,
T *  a,
T *  dadx,
T *  dady 
)

◆ gradientHaloRightGPU()

template<class T >
__global__ void gradientHaloRightGPU ( Param  XParam,
BlockP< T >  XBlock,
T *  a,
T *  dadx,
T *  dady 
)

◆ gradientHaloTopGPU()

template<class T >
__global__ void gradientHaloTopGPU ( Param  XParam,
BlockP< T >  XBlock,
T *  a,
T *  dadx,
T *  dady 
)

◆ gradientSM()

template<class T >
__global__ void gradientSM ( int  halowidth,
int *  active,
int *  level,
theta,
dx,
T *  a,
T *  dadx,
T *  dady 
)

Depreciated shared memory version of Device kernel for calculating gradients Much slower than above

◆ gradientSMB()

template<class T >
__global__ void gradientSMB ( int  halowidth,
int *  active,
int *  level,
theta,
dx,
T *  a,
T *  dadx,
T *  dady 
)

◆ gradientSMC()

template<class T >
__global__ void gradientSMC ( int  halowidth,
int *  active,
int *  level,
theta,
dx,
T *  a,
T *  dadx,
T *  dady 
)

◆ WetsloperesetHaloBotGPU()

template<class T >
__global__ void WetsloperesetHaloBotGPU ( Param  XParam,
BlockP< T >  XBlock,
EvolvingP< T >  XEv,
GradientsP< T >  XGrad,
T *  zb 
)

◆ WetsloperesetHaloLeftGPU()

template<class T >
__global__ void WetsloperesetHaloLeftGPU ( Param  XParam,
BlockP< T >  XBlock,
EvolvingP< T >  XEv,
GradientsP< T >  XGrad,
T *  zb 
)

◆ WetsloperesetHaloRightGPU()

template<class T >
__global__ void WetsloperesetHaloRightGPU ( Param  XParam,
BlockP< T >  XBlock,
EvolvingP< T >  XEv,
GradientsP< T >  XGrad,
T *  zb 
)

◆ WetsloperesetHaloTopGPU()

template<class T >
__global__ void WetsloperesetHaloTopGPU ( Param  XParam,
BlockP< T >  XBlock,
EvolvingP< T >  XEv,
GradientsP< T >  XGrad,
T *  zb 
)

◆ WetsloperesetXGPU()

template<class T >
__global__ void WetsloperesetXGPU ( Param  XParam,
BlockP< T >  XBlock,
EvolvingP< T >  XEv,
GradientsP< T >  XGrad,
T *  zb 
)

◆ WetsloperesetYGPU()

template<class T >
__global__ void WetsloperesetYGPU ( Param  XParam,
BlockP< T >  XBlock,
EvolvingP< T >  XEv,
GradientsP< T >  XGrad,
T *  zb 
)