Документ взят из кэша поисковой машины. Адрес оригинального документа : http://www.naic.edu/~tghosh/FOT/al7in1cut.pro
Дата изменения: Sun Jul 11 01:25:43 2004
Дата индексирования: Sun Apr 10 03:47:19 2016
Кодировка:

Поисковые слова: внешние планеты
;This procedure will read a scanlist that has calon, off, az cuts,
;then za cuts' scan numbers. Number of records in these are assumed to
;be 1, 1, 60, 60 respectively. It will aks for the input file name, and
;scanlist file name. Then plots onebeam+one pol, cuts, and ask if
;fittings needs to be done for these.
;
pro al7in1cut,desc,azoff,zaoff,az,za,tsys,kpjy,sefd,azbeam,zabeam,lside,rside
;
caltemp=12.0
azof=make_array(60,/double)
zaof=make_array(60,/double)
b0Apwr=make_array(60,/double)
b1Apwr=make_array(60,/double)
b2Apwr=make_array(60,/double)
b3Apwr=make_array(60,/double)
b4Apwr=make_array(60,/double)
b5Apwr=make_array(60,/double)
b6Apwr=make_array(60,/double)
;
b0Bpwr=make_array(60,/double)
b1Bpwr=make_array(60,/double)
b2Bpwr=make_array(60,/double)
b3Bpwr=make_array(60,/double)
b4Bpwr=make_array(60,/double)
b5Bpwr=make_array(60,/double)
b6Bpwr=make_array(60,/double)
;
azoff=make_array(100,/double)
zaoff=make_array(100,/double)
az=make_array(100,/double)
za=make_array(100,/double)
tsys=make_array(100,/double)
kpjy=make_array(100,/double)
sefd=make_array(100,/double)
azbeam=make_array(100,/double)
zabeam=make_array(100,/double)
lside=make_array(100,/double)
rside=make_array(100,/double)
scnum=make_array(100,/double)
;
dfile=' '
scnlist=' '
print,'Enter the data file name'
read,dfile
print,'Enter the filename with scanlist'
read,scnlist
readcol,scnlist,scnum,format='L'
print,'scnum = ', scnum
;
;is=wasopen(dfile,desc)
tnum=n_elements(scnum) ; total numbers of scans in the scnlist file
xnum=fix(tnum/4.0) ; number of x-cuts (calon,off,az,za sets)
;
print,xnum
for i=1,xnum do begin
ic=(i-1)*4
print,'ic = ', ic
is=waspos(desc,scnum[ic])
is=washdr(desc,h1,numhdr=16)
clonpwr=h1.tot_power
print,'clonpwr= ',clonpwr
ic=ic+1
is=waspos(desc,scnum[ic])
is=washdr(desc,h2,numhdr=16)
cloffpwr=h2.tot_power
ct2k=(clonpwr - cloffpwr)/caltemp
print,'ct2k =', ct2k
ic=ic+1
is=waspos(desc,scnum[ic])
is=washdr(desc,h3,numhdr=960)
for j=0,59 do begin k=j*16+0
b0Apwr[j]=h3[k].tot_power/ct2k[0]
k=j*16+1
b0Bpwr[j]=h3[k].tot_power/ct2k[1]
k=j*16+2
b1Apwr[j]=h3[k].tot_power/ct2k[2]
k=j*16+3
b1Bpwr[j]=h3[k].tot_power/ct2k[3]
k=j*16+4
b2Apwr[j]=h3[k].tot_power/ct2k[4]
k=j*16+5
b2Bpwr[j]=h3[k].tot_power/ct2k[5]
k=j*16+6
b3Apwr[j]=h3[k].tot_power/ct2k[6]
k=j*16+7
b3Bpwr[j]=h3[k].tot_power/ct2k[7]
k=j*16+8
b4Apwr[j]=h3[k].tot_power/ct2k[8]
k=j*16+9
b4Bpwr[j]=h3[k].tot_power/ct2k[9]
k=j*16+10
b5Apwr[j]=h3[k].tot_power/ct2k[10]
k=j*16+11
b5Bpwr[j]=h3[k].tot_power/ct2k[11]
k=j*16+12
b6Apwr[j]=h3[k].tot_power/ct2k[12]
k=j*16+13
b6Bpwr[j]=h3[k].tot_power/ct2k[13]
;
azof[j] = (h3[k].croff2+h3[k].rate_ra*h3[k].rate_dur)*60.0
endfor
ver,25.0,50.0
plot,azof,b0Apwr
oplot,azof,b0Bpwr
oplot,azof,b1Apwr
oplot,azof,b1Bpwr
;then do the gausfit
;
;ic=ic+1
;is=waspos(desc,scnum[ic])
;is=washdr(desc,h4,numhdr=240)
;for j=0,59 do begin k=j*4+0
; b0Apwr[j]=h3[k].tot_power/ct2k[0]
; k=j*4+1
; b0Bpwr[j]=h3[k].tot_power/ct2k[1]
; k=j*4+2
; b1Apwr[j]=h3[k].tot_power/ct2k[2]
; k=j*4+3
; b1Bpwr[j]=h3[j].tot_power/ct2k[3]
; zaof[j] = (h3[k].croff3+h3[k].rate_dec*h3[k].rate_dur)*60.0
;;endfor
;print,'enter any number to continue to make za plot'
;read,anyno
;ver,25.0,50.0
;plot,zaof,b0Apwr
;oplot,zaof,b0Bpwr
;;oplot,zaof,b1Apwr
;oplot,zaof,b1Bpwr
;endfor
;;
;and then do the guasfit
;
; bd1f=gaussfit(azoffmin,bd13,a,nterms=4)
; bd2f=gaussfit(azoffmin,bd23,b,nterms=4)
; bd3f=gaussfit(azoffmin,bd33,c,nterms=4)
; bd4f=gaussfit(azoffmin,bd43,d,nterms=4)
; ;
; azFWHM(0) = 2*sqrt(2*alog(2.0))*a(2) ; arcmin, alog = ln in IDL NOT antilog
; azFWHM(1) = 2*sqrt(2*alog(2.0))*b(2) ; arcmin, alog = ln in IDL NOT antilog
; azFWHM(2) = 2*sqrt(2*alog(2.0))*c(2) ; arcmin, alog = ln in IDL NOT antilog
; azFWHM(3) = 2*sqrt(2*alog(2.0))*d(2) ; arcmin, alog = ln in IDL NOT antilog
; ;
; azpnt_err(0) = a(1)*60. ; in arcsec
; azpnt_err(1) = b(1)*60. ; in arcsec
; azpnt_err(2) = c(1)*60. ; in arcsec
; azpnt_err(3) = d(1)*60. ; in arcsec
; ;
; ; a(0) = Src-deflection in ant-T, a(3) = Tsys estimate
; ;
;
;;
endfor
end