; This file was last modified by M. Holland on [8/27/04]. ; It is the wggs_startup.pro IDL startup file for use with the WGGS tool and ; is intended that this file be located at 'windswe:/export/home/matthol/'. ;============================================================================== ;======= The following are REQUIRED user settings (null '' NOT allowed) ======= ;<<<<<<<<<< Directory path settings >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> wggs_version = 'wggs16' ; Current tool version. wggs_dir = '/export/home/matthol/' ; Directory path name for the tool. sav_dir = '/export/home/matthol/wggs_local/' ; (MPH's local-)scratch subdirectory with user write privileges. ;<<<<<<<< Variables to control font,widget, and plot window size >>>>>>>>>>>> default_font = '6x13' ;'7x14' ;'5x8' xsize_main = '650' ysize_main = '750' xsize_lzsrvy = '950' ;'825' ;'700' ysize_lzsrvy = '165' ;'140' xsize_lz = '950' ;'1075' ;'915' ysize_lz = '500' ;'565' ;'480' device,Decomposed=0 ; Forces machine with 24-bit colors to use 8-bit colors. ;<<<<<<<<<<<<< Printers >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ; Set default printer_name and print_filename... printer_name_bw = ' ' ; Default black&white printer name. print_filename_bw = 'idl_bw.ps' ; black&white PS plot file name. printer_name_clr = '-d hpc21pub2' ;'-d leptek' ; Default color printer name. print_filename_clr = 'idl_clr.ps' ; color PS plot file name. ;<<<<<<<<<<<<< Color Table >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ; Set default color table index for black&white and for color... ctbl = '18' ; GSFC for set_plot,'x'. ;ctbl = '13' ; RAINBOW for set_plot,'x'. ctbl_hc = '18' ; GSFC for set_plot,'ps' hardcopy. ;ctbl_hc = '13' ; RAINBOW for set_plot,'ps' hardcopy. ;ctbl_hc = '23' ; IOWA for set_plot,'ps' hardcopy. ;========== The following are OPTIONAL settings ============================== ;=== If a path is not used, then null string '' is required (NOT ' '). ======= local_usr = '/export/home/matthol/wggs_local/' ; A private directory (optional) sav_dir_2 = '' ; A second scratch direcory (optional). mpnew = '/export/home/matthol/wggs_local/mpnew/' & momavg = '' ; Staging directory for creation of survey files. ; Optional, secondary moments directory... swe_moments2_path = ['/data5/swe/moments2/'] setenv,'SWE_MOMPATH2='+swe_moments2_path(0) ; Special user application... ; Note: The string to the right of the equals sign is the name of the ; user-supplied procedure which can be located in local_usr directory. setenv,'SPECIAL_APPL=' & setenv,'SPECIAL_APPL_SWELZ=' ;================ INPUT DATA PATH SETTINGS ==================================== ;========== The following are OPTIONAL data path settings ===================== ;----------If datatype not used, set data type path name='' ------------------- ; Data type names... ...and descriptions. datype = ['swe_levelzero', $ ; LZ data from WIND-SWE experiment. 'swe_moments', $ ; SWE VEIS electron moments. 'swe_fpitch', $ ; SWE VEIS electron pitch-angle distributions. 'mfi_mag3s', $ ; MFI 3s magnetic field data. 'swe_ionkp', $ ; SWE Faraday cup solar wind ion data. 'mfi_magkp', $ ; MFI key-parameter magnetic field data. 'swe_strahl', $ ; SWE strahl-sensor data. 'isee_moments', $ ; ISEE-1 VES electron moments & distributions. 'wav_tnr', $ ; WAV 1m TNR data. 'swe_redfcuts', $ ; SWE reduced velocity distributions. 'wav_hrtnr', $ ; WAV high-resolution TNR data. 'swe_strahlen', $ ; SWE strahl data at selected energies. 'wind_orbit', $ ; WIND orbit data. 'swe_fparaperp', $ ; SWE 60-degree pitch-angle averages. 'wav_nekp', $ ; WAV key-parameter electron density. 'wav_nehr', $ ; WAV high-resolution electron density. 'swe_summary',$ ; Combined yearly moments, ion and strahl data files. 'swe_newmomf',$ ; SWE new-mode (mode7) electron moments from fitting. 'swe_newstrl'] ; SWE new-mode (mode7) electron Strahl summary data. ; Data type path name----possible data paths for each data type ; NOTE: The default path will be the first path in the string array. swe_levelzero_path = ['/cdrom/cdrom0/data/wi/swe/lz/',$ '/cdrom/cdrom0/data/wi/swe/lz/2002/',$ '/cdrom/cdrom0/data/wi/swe/lz/2003/',$ '/cdrom/cdrom0/data/wi/swe/lz/2004/',$ '/cdrom/cdrom0/data/wi/swe/lz/2005/',$ '/data2/swe/lz/',$ ; Most recent (un-proc.) LZ data. '/data4/swe/lz/'] ; All "new-mode" (proc.) LZ data. swe_moments_path = ['/data7/swe/moments/',$ ; Primary VEIS-era mom. '/data3/swe/moments/',$ ; *_sv14.mom backup set. '/data6/swe/moments/',$ ; *_sv13.mom backup set. '/data5/swe/moments2/',$ ; Older, secondary set. '/data4/swe/mod2_moments/',$ ; *_v05.mom backup set. '/data4/swe/moments_v14_cdf/',$ ; *_v14.cdf set. '/export/home/matthol/wggs_local/mpnew/',$ '/data4/swe/mpnew/'] ; Extra, "visible" staging loc. swe_fpitch_path = ['/data9/swe/ptch/',$ ; Primary VEIS-era pitch set. '/data11/swe/pitch/',$ ; "New-mode" (mode7) pitch. '/data6/swe/ptch/',$ ; VEIS *_v4.pitch backup set. '/export/home/matthol/wggs_local/mpnew/',$ '/data4/swe/mpnew/'] ; Extra, "visible" staging loc. mfi_mag3s_path = ['/mnt/lepmfi_mfi/'] ; See NOTE1 mfi_magkp_path = ['/mnt/lepmfi_kp/'] ; See NOTE1 swe_ionkp_path = ['/data5/swe/swekp/'] swe_strahl_path = ['/data8/swe/strl/',$ ; Primary VEIS-era strahl set. '/export/home/matthol/wggs_local/mpnew/',$ '/data4/swe/mpnew/'] ; Extra, "visible" staging loc. isee_moments = ['/cdrom/cdrom0/',$ '/data1/isee/cdmoments/',$ '/data1/isee/iseecdf/',$ '/data1/isee/iseemom/'] ; ISEE-1 moments AND distrib functions wav_tnr_path = ['/mnt/lepmlk_tnr/'] wav_hrtnr_path = ['/data1/waves/'] ; Specialized, limited set. swe_redfcuts_path = ['/data5/swe/redfc/',$ ; Specialized, limited set. '/export/home/matthol/wggs_local/mpnew/',$ '/data4/swe/mpnew/'] ; Extra, "visible" staging loc. wind_orbit_path = ['/data5/swe/oa/',$ '/mnt/lepmfi_oa/'] ; See NOTE2 swe_fparaperp_path = ['/data12/swe/ptchav/',$ ; Primary "new-mode" pitavg. '/export/home/matthol/wggs_local/mpnew/',$ '/data4/swe/mpnew/'] ; Extra, "visible" staging loc. wav_nekp_path = ['/data1/waves_nekp/'] ; Specialized, limited set. wav_nehr_path = ['/data1/waves_nehr/'] ; Specialized, limited set. swe_summary_path = ['/data4/swe/swe_summary/'] swe_newmomf_path = ['/data3/swe/newmom/',$ ; Primary "new-mode" moments. '/export/home/matthol/wggs_local/mpnew/',$ '/data4/swe/mpnew/'] ; Extra, "visible" staging loc. swe_newstrl_path = ['/data11/swe/strahl/',$ ; Primary "new-mode" strahl. '/export/home/matthol/wggs_local/mpnew/',$ '/data4/swe/mpnew/'] ; Extra, "visible" staging loc. ;NOTE1 ; When reading SWE levelzero data, the program also reads mag3sec data, ; automatically. If mag3sec data is unavailable, then magkp data is used, but ; you MUST first read magkp as one of the selected types of survey data. ; If both mag3sec and magkp data are unavailable, then the program stops. ;NOTE2 ; If orbatt_path set to '' (not ' '), then spacecraft to GSE coordinate ; transformation done by simple rotation agout spacecraft X-axis ; Define datapaths structure... npaths = n_elements(datype) datapaths = replicate({name:'',envar:'',list:strarr(10),ifsurvey:0},npaths) ;--------- Enter data type name, environment variable for data path, ;------------------------------------------- and list of data paths as shown... ; Note: ifsurvey = 1 if datype is survey data, otherwise ; ifsurvey = 0 if levelzero data. datapaths[0].name = 'swe_levelzero' datapaths[0].envar = 'SWE_LZPATH' datapaths[0].list[where(swe_levelzero_path ne ' ')] = swe_levelzero_path datapaths[0].ifsurvey = 0 datapaths[1].list[where(swe_moments_path ne ' ')] = swe_moments_path datapaths[1].name = 'swe_moments' datapaths[1].envar = 'SWE_MOMPATH' datapaths[1].ifsurvey = 1 datapaths[2].list[where(swe_fpitch_path ne ' ')] = swe_fpitch_path datapaths[2].name = 'swe_fpitch' datapaths[2].envar = 'SWE_PITPATH' datapaths[2].ifsurvey = 1 datapaths[3].list[where(mfi_mag3s_path ne ' ')] = mfi_mag3s_path datapaths[3].name = 'mfi_mag3s' datapaths[3].envar = 'MFI_MAGPATH' datapaths[3].ifsurvey = 1 datapaths[4].list[where(swe_ionkp_path ne ' ')] = swe_ionkp_path datapaths[4].name = 'swe_ionkp' datapaths[4].envar = 'SWE_IONKPPATH' datapaths[4].ifsurvey = 1 datapaths[5].list[where(mfi_magkp_path ne ' ')] = mfi_magkp_path datapaths[5].name = 'mfi_magkp' datapaths[5].envar = 'MFI_MAGKPPATH' datapaths[5].ifsurvey = 1 datapaths[6].list[where(swe_strahl_path ne ' ')] = swe_strahl_path datapaths[6].name = 'swe_strahl' datapaths[6].envar = 'SWE_STRPATH' datapaths[6].ifsurvey = 1 datapaths[7].list[where(isee_moments ne ' ')] = isee_moments datapaths[7].name = 'isee_moments' datapaths[7].envar = 'ISEE_PATH' datapaths[7].ifsurvey = 1 datapaths[8].list[where(wav_tnr_path ne ' ')] = wav_tnr_path datapaths[8].name = 'wav_tnr' datapaths[8].envar = 'WAVES_TNR' datapaths[8].ifsurvey = 1 datapaths[9].list[where(swe_redfcuts_path ne ' ')] = swe_redfcuts_path datapaths[9].name = 'swe_redfcuts' datapaths[9].envar = 'SWE_REDFCUTSPATH' datapaths[9].ifsurvey = 1 datapaths[10].list[where(wav_hrtnr_path ne ' ')] = wav_hrtnr_path datapaths[10].name = 'wav_hrtnr' datapaths[10].envar = 'WAVES_HRTNR' datapaths[10].ifsurvey = 1 datapaths[11].list[where(swe_strahl_path ne ' ')] = swe_strahl_path datapaths[11].name = 'swe_strahlen' datapaths[11].envar = 'SWE_STRAHLEN' datapaths[11].ifsurvey = 1 datapaths[12].list[where(wind_orbit_path ne ' ')] = wind_orbit_path datapaths[12].name = 'wind_orbit' datapaths[12].envar = 'WIND_OAPATH' datapaths[12].ifsurvey = 1 datapaths[13].list[where(swe_fparaperp_path ne ' ')] = swe_fparaperp_path datapaths[13].name = 'swe_fparaperp' datapaths[13].envar = 'SWE_PARAPERP' datapaths[13].ifsurvey = 1 datapaths[14].list[where(wav_nekp_path ne ' ')] = wav_nekp_path datapaths[14].name = 'wav_nekp' datapaths[14].envar = 'WAV_NEKP' datapaths[14].ifsurvey = 1 datapaths[15].list[where(wav_nehr_path ne ' ')] = wav_nehr_path datapaths[15].name = 'wav_nehr' datapaths[15].envar = 'WAV_NEHR' datapaths[15].ifsurvey = 1 datapaths[16].list[where(swe_summary_path ne ' ')] = swe_summary_path datapaths[16].name = 'swe_summary' datapaths[16].envar = 'SWE_SUMMARY' datapaths[16].ifsurvey = 1 datapaths[17].list[where(swe_newmomf_path ne ' ')] = swe_newmomf_path datapaths[17].name = 'swe_newmomf' datapaths[17].envar = 'SWE_NEWMOMF' datapaths[17].ifsurvey = 1 datapaths[18].list[where(swe_newstrl_path ne ' ')] = swe_newstrl_path datapaths[18].name = 'swe_newstrl' datapaths[18].envar = 'SWE_NEWSTRL' datapaths[18].ifsurvey = 1 ;=========== End of optional data path settings =============================== ;============================================================================== ;===== End of all user settings. No changes to be made below this point ======= ;=========== The following lines are required. No changes allowed! =========== wggs_base=wggs_dir+wggs_version+'/' ;Full pathname of current version of WGGS. setenv,'WGGSVERSION='+wggs_version setenv,'WGGSBASE='+wggs_base setenv,'SWEDATLIB='+wggs_base+'swelz/swedatlib/' setenv,'IDLSAV='+sav_dir+'idlsav/' setenv,'LOCALUSR='+local_usr setenv,'DEFAULT_FONT='+default_font setenv,'XSIZE_MAIN='+xsize_main setenv,'YSIZE_MAIN='+ysize_main setenv,'XSIZE_LZSRVY='+xsize_lzsrvy setenv,'YSIZE_LZSRVY='+ysize_lzsrvy setenv,'XSIZE_LZ='+xsize_lz setenv,'YSIZE_LZ='+ysize_lz !path=!path+':'+expand_path('+'+wggs_base)+':'+expand_path('+'+getenv('IDLSAV')) !path=!path+':'+expand_path('+'+getenv('LOCALUSR')) setenv,'GLINTPATH='+wggs_base+'swelz/swedatlib/glint/' ;glint mask setenv,'BACKGPATH='+wggs_base+'swelz/swedatlib/backg/' ;VEIS background setenv,'MPNEW='+mpnew ;moments/pitch/strahl staging directory setenv,'MOMAVGPATH='+momavg ;VEIS moment averages setenv,'IDLSAV2='+sav_dir_2 setenv,'FSAVE_EXT=.fsav' setenv,'FEVENTTYPE=_fshck' setenv,'LOGICAL_UNITLZ=10' ;set logical unit numbers setenv,'COLORTABLE='+ctbl setenv,'COLORTABLE_HARDCOPY='+ctbl_hc loadct,fix(ctbl) ;set default color table ;set default pitch angle file filter pfilter='Latest' setenv,'SPECIAL_PITLABEL=' ;set default moments file filter mfilter='Latest' setenv,'SPECIAL_MOMLABEL='+'0potmod' setenv,'LZNOMAG=';ok' setenv,'CREATSVFL=';/data1/swe/tmp_moments_savfil/' ;The idlsav scratch subdirectory will be created if it does not already exist. result=findfile(getenv('IDLSAV')+'mfilter',count=count) if count eq 0 then print,'Making subdirectory idlsav' if count eq 0 then spawn,'mkdir '+ getenv('IDLSAV') if count eq 0 then save,filename=getenv('IDLSAV')+'mfilter',mfilter if count eq 0 then save,filename=getenv('IDLSAV')+'pfilter',pfilter i=0 n=' ' result=findfile(getenv('IDLSAV')+'selection0',count=count) if count eq 0 then save,filename=getenv('IDLSAV')+'selection0',i,i,n,n result=findfile(getenv('IDLSAV')+'selection1',count=count) if count eq 0 then save,filename=getenv('IDLSAV')+'selection1',i,i,n,n result=findfile(getenv('IDLSAV')+'selection2',count=count) if count eq 0 then save,filename=getenv('IDLSAV')+'selection2',i,i,n,n result=findfile(getenv('IDLSAV')+'selection3',count=count) if count eq 0 then save,filename=getenv('IDLSAV')+'selection3',i,i,n,n save,filename=getenv('IDLSAV')+'printer_def_bw',$ printer_name_bw,print_filename_bw save,filename=getenv('IDLSAV')+'printer_def_clr',$ printer_name_clr,print_filename_clr print,!path print,' WGGSBASE ',getenv('WGGSBASE') print,' SWEDATLIB ',getenv('SWEDATLIB') print,' IDLSAV ',getenv('IDLSAV') print,' LOCALUSR ',getenv('LOCALUSR') print,' GLINTPATH ',getenv('GLINTPATH') print,' BACKGPATH ',getenv('BACKGPATH') ;save input data type names and paths save,filename=getenv('IDLSAV')+'datapaths',datapaths ;set input data path environment variables setpaths,/init ;@compile_wi_h0_swe ;====== End of required user settings and non-changeable lines of code ======== ;==============================================================================