22 real *dxD = thrust::raw_pointer_cast(&(domInfo->dxD[0])),
23 *dyD = thrust::raw_pointer_cast(&(domInfo->dyD[0]));
25 real *bc2_r = thrust::raw_pointer_cast(&(bc2[0])),
26 *xminus = thrust::raw_pointer_cast(&(bc[
XMINUS][0])),
27 *xplus = thrust::raw_pointer_cast(&(bc[
XPLUS][0])),
28 *yminus = thrust::raw_pointer_cast(&(bc[
YMINUS][0])),
29 *yplus = thrust::raw_pointer_cast(&(bc[
YPLUS][0])),
30 *uB = thrust::raw_pointer_cast(&(B.uB[0])),
31 *vB = thrust::raw_pointer_cast(&(B.vB[0]));
36 cusp::blas::fill(bc2, 0.0);
38 const int blockSize = 256;
39 dim3 dimGrid(
int((nx+ny-0.5)/blockSize) + 1, 1);
40 dim3 dimBlock(blockSize, 1);
41 kernels::fillBC2_v <<<dimGrid, dimBlock>>> (bc2_r, yminus, yplus, dxD, nx, ny);
42 kernels::fillBC2_u <<<dimGrid, dimBlock>>> (bc2_r, xminus, xplus, dyD, nx, ny);
44 dim3 dimGridB(
int((B.totalPoints-0.5)/blockSize) + 1, 1);
45 kernels::fillBC2_uvB <<<dimGridB, dimBlock>>> (bc2_r, uB, vB, B.totalPoints, nx, ny);
double real
Is a float or a double depending on the machine precision.
virtual void generateBC2()
Declaration of the kernels to generate elements of the right hand-side of the Poisson solver...