sphDensity.m 549 B

123456789101112131415
  1. function [sample_pnt,sampleDen] = sphDensity(sphpoint,sample_pntNum,kernel_sig)
  2. if ~exist('kernel_sig','var'), kernel_sig = [];end
  3. if isempty(kernel_sig),kernel_sig = .01;end
  4. gaussFunc = @(x,sig) 1./(sig*sqrt(2*pi)).*exp(-x.^2./(2*sig^2));
  5. if ~isa(sample_pntNum,'floQ')
  6. sample_pnt = CPS_sampling('pnt_num',sample_pntNum);
  7. sample_pnt = floQ(sample_pnt);
  8. else
  9. sample_pnt = sample_pntNum;
  10. end
  11. pnt_dist = real(asin(norm(sample_pnt+conj(sphpoint))./2)).*2;
  12. weightMat = gaussFunc(pnt_dist,kernel_sig);
  13. sampleDen = mean(weightMat,2);
  14. end