Research Article
A Triply Selective MIMO Channel Simulator Using GPUs
VEX_FUNCTION_D(cl_double2, convolution2, | (size_t, i) (cl_double2, x) | (cl_double2, y)(int, tRc)(int, nD) | (int, uS)(int, nT)(int, nR),(cmul) | (csum), | double2 sum = 0.0,0.0; | int tmp1 = inD; | int tmp2 = i/nD; | int ext = uS tRc; | int limt = tRc; | if(tmp1 < tRc) | limt = tmp1 + 1; | for(size_t k=0; k<nT; k++) | for(size_t j=0; j<limt; j++) | sum = csum(sum, cmul( | x[tmp1-j+knD], | y[tmp1+juS+ext(knR+tmp2)] | )); | return sum; | ); |
|