-
Andi Walther authoredAndi Walther authored
cws_stats__constants.pro 5.68 KiB
pro cws_stats::constants
grp = orderedhash()
prd = orderedhash()
reg = orderedhash()
; group list
grpList =['CMS','EUM','OCA','MPF','FUB','DLR','MFR','RMB','AWG','UKM','GSF','LAR','COX','OCA2','KNM','TPS','SUI','CLV','LARN','MFRN']
has_ctp = [1 ,1 ,1 ,1 ,0 ,1 ,0 ,0 ,1 ,1 ,0 ,1 ,0 ,0, 0 ,1 ,1 ,1 ,1, 0]
has_ctt = [ 1 , 1 ,0 ,1 ,0 ,1 ,1 ,0 ,0 ,1 ,1 ,1 ,0 ,0, 0 ,1 ,0 ,1 ,1, 1]
;has_ctp = [0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,1 ,0 ,0 ,1 ,0 ,0, 0 ,0 ,0 ,1 ,1]
has_cmb = [1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1]
has_cph = [1, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0]
has_cod = [1,0,1,0,0,0,0,1,1,1,1,1,0,0,0,1,0,1,1,1]
version = [4,2,4,2,1,2,2,2,2,4,2,2,3,3,4,4,4,4,4,4]
;'CMS','EUM','OCA','MPF','FUB'
colList = ['Green', 'Red', 'Blue', 'Cyan', 'Gray',$
; 'DLR','MFR','RMB','AWG','UKM'
'Magenta', 'Dark Green', 'Cornflower', 'Brown', 'FIREBRICK' ,$
; GSF','LAR','COX','OCA2','KNM'
'Dark Orchid','Tan', 'LightSeaGreen', 'Violet', 'Khaki',$
; 'TPS','SUI','CLV','LARN'
'GOLDENROD', 'Hot Pink', 'DARK_MAGENTA', 'Olive Drab', 'Dark Gray' $
, 'Black','Green','Tan']
grpLong = ['Climate Monitoring - SAF', $
'Eumetsat M?', $
'Eumetsat OCA', $
'Eumetsat MPEF', $
'Free University Berlin', $
'German Aerospace Center, APICS', $
'Meteo France', $
'Belgian Institute for Space Aeronomy', $
'Algorithm Working Group, University Madison/Wisconsin', $
'UK Met-Office', $
'NASA, Goddard Space Flight Center', $
'NASA, Langley Research Center', $
'German Aerospace Center, COCS', $
'Eumetsat OCA second cloud layer' $
, 'KNMI' $
, 'Tropos Leipzig' $
, 'Meteo Suisse' $
, 'CLAVR-x' $
,'NASA, Langley Research Center' $
, 'Meteo France ICWG2 version '] ; groups
for i=0,n_elements(grpList) - 1 do grp[grpList[i],'longname'] = grpLong[i]
for i=0,n_elements(grpList) - 1 do grp[grpList[i],'color'] = colList[i]
for i=0,n_elements(grpList) - 1 do grp[grpList[i],'has_ctp'] = has_ctp[i]
; regions
for cut =0,21 do begin
@LIST_REGIONS
reg[cut,'xrange'] = xrange
reg[cut,'yrange'] = yrange
@cws_stats_params
reg[cut,'minCorr'] = minCorr[cut]
; more to follow
endfor
; products
prdList = ['rgb','ovw',$
'cmb', 'ctp', 'cth', 'ctt', 'cod', 'ref', 'cph', 'lwp', $
'cmb2', 'ctp2', 'cth2', 'ctt2', 'cod2', 'ref2', 'cph2', 'lwp2',$ ; second cloud layer (at the moment only OCA)
'ucmb', 'uctp', 'ucth', 'uctt', 'ucod', 'uref', 'ucph', 'ulwp', $ ; uncertainty
'ucmb2','uctp2','ucth2','uctt2','ucod2','uref2','ucph2','ulwp2'] ; uncertainty, second cloud layer (at the moment only OCA)
;,'iwp','cty','cfr' $ ; next params exclusively DWD products!
; ,'hbl','hhl','hml','hto','hts','rgb','lst','ovw']
; product listm, long string
prdListLong = ['False Color Image', 'Atrain Overpass'$
, 'Cloud Mask','Cloud Top Pressure','Cloud Top Height','Cloud Top Temperature' $
,'Cloud Optical Depth','Effective Radius','Cloud Phase','Cloud Water Path' $
,'Cloud Mask (2)','Cloud Top Pressure (2)','Cloud Top Height (2)','Cloud Top Temperature (2)' $
,'Cloud Optical Depth (2)','Effective Radius (2)','Cloud Phase (2)','Cloud Water Path (2)' $
,'Uncertainty of Cloud Mask','Uncertainty of Cloud Top Pressure'$
,'Uncertainty of Cloud Top Height','Uncertainty of Cloud Top Temperature' $
,'Uncertainty of Cloud Optical Depth','Uncertainty of Effective Radius'$
,'Uncertainty of Cloud Phase','Uncertainty of Cloud Water Path' $
,'Uncertainty of Cloud Mask (2)','Uncertainty of Cloud Top Pressure (2)'$
,'Uncertainty of Cloud Top Height (2)','Uncertainty of Cloud Top Temperature (2)' $
,'Uncertainty of Cloud Optical Depth (2)','Uncertainty of Effective Radius (2)'$
,'Uncertainty of Cloud Phase (2)','Uncertainty of Cloud Water Path (2)']
for ii = 0,n_elements(prdList) -1 do begin
prd[prdList[ii],'longname'] = prdListLong[ii]
endfor
for ii = 0,n_elements(version) -1 do prd['ctp','groups',grplist[ii],'version'] = version[ii]
for ii = 0,n_elements(has_cod) -1 do prd['cod','groups',grplist[ii]] = has_cod[ii]
for ii = 0,n_elements(has_ctp) -1 do begin
prd['ctp','groups',grplist[ii]] = has_ctp[ii]
prd['cth','groups',grplist[ii]] = has_ctp[ii]
prd['ctt','groups',grplist[ii]] = has_ctt[ii]
prd['cph','groups',grplist[ii]] = has_cph[ii]
; print,ii,grpList[ii]
endfor
for ii = 0,n_elements(has_cmb) -1 do begin
prd['cmb','groups',grplist[ii]] = has_cmb[ii]
print,ii,grpList[ii], has_cmb[ii]
endfor
; print,(prd['cmb','groups',grplist]).where(1)
n_ctp = total(has_ctp)
n_cmb = total(has_cmb)
n_ctt = total(has_ctt)
prd['ctp','pmulti'] = [0,ceil((n_ctp+2)/3.),3]
prd['cmb','pmulti'] = [0,ceil((n_ctp+2)/3.),3]
prd['ctt','pmulti'] = [0,ceil((n_ctt+2)/3.),3]
all_hash = hash()
all_hash['grp'] = grp
all_hash['prd'] = prd
all_hash['reg'] = reg
self.coef = all_hash
end