- for(int in=kNN_old; in<kNN; in++){
- for(int idim=0; idim<fNDim; idim++) fTmpPoint[idim] = fRefPoints[idim][index[in]];
- fFitter->AddPoint(fTmpPoint, TMath::Log(fRefValues[index[in]]), 1.);
+ for(int in=istart; in<npoints; in++){
+ //printf("%d index[%2d] x(", in, index[in]);
+ d0 = 0.;
+ for(int idim=0; idim<fNDim; idim++){
+ fTmpPoint[idim] = fRefPoints[idim][index[in]];
+ //printf("%6.4f ", fTmpPoint[idim]);
+ d0 += TMath::Abs(fTmpPoint[idim] - point[idim]);
+ }
+ d0 /= dist;
+ w0 = (1. - d0*d0*d0);
+ w = w0*w0*w0;
+
+ //printf(") f = %f [%f] d0 = %6.4f w = %6.4f \n", fRefValues[index[in]], TMath::Log(fRefValues[index[in]]), d0, w);
+ fFitter->AddPoint(fTmpPoint, TMath::Log(fRefValues[index[in]]), uncertainty/w);