def selectfft(): reslist2 = list() selection2 = lstbox2.curselection() plt.figure() if datatype=='demod': plt.title('%s ASD from %s %s' %(mm,dd,yyyy)) if datatype=='raw': plt.title('ASD from %s %s %s' %(mm,dd,yyyy)) for i in selection2: entry2 = lstbox2.get(i) reslist2.append(entry2) for val in reslist2: chan=nametochan(val[:6]) if datatype=='demod': component=val[-1] if ((component != 'T') and (component != 'Q') and (component != 'U')): component='T' freq,psd=cu.nps(d[chan][component],samprate,minfreq=minfreq) if datatype=='raw': freq,psd=cu.nps(d[chan].flatten(),samprate*256,minfreq=minfreq) plt.plot(freq,np.sqrt(psd)*1e9,label=val) plt.xlabel('Frequency [Hz]') plt.ylabel(r'ASD [$\frac{nV}{\sqrt{Hz}}$]') plt.legend() plt.show(block=False)
#base rotation rate rotrate = 25 samprate = rotrate * 256 bbgain = {} bbgain['ch0'] = 100. bbgain['ch2'] = 100. bbgain['ch4'] = 100. tamb = 295 #arbitrary, but hopefully low impact on the gain tsky = 40 epsilons = {} calsecco = {} calfoam = {} for ch in chans: zsky1 = cu.nps(cal[ch].flatten()[ssky1], samprate, minfreq=1) zsky3 = cu.nps(cal[ch].flatten()[ssky3], samprate, minfreq=1) zfoam1 = cu.nps(cal[ch].flatten()[sfoam1], samprate, minfreq=1) zfoam2 = cu.nps(cal[ch].flatten()[sfoam2], samprate, minfreq=1) zecco = cu.nps(cal[ch].flatten()[secco], samprate, minfreq=1) epsilon = np.sqrt( (zfoam1[1][zfoam1[0] == 50] + zfoam2[1][zfoam2[0] == 50])) / (np.sqrt( zsky1[1][zsky1[0] == 50]) + np.sqrt(zsky3[1][zsky3[0] == 50])) epsilons[ch] = epsilon[0] for ch in ['ch1', 'ch3', 'ch5']: calsecco[ch] = (tamb - tsky) / (np.mean(cal[ch].flatten()[secco]) / np.mean(cal[ch].flatten()[ssky2])) calsecco['ch0'] = calsecco['ch1'] / bbgain['ch0'] calsecco['ch2'] = calsecco['ch3'] / bbgain['ch2'] calsecco['ch4'] = calsecco['ch5'] / bbgain['ch4']
#base rotation rate rotrate=25 samprate=rotrate*256 bbgain={} bbgain['ch0']=100. bbgain['ch2']=100. bbgain['ch4']=100. tamb=295 #arbitrary, but hopefully low impact on the gain tsky=40 epsilons={} calsecco={} calfoam={} for ch in chans: zsky1=cu.nps(cal[ch].flatten()[ssky1],samprate,minfreq=1) zsky3=cu.nps(cal[ch].flatten()[ssky3],samprate,minfreq=1) zfoam1=cu.nps(cal[ch].flatten()[sfoam1],samprate,minfreq=1) zfoam2=cu.nps(cal[ch].flatten()[sfoam2],samprate,minfreq=1) zecco=cu.nps(cal[ch].flatten()[secco],samprate,minfreq=1) epsilon=np.sqrt((zfoam1[1][zfoam1[0]==50] + zfoam2[1][zfoam2[0]==50]))/(np.sqrt(zsky1[1][zsky1[0]==50]) + np.sqrt(zsky3[1][zsky3[0]==50])) epsilons[ch]=epsilon[0] plt.figure(figsize=(12,6)) plt.plot(zsky1[0],np.sqrt(zsky1[1]),label='Sky1') plt.plot(zsky3[0],np.sqrt(zsky3[1]),label='Sky3') plt.plot(zfoam1[0],np.sqrt(zfoam1[1]),label='Foam1') plt.plot(zfoam2[0],np.sqrt(zfoam2[1]),label='Foam2') plt.plot(zecco[0],np.sqrt(zecco[1]),label='eccosorb') plt.title('Sky tests Nov , 2012 (thRu pit door). 10 GHz COFE detector '+ch+' emissivity='+np.str(epsilon[0])) plt.xlabel('Frequency, Hz') plt.ylabel('Amplitude Spectral Density, V/sqrt(Hz)')
#base rotation rate rotrate=25 samprate=rotrate*256 bbgain={} bbgain['ch0']=100. bbgain['ch2']=100. bbgain['ch4']=100. tamb=295 #arbitrary, but hopefully low impact on the gain tsky=40 epsilons={} calsecco={} calfoam={} for ch in chans: zsky1=cu.nps(cal[ch].flatten()[ssky1],samprate,minfreq=1) zsky3=cu.nps(cal[ch].flatten()[ssky3],samprate,minfreq=1) zfoam1=cu.nps(cal[ch].flatten()[sfoam1],samprate,minfreq=1) zfoam2=cu.nps(cal[ch].flatten()[sfoam2],samprate,minfreq=1) zecco=cu.nps(cal[ch].flatten()[secco],samprate,minfreq=1) epsilon=np.sqrt((zfoam1[1][zfoam1[0]==50] + zfoam2[1][zfoam2[0]==50]))/(np.sqrt(zsky1[1][zsky1[0]==50]) + np.sqrt(zsky3[1][zsky3[0]==50])) epsilons[ch]=epsilon[0] for ch in ['ch1','ch3','ch5']: calsecco[ch]=(tamb-tsky)/(np.mean(cal[ch].flatten()[secco])/np.mean(cal[ch].flatten()[ssky2])) calsecco['ch0']=calsecco['ch1']/bbgain['ch0'] calsecco['ch2']=calsecco['ch3']/bbgain['ch2'] calsecco['ch4']=calsecco['ch5']/bbgain['ch4'] #now get the other sky data get_ipython().magic(u"cd 'c:/cofe/cofe_ground_fall_2012/data/20121113'")
#base rotation rate rotrate = 25 samprate = rotrate * 256 bbgain = {} bbgain['ch0'] = 100. bbgain['ch2'] = 100. bbgain['ch4'] = 100. tamb = 295 #arbitrary, but hopefully low impact on the gain tsky = 40 epsilons = {} calsecco = {} calfoam = {} for ch in chans: zsky1 = cu.nps(cal[ch].flatten()[ssky1], samprate, minfreq=1) zsky3 = cu.nps(cal[ch].flatten()[ssky3], samprate, minfreq=1) zfoam1 = cu.nps(cal[ch].flatten()[sfoam1], samprate, minfreq=1) zfoam2 = cu.nps(cal[ch].flatten()[sfoam2], samprate, minfreq=1) zecco = cu.nps(cal[ch].flatten()[secco], samprate, minfreq=1) epsilon = np.sqrt( (zfoam1[1][zfoam1[0] == 50] + zfoam2[1][zfoam2[0] == 50])) / (np.sqrt( zsky1[1][zsky1[0] == 50]) + np.sqrt(zsky3[1][zsky3[0] == 50])) epsilons[ch] = epsilon[0] plt.figure(figsize=(12, 6)) plt.plot(zsky1[0], np.sqrt(zsky1[1]), label='Sky1') plt.plot(zsky3[0], np.sqrt(zsky3[1]), label='Sky3') plt.plot(zfoam1[0], np.sqrt(zfoam1[1]), label='Foam1') plt.plot(zfoam2[0], np.sqrt(zfoam2[1]), label='Foam2') plt.plot(zecco[0], np.sqrt(zecco[1]), label='eccosorb') plt.title('Sky tests Nov , 2012 (thRu pit door). 10 GHz COFE detector ' +