 
 
 // Computes the convolution kernel for a steerable filter in the y-direction.
-// See documentation for fillSfiltxKernel above.
-//
-static __global__ void fillSfiltyKernel(float2* gradient_filter_in_y, const float sigma, 
+// See documentation for ComputeSteerableFilterXCoefsKernel above.
+//
+static __global__ void ComputeSteerableFilterYCoefsKernel(float2* gradient_filter_in_y, const float sigma, 
                                         const int xpix, const int ypix) {
 	int xidx = threadIdx.x + blockDim.x * blockIdx.x;
 	int yidx = threadIdx.y + blockDim.y * blockIdx.y;

	}

	//reconstruct hologram and find mins
	reconstruct(SIM, index_of_max_focus_metric, min_intensity_cpu, index_of_min_intensity, hologram_cpu, z, nz, M, N, wavelength, pixel_size, 
		power_filter_order, power_filter_offset, sigma, maximum_intensity, intensity_at_best_focus_cpu, rintmode, record_intensity_at_best_focus);

	// If the hologram was originally passed in as a double or unsigned chars,
	// hologram_cpu would have been malloc'd. Free it now, before exiting.

	if (record_intensity_at_best_focus)
		cudaMalloc( (void**)&intensity_at_best_focus_gpu, sizeof(float) * M * N);

	mexPrintf("Computing reconstructions\n");

	//reconstruct the hologram at each depth in z, compare it to the previous
	//minimum intensity
	for (int slice_index = 0; slice_index < num_z_depths; ++slice_index){
		//copy the fft spectrum to a variable that's temporary for each plane
		cudaMemcpy(reconstruction_gpu, complex_hologram_gpu, sizeof(float2)*M*N, cudaMemcpyDeviceToDevice);

		//set the propagation parameters
		setPropagationParams( (float)(reconstruction_z_depths[slice_index]), (float)wavelength, (float)pixel_size, M, N, 
			&adudu, &cutoff2, &offsetPhaseExp, &fftscale, false);

		//apply the propagation kernel (full... could speed this up by ignoring cutoff)
