 #include <thrust/device_vector.h>
 #include <thrust/copy.h>
 #include <string>
+#include <set>
 #include "math_constants.h"
 
 using boost::multi_array;


  thrust::device_vector<cufftComplex> d_complexSpace(FY * FX);
  thrust::device_vector<float> dPattern(FY * FX);
  cufftHandle plan;  
  cufftPlan2d(&plan, FX, FY, CUFFT_C2C);

  idealsphere spherer(dPhotons, dLambdas);
  char* taskid = getenv("SLURM_ARRAY_TASK_ID");



    float factor = (/*0.01f + 0.99f **/ expf(- gr / (2 * sigmag * sigmag)));
//    factor *= sinc(qx / sigma * 0.5) * sinc(qy / sigma * 0.5);

    //float factor = 1.0f;

