0001 function dout=aveHealpix(d,nside)
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013 h = gov.fnal.eag.healpix.PixTools;
0014 num = h.Nside2Npix(nside);
0015 disp(['aveHealpix:: Number of pixels ',num2str(num)])
0016 onsource=d.index.source.fast & ~d.index.noise.fast & ~d.index.skydip.fast;
0017 skydip = d.index.skydip.fast & ~d.index.source.fast & ~d.index.noise.fast;
0018 noise = d.index.noise.fast & ~d.index.skydip.fast & ~d.index.source.fast;
0019
0020
0021 disp('aveHealpix:: Attempting to use calibrated data')
0022 data=[d.antenna0.receiver.pix(onsource) d.antenna0.receiver.dataTcorr(onsource,:)];
0023 sortdat=sortrows(data,1);
0024
0025 i=1;
0026 pixn=[];
0027 pixs=[];
0028
0029 ind2=[0];
0030 for i=1:length(sortdat)
0031 pixn = sortdat(i);
0032 pixn1 = sortdat(i+1);
0033 if(pixn1 ~=pixn)
0034 ind2=[ind2 i];
0035 pixs = [pixs sortdat(i,1)];
0036 end
0037 end
0038 pixdata=zeros(length(ind2)-1,19);
0039 for i=1:length(ind2)-1
0040 pixdata(i,1)= pixs(i);
0041 for j=2:7
0042 pixdata(i,j) = mean(sortdat(ind2(i)+1:ind2(i+1),j));
0043 end
0044 for j=8:13
0045 pixdata(i,j) = std(sortdat(ind2(i)+1:ind2(i+1),j-6));
0046 end
0047 for j=14:19
0048 pixdata(i,j) = length(sortdat(ind2(i)+1:ind2(i+1),j-12));
0049 end
0050
0051
0052 end
0053 outPixData=zeros(num,19);
0054 for i=1:length(pixdata)
0055 pixel=pixdata(i,1);
0056 outPixData(pixel,:)=pixdata(i,:);
0057 end
0058
0059 disp('aveHealpix:: Storing to the output data structure in d.antenna0.healpixDat;')
0060 dout=d;
0061 dout.antenna0.healpixDat=outPixData;
0062
0063
0064
0065
0066 end
0067