 template __device__
 void calc_inplace<256>(
     cuDoubleComplex mesh[513][513]
-  , double t2
   , double w
   );
 


template <int max_half_support>
__device__
void ucs_common(cuDoubleComplex mesh[max_half_support * 2 + 1][max_half_support * 2 + 1]){
  const int
      x = blockIdx.x * blockDim.x + threadIdx.x
    , y = blockIdx.y * blockDim.y + threadIdx.y
    ;
  double
      sc = double(max_half_support)
    , xs = double(x - max_half_support) / sc
    , ys = double(y - max_half_support) / sc
    ;

  mesh[x][y].x = xs * xs + ys * ys;

void calc<256>(
    cuDoubleComplex dst[513][513]
  , cuDoubleComplex src[513][513]
  , double w
  );

