14 __host__ __device__
int Inside(
int halowidth,
int blkmemwidth,
int isright,
int istop,
int ix,
int iy,
int ib);
15 __host__ __device__
bool isbnd(
int isright,
int istop,
int blkwidth,
int ix,
int iy);
32 template <
class T> __global__
void bndFluxGPUSide(
Param XParam,
bndsegmentside side,
BlockP<T> XBlock,
DynForcingP<float> Atmp,
DynForcingP<float> Zsmap,
bool uniform,
int type,
float zsbnd, T taper, T* zs, T* h, T* un, T* ut, T* Fh, T* Fq, T* Ss);
35 template <
class T> __host__
void bndCPU(
Param XParam,
bndparam side,
BlockP<T> XBlock, std::vector<double> zsbndvec, std::vector<double> uubndvec, std::vector<double> vvbndvec,
DynForcingP<float> Atmp, T* zs, T* h, T* un, T* ut);
38 __device__ __host__
void findmaskside(
int side,
bool &isleftbot,
bool& islefttop,
bool& istopleft,
bool& istopright,
bool& isrighttop,
bool& isrightbot,
bool& isbotright,
bool& isbotleft);
39 template <
class T> __device__ __host__
void halowall(T zsinside, T& un, T& ut, T& zs, T& h,T&zb);
40 template <
class T> __device__ __host__
void noslipbnd(T zsinside,T hinside,T &un, T &ut,T &zs, T &h);
41 template <
class T> __device__ __host__
void noslipbndQ(T& F, T& G, T& S);
42 template <
class T> __device__ __host__
void ABS1D(T g, T sign, T zsbnd, T zsinside, T hinside, T utbnd,T unbnd, T& un, T& ut, T& zs, T& h);
43 template <
class T> __device__ __host__
void ABS1DQ(T g, T sign, T factime, T facrel, T zs, T zsbnd, T zsinside, T h, T& qmean, T& q, T& G, T& S);
44 template <
class T> __device__ __host__
void Dirichlet1D(T g, T sign, T zsbnd, T zsinside, T hinside, T uninside, T& un, T& ut, T& zs, T& h);
45 template <
class T> __device__ __host__
void Dirichlet1Q(T g, T sign, T zsbnd, T zsinside, T hinside, T uninside, T& q);
__host__ __device__ bool isbnd(int isright, int istop, int blkwidth, int ix, int iy)
Definition: Boundary.cu:1880
void Flowbnd(Param XParam, Loop< T > &XLoop, BlockP< T > XBlock, bndparam side, DynForcingP< float > Atmp, EvolvingP< T > XEv)
Definition: Boundary.cu:4
__device__ __host__ void noslipbndQ(T &F, T &G, T &S)
Definition: Boundary.cu:1622
__global__ void maskbndGPUFluxright(Param XParam, BlockP< T > XBlock, FluxP< T > Flux)
Definition: Boundary.cu:1413
__host__ void bndCPU(Param XParam, bndparam side, BlockP< T > XBlock, std::vector< double > zsbndvec, std::vector< double > uubndvec, std::vector< double > vvbndvec, DynForcingP< float > Atmp, T *zs, T *h, T *un, T *ut)
Definition: Boundary.cu:774
void FlowbndFlux(Param XParam, double totaltime, BlockP< T > XBlock, bndsegment bndseg, DynForcingP< float > Atmp, EvolvingP< T > XEv, FluxP< T > XFlux)
Definition: Boundary.cu:81
__device__ __host__ void ABS1D(T g, T sign, T zsbnd, T zsinside, T hinside, T utbnd, T unbnd, T &un, T &ut, T &zs, T &h)
Definition: Boundary.cu:1632
__host__ __device__ int Inside(int halowidth, int blkmemwidth, int isright, int istop, int ix, int iy, int ib)
Definition: Boundary.cu:1843
__device__ __host__ void Dirichlet1D(T g, T sign, T zsbnd, T zsinside, T hinside, T uninside, T &un, T &ut, T &zs, T &h)
Definition: Boundary.cu:1679
__device__ __host__ void ABS1DQ(T g, T sign, T factime, T facrel, T zs, T zsbnd, T zsinside, T h, T &qmean, T &q, T &G, T &S)
Definition: Boundary.cu:1643
__device__ __host__ void Dirichlet1Q(T g, T sign, T zsbnd, T zsinside, T hinside, T uninside, T &q)
Definition: Boundary.cu:1691
__global__ void maskbndGPUbot(Param XParam, BlockP< T > XBlock, EvolvingP< T > Xev, T *zb)
Definition: Boundary.cu:1462
__global__ void maskbndGPUFluxleft(Param XParam, BlockP< T > XBlock, EvolvingP< T > Xev, FluxP< T > Flux)
Definition: Boundary.cu:1164
__global__ void bndGPU(Param XParam, bndparam side, BlockP< T > XBlock, DynForcingP< float > Atmp, float itime, T *zs, T *h, T *un, T *ut)
Definition: Boundary.cu:648
__host__ void maskbnd(Param XParam, BlockP< T > XBlock, EvolvingP< T > Xev, T *zb)
Definition: Boundary.cu:926
void FlowbndFluxML(Param XParam, double totaltime, BlockP< T > XBlock, bndsegment bndseg, DynForcingP< float > Atmp, EvolvingP< T > XEv, FluxMLP< T > XFlux)
Definition: Boundary.cu:172
__device__ __host__ void noslipbnd(T zsinside, T hinside, T &un, T &ut, T &zs, T &h)
Definition: Boundary.cu:1611
__global__ void maskbndGPUright(Param XParam, BlockP< T > XBlock, EvolvingP< T > Xev, T *zb)
Definition: Boundary.cu:1349
__device__ __host__ void halowall(T zsinside, T &un, T &ut, T &zs, T &h, T &zb)
Definition: Boundary.cu:1598
__global__ void maskbndGPUleft(Param XParam, BlockP< T > XBlock, EvolvingP< T > Xev, T *zb)
Definition: Boundary.cu:1095
__global__ void maskbndGPUFluxtop(Param XParam, BlockP< T > XBlock, FluxP< T > Flux)
Definition: Boundary.cu:1301
__global__ void bndFluxGPUSide(Param XParam, bndsegmentside side, BlockP< T > XBlock, DynForcingP< float > Atmp, DynForcingP< float > Zsmap, bool uniform, int type, float zsbnd, T taper, T *zs, T *h, T *un, T *ut, T *Fh, T *Fq, T *Ss)
Definition: Boundary.cu:322
__device__ __host__ void findmaskside(int side, bool &isleftbot, bool &islefttop, bool &istopleft, bool &istopright, bool &isrighttop, bool &isrightbot, bool &isbotright, bool &isbotleft)
Definition: Boundary.cu:1573
__global__ void maskbndGPUFluxbot(Param XParam, BlockP< T > XBlock, FluxP< T > Flux)
Definition: Boundary.cu:1526
__global__ void maskbndGPUtop(Param XParam, BlockP< T > XBlock, EvolvingP< T > Xev, T *zb)
Definition: Boundary.cu:1239
Definition: Forcing.h:120
Definition: Forcing.h:106