0001 function analyzeFullSkyAzElMapSouth(start,finish,scanLength,dirname,plotflag)
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 opengl software
0018
0019
0020 dateStart = datenum(start,'dd-mmm-yyyy:HH:MM:SS')
0021 dateEnd = datenum(finish,'dd-mmm-yyyy:HH:MM:SS')
0022
0023 if(dateEnd<dateStart)
0024 disp('analyzeFullSkyAzElMapSouth:: End date before start date- Correct this before running')
0025 return
0026 end
0027 fprefix = sprintf('AllSkyMap_%s_%s_',start,finish);
0028
0029 currentTimeStart = dateStart;
0030 a=figure('visible','off')
0031 b=figure('visible','off')
0032 set(a,'renderer','zbuffer')
0033 set(b,'renderer','zbuffer')
0034
0035 dEl = 0.75;
0036 dAz = 0.75;
0037 azC = 0:dAz:(360-dAz);
0038 elC = 0:dEl:85;
0039 Cmap = zeros(length(elC),length(azC),8);
0040 Nmap = zeros(length(elC),length(azC),1);
0041
0042 while(currentTimeStart <dateEnd)
0043
0044 currentTimeEnd = currentTimeStart+scanLength/24;
0045 if (currentTimeEnd >= dateEnd)
0046 currentTimeEnd = dateEnd
0047 end
0048
0049
0050 currentTimeStartString = datestr(currentTimeStart,'dd-mmm-yyyy:HH:MM:SS')
0051 currentTimeEndString = datestr(currentTimeEnd,'dd-mmm-yyyy:HH:MM:SS')
0052
0053
0054 try
0055 d = read_arcSouth(currentTimeStartString, currentTimeEndString);
0056
0057
0058
0059
0060
0061 catch
0062 disp('analyzeFullSkyAzElMapSouth:: Read_arc failed')
0063 currentTimeStart = currentTimeStart+scanLength/24;
0064 continue
0065 end
0066 d=rfiRemovalSouth(d);
0067
0068 I = (1:length(d.antenna0.servo.apparent));
0069 az = d.antenna0.servo.apparent(I,1);
0070 el = d.antenna0.servo.apparent(I,2);
0071
0072
0073
0074
0075
0076
0077
0078 dataIL1 = mean(d.antenna0.roach1.LL-d.antenna0.roach1.load2,2);
0079 dataIL2 = mean(d.antenna0.roach2.LL-d.antenna0.roach2.load2,2);
0080 dataIR1 = mean(d.antenna0.roach1.RR -d.antenna0.roach1.load1,2);
0081 dataIR2 = mean(d.antenna0.roach2.RR - d.antenna0.roach2.load1,2);
0082
0083
0084
0085
0086 dataQ1 = mean(d.antenna0.roach1.Q,2);
0087 dataU1 = mean(d.antenna0.roach1.U,2);
0088 dataQ2 = mean(d.antenna0.roach2.Q,2);
0089 dataU2 = mean(d.antenna0.roach2.U,2);
0090 features=d.array.frame.features;
0091
0092 [year,month,day] = mjd2date(tstr2mjd(start));
0093 if ~strcmp(dirname(end),'/')
0094 dirname = [dirname '/'];
0095 end
0096
0097
0098
0099
0100
0101
0102 Nsamples = size(az,1);
0103 disp('analyzeFullSkyAzElMapSouth:: Starting map making...')
0104 for k=1:Nsamples
0105 if mod(k,Nsamples/100)==0
0106
0107 end
0108
0109 Iaz = abs(azC-az(k))<dAz/2;
0110 Iel = abs(elC-el(k))<dEl/2;
0111 Cmap(Iel,Iaz,1) = Cmap(Iel,Iaz,1)+dataIL1(k,1);
0112 Cmap(Iel,Iaz,2) = Cmap(Iel,Iaz,2)+dataQ1(k,1);
0113 Cmap(Iel,Iaz,3) = Cmap(Iel,Iaz,3)+dataU1(k,1);
0114 Cmap(Iel,Iaz,4) = Cmap(Iel,Iaz,4)+dataIR1(k,1);
0115 Cmap(Iel,Iaz,5) = Cmap(Iel,Iaz,5)+dataIL2(k,1);
0116 Cmap(Iel,Iaz,6) = Cmap(Iel,Iaz,6)+dataQ2(k,1);
0117 Cmap(Iel,Iaz,7) = Cmap(Iel,Iaz,7)+dataU2(k,1);
0118 Cmap(Iel,Iaz,8) = Cmap(Iel,Iaz,8)+dataIR2(k,1);
0119
0120
0121
0122
0123 Nmap(Iel,Iaz,1) = Nmap(Iel,Iaz,1)+1;
0124 end
0125 disp('analyzeFullSkyAzElMapSouth:: Done map making!')
0126
0127
0128
0129
0130 currentTimeStart = currentTimeStart+scanLength/24;
0131 end
0132 Cmap = Cmap./repmat(Nmap(:,:,1),[1,1,8]);
0133
0134
0135 climI = [0.5e4 2e4];
0136 climP = [-0.05 0.05];
0137 climV = [-0.05 0.05];
0138
0139 CILL1 = Cmap(:,:,1);
0140 CIRR1 = Cmap(:,:,4);
0141 CV1 = (CILL1-CIRR1)/2;
0142 CQ1 = Cmap(:,:,2);
0143 CU1 = Cmap(:,:,3);
0144 CP1 = sqrt(CQ1.^2+CU1.^2);
0145 CI1 = (CILL1+CIRR1)/2;
0146
0147 CILL2 = Cmap(:,:,5);
0148 CIRR2 = Cmap(:,:,8);
0149 CV2 = (CILL2-CIRR2)/2;
0150 CQ2 = Cmap(:,:,6);
0151 CU2 = Cmap(:,:,7);
0152 CP2 = sqrt(CQ2.^2+CU2.^2);
0153 CI2 = (CILL2+CIRR2)/2;
0154
0155
0156 save([dirname fprefix 'data.mat'],'fprefix','CILL1','CIRR1','CV1','CQ1','CU1','CP1','CI1','CILL2','CIRR2','CV2','CQ2','CU2','CP2','CI2','azC','elC','climI','climP','climV')
0157 if plotflag
0158
0159
0160
0161
0162
0163
0164
0165
0166
0167
0168
0169
0170
0171
0172
0173
0174
0175
0176
0177
0178
0179
0180
0181
0182 figure('Position',[1 1000 360*3 90*3])
0183
0184 imagesc(azC(:),elC(:),(CI1-repmat(nanmedian(CI1,2),1,size(CI1,2))),[0 1000])
0185 set(gca,'YDir','normal')
0186 colorbar
0187 xlabel('Azimuth')
0188 ylabel('Elevation')
0189 title('I=(I1+I2)/2')
0190 set(gcf,'PaperPositionMode','auto')
0191 eval(sprintf('print -depsc2 -r200 %s',[dirname fprefix 'I.eps']))
0192
0193 figure('Position',[1 1000 360*3 90*3])
0194
0195 imagesc(azC(:),elC(:),(CI2-repmat(nanmedian(CI2,2),1,size(CI2,2))),[0 1000])
0196 set(gca,'YDir','normal')
0197 colorbar
0198 xlabel('Azimuth')
0199 ylabel('Elevation')
0200 title('I=(I1+I2)/2')
0201 set(gcf,'PaperPositionMode','auto')
0202 eval(sprintf('print -depsc2 -r200 %s',[dirname fprefix 'I2.eps']))
0203
0204
0205
0206
0207
0208
0209
0210
0211
0212
0213
0214
0215
0216
0217
0218
0219
0220
0221
0222
0223
0224
0225
0226
0227
0228
0229
0230
0231
0232
0233
0234 figure('Position',[1 1000 360*3 90*3])
0235 imagesc(azC(:),elC(:),(CP1-repmat(nanmedian(CP1,2),1,size(CP1,2))))
0236 set(gca,'YDir','normal')
0237 colorbar
0238 xlabel('Azimuth')
0239 ylabel('Elevation')
0240 title('P = sqrt(Q^2+U^2)')
0241 set(gcf,'PaperPositionMode','auto')
0242 eval(sprintf('print -depsc2 -r200 %s',[dirname fprefix 'P.eps']))
0243 end
0244
0245
0246 end