     for (int i=0;i<nalpha;i++){
         
         geo.alpha=alphas[i];
+        if(geo.alpha==0.0)
+            geo.alpha=1.1920929e-07;
         //precomute distances for faster execution
         //Precompute per angle constant stuff for speed
         computeDeltas_Siddon_parallel(geo,geo.alpha,i, &uvOrigin, &deltaU, &deltaV, &source);


    for (int ii=0;ii<Np;ii++){
        if (ax==aminc){
            sum+=(ax-ac)*tex3D(tex, i+0.5, j+0.5, k+0.5);
            i=i+iu;
            ac=ax;
            ax+=axu;
        }else if(ay==aminc){
            sum+=(ay-ac)*tex3D(tex, i+0.5, j+0.5, k+0.5);
            j=j+ju;
            ac=ay;
            ay+=ayu;

        aminc=min(ay,ax);
    }
    detector[idx]=maxlength*sum;
//     detector[idx]=(iu);
}


