0001 function apply_highpass(starttime,stoptime,filename)
0002
0003
0004 MAXSCAN = 4.35;
0005 SIGRFI = 15;
0006
0007
0008 d = read_arcSouth_nojunk(starttime, stoptime, {'array.frame.utc double', ...
0009 'array.frame.features double', 'array.frame.received', ...
0010 'antenna0.servo.fast_az_pos double', 'antenna0.servo.fast_el_pos double', ...
0011 'antenna0.roach1.utc double', 'antenna0.roach2.utc double', ...
0012 'antenna0.roach1.LLfreq double', 'antenna0.roach2.LLfreq double', ...
0013 'antenna0.roach1.RRfreq double', 'antenna0.roach2.RRfreq double', ...
0014 'antenna0.roach1.Qfreq double', 'antenna0.roach2.Qfreq double', ...
0015 'antenna0.roach1.Ufreq double', 'antenna0.roach2.Ufreq double'});
0016
0017
0018 Intensity = (d.antenna0.roach1.LLfreq + d.antenna0.roach2.LLfreq + d.antenna0.roach1.RRfreq + d.antenna0.roach2.RRfreq)./4;
0019
0020
0021
0022 Q1 = d.antenna0.roach1.Qfreq;
0023 Q2 = d.antenna0.roach2.Qfreq;
0024 U1 = d.antenna0.roach1.Ufreq;
0025 U2 = d.antenna0.roach2.Ufreq;
0026
0027 Q = (Q1 + Q2)./2;
0028 U = (U1 + U2)./2;
0029
0030 Polarization = sqrt(Q.*Q + U.*U);
0031
0032
0033 d.antenna0.receiver.utc = d.antenna0.roach1.utc;
0034 d.antenna0.receiver.data = [Intensity, Polarization];
0035
0036 d = both_filter(d, MAXSCAN, MAXSCAN+0.2, 'cos', 0);
0037 keyboard;
0038
0039
0040 rmsI = sqrt(var(d.antenna0.receiver.hi(:,1)));
0041 rmsP = sqrt(var(d.antenna0.receiver.hi(:,2)));
0042
0043 sigI = abs(d.antenna0.receiver.hi(:,1))./rmsI;
0044 sigP = abs(d.antenna0.receiver.hi(:,2))./rmsP;
0045
0046 rfiI = sigI > SIGRFI;
0047
0048
0049 [si ei] = findStartStop(rfiI, 20);
0050
0051 glitches = (ei - si) < 5;
0052 fastrfi = ~glitches;
0053
0054
0055 binsize = 100;
0056 nbins = lower(length(Intensity)/binsize);
0057
0058
0059
0060 for m = 1:nbins - 1
0061 rmsval(m) = sqrt(var(Intensity((m-1)*100+1:m*100)));
0062 end
0063 brightRmsLimit = 4*median(rmsval)
0064 rfiRms = rmsval > brightRmsLimit;
0065 [ssi eei] = findStartStop(rfiRms, 1);
0066
0067 glitches = (ei - si) < 5;
0068 fastrfi = ~glitches;
0069
0070 ff = find(fastrfi);
0071
0072 for m=1:length(ff)
0073 rfistart = d.antenna0.receiver.utc(si(ff(m))) - 1/60/60/24;
0074 rfistop = d.antenna0.receiver.utc(ei(ff(m))) + 1/60/60/24;
0075
0076
0077
0078
0079
0080 ff = find(fastrfi);
0081
0082 for m=1:length(ff)
0083 rfistart = d.antenna0.receiver.utc(si(ff(m))) - 1/60/60/24;
0084 rfistop = d.antenna0.receiver.utc(ei(ff(m))) + 1/60/60/24;
0085
0086
0087
0088
0089
0090 end