; &proc_input ; ; Master list and explanation of user input parameters for tgcmproc (f90): ; ;------------------------------------------------------------------ ; ; tmpdir: ; Path to a temporary directory where the user wishes ; to store history files for use in later runs of the processor. ; If given, the processor will check in tmpdir for needed history ; volumes before going to the mss. If the history file is obtained ; from the mss, it is linked to tmpdir for later use. If tmpdir is ; not given, the processor will always go to the mss (assuming the ; file is not in the cwd), and files are not saved on the disk. If ; tmpdir is given but does not exist, the processor creates it on ; startup. tmpdir = '/tmp/foster' ; ; histvols: ; history volume mss paths to files containing desired histories. ;histvols = '/ROBLE/RGR98/TSEQNP7','/ROBLE/RGR97/TSEQNP8' histvols = '/ROBLE/TGCM22/DS22S3' ; ; A short form for specifying a series of history files with a numbered ; sequence imbedded in the file names is available. The numbered sequence ; must have a constant number of digits, e.g., prefix pad with zeroes ; when necessary. (e.g., histvols = '/ROBLE/RGR98/TSEQNP1','to', ; '/ROBLE/RGR98/TSEQN20','by','1' would NOT work). The following example ; expands to 20 file names: ;histvols = '/ROBLE/RGR98/TSEQNP01','to','/ROBLE/RGR98/TSEQN20','by','1' ; ; mtimes: ; model time(s) requested by user: up to 721 integer triplets, ; specifying the day,hour,minute of each desired history. ;mtimes = 48,0,0, 48,1,0 mtimes = 33,20,0 ; ; Short form of specifying many equally spaced model times: ; mtimes = day_1st, hr_1st, min_1st, 'to', day_last, hr_last, min_last, ; 'by', delta_min ; (note delta time is in minutes) ; The below example would expand to the 25 model times: ; 10,0,0, 10,1,0, ... ,10,23,0, 11,0,0 ; ;mtimes = 10,0,0,'to',11,0,0,'by',60 ; a day of hourly histories ;mtimes = 33,20,0,'to',34,0,0,'by',60 ;------------------------------------------------------------------ ; ; histvols_cntr: ; Control history volume mss paths (if given, then proc will produce ; difference fields of mtimes on histvols minus mtimes_cntr on ; histvols_cntr) ;histvols_cntr = '/ROBLE/BASE/TSNAE06','/ROBLE/BASE/TSNAE07' ; ; mtimes_cntr: ; Control model times requested by user (must be the same ut's as ; mtimes, but not necessarilly the same day) ;mtimes_cntr = 17,0,10 ;mtimes_cntr = 17,0,0,'to',17,1,0,'by',10 ; ; idifpercent: ; If idifpercent is *not* provided, the processor will make percent ; differences of species, and raw differences of all other fields, ; otherwise: ; idifpercent = 0 -> make raw differences of all fields. ; idifpercent = 1 -> make percent differences of all fields. ;idifpercent = 0 ; ;------------------------------------------------------------------ ; modelhts: ; modelhts = 1 means get heights from history, otherwise (modelhts=0), ; proc will calculate heights field using gravity and mean mass: ; do k=2,kmx ; flat(i,k,ix) = flat(i,k-1,ix) + boltz*dz* ; + raw_tn(i,k-1) / (xmas(k-1)*g(k-1)) ; g(k) = g0*(r/(r+flat(i,k,ix)))**2 ; enddo ; (default: modelhts=1) modelhts = 1 ; model heights flag (single int) ; ; iden: Density conversion flag: ; iden = 0 -> leave species as on history (most are mass mixing ratio) ; iden = 1 -> convert species to number densities (cm3) (default) ; iden = 2 -> convert species to number density mixing ratios ; iden = 3 -> convert species to mass density (gm/cm3) iden = 1 ; density conversion flag (single int) ; ; maxdiskvols: ; Maximum number of disk files to be saved in tmpdir (see above) from ; the current processor run. When more than maxdiskvols files from this ; run (histvols) are in tmpdir or cwd, the processor will start removing ; them, starting with the first histvols specified. The processor will ; *not* remove any files not related to its current execution. ; (default maxdiskvols=25) maxdiskvols = 25 ; number of disk files before scrubbing ; ; isearch: flag affecting extent of search for specified histories: ; isearch=0 -> stop execution if a history is not found. ; isearch=1 -> continue search for next history if a history is not found. isearch = 0 ; history search flag (default isearch=0) ; ; ionvel: ; Flag for whether or not to add neutral atmos effects in ion velocities: ; 6/23/04: Change description to clarify meaning of ionvel: ; ionvel = 0 -> read ion velocities from the (secondary) history ; ionvel = 1 -> ExB velocity ; ionvel = 2 -> Ion velocity ; ionvel = 3 -> Neutral wind component of ion velocity (efield=0) ; ionvel = 4 -> Electric field component of ion velocity (unvn=0) ; ;; ionvel = 0 -> read ion velocities from the (secondary) history ;; ionvel = 1 -> ExB only (default) ;; ionvel = 2 -> ExB+unvn (total ion velocity) ;; ionvel = 3 -> ExB+unvn, with E=0 (set electric potential = 0) ;; ionvel = 4 -> ExB+unvn, with unvnwn = 0. ionvel = 1 ; ion velocity flag ; ; ncfile_magfield and ncfile_dipdec specify external data files ; which are used to calculate ion drift velocities if ionvel > 0. ; There are no default paths to these files, altho if they are ; not provided, mkdrifts.F first tries looking in $TGCMDATA as follows ; for single or double resolution: ; ncfile_magfield = '$TGCMDATA/magfield_5.0h.nc' ncfile_dipdec = '$TGCMDATA/dipdec_5.0h.nc' ;ncfile_magfield = '$TGCMDATA/magfield_2.5h.nc' ;ncfile_dipdec = '$TGCMDATA/dipdec_2.5h.nc' ; ;------------------------------------------------------------------ ; ; cfields: ; List of field names to process. These are 1-8 characters ; in length, each enclosed in single quotes and separated ; by commas. Up to 100 cfields may be specified. These fields ; may be "known" to the processor, or they may be fields the ; user has named and placed on the history when running the ; model. cfields = 'TN' ;cfields = 'TN','UN','VN','O2','O1','N2','W','Z' ;cfields = 'OHB-98','E6300' ;cfields = 'EPVDIV','EPVYZMAG' ; ; iprint_fknown: ; Set iprint_fknown = 1 to print list of all fields known to the ; processor (see sample output below) (default iprint_fknown=0). iprint_fknown=0 ; print list of all valid field names ; ; Sample output from iprint_fknown=1: ; ; tgcmproc: 144 known fields are defined: ; ; ------------------------------------------------------------------------ ; Name Units Type Vtype Dependencies (incomplete) ; ; 1 TN DEG K SCALAR ZP ; 2 UN M/S VECTOR ZP ; 3 VN M/S VECTOR ZP ; 4 O2 CM3 DENSITY ZP ; 5 OX CM3 DENSITY ZP ; 6 N4S CM3 DENSITY ZP ; 7 NOZ CM3 DENSITY ZP ; 8 CO CM3 DENSITY ZP ; 9 CO2 CM3 DENSITY ZP ;10 H2O CM3 DENSITY ZP ;11 H2 CM3 DENSITY ZP ;12 HOX CM3 DENSITY ZP ;13 O+ CM3 DENSITY ZP ;14 CH4 CM3 DENSITY ZP ;15 AR CM3 DENSITY ZP ;16 HE CM3 DENSITY ZP ;17 NAT CM3 DENSITY ZP ;18 O21D CM3 DENSITY ZP ;19 NO2 CM3 DENSITY ZP ;20 NO CM3 DENSITY ZP ;21 O3 CM3 DENSITY ZP ;22 O1 CM3 DENSITY ZP ;23 OH CM3 DENSITY ZP ;24 HO2 CM3 DENSITY ZP ;25 H CM3 DENSITY ZP ;26 N2D CM3 DENSITY ZP ;27 TI DEG K SCALAR ZP ;28 TE DEG K SCALAR ZP ;29 NE CM3 DENSITY ZP ;30 O2+ CM3 DENSITY ZP ;31 W M/S VECTOR ZP ;32 Z KM SCALAR ZP ;33 POTEN VOLTS SCALAR ZP ;34 UI M/S VECTOR ZP ;35 VI M/S VECTOR ZP ;36 WI M/S VECTOR ZP ;37 UIVI M/S VECTOR ZP ;38 N2 CM3 DENSITY ZP ;39 RHO CM3 DENSITY ZP ;40 UNVN M/S VECTOR ZP ;41 FOF2 MHz SCALAR HT-INDEP ;42 HMF2 KM SCALAR HT-INDEP ;43 E6300 PHOTONS/CM3/SEC EMISSION ZP ;44 E5577 PHOTONS/CM3/SEC EMISSION ZP ;45 EO200 PHOTONS/CM3/SEC EMISSION ZP ;46 EOH83 PHOTONS/CM3/SEC EMISSION ZP ;47 ECO215u PHOTONS/CM3/SEC EMISSION ZP ;48 ENO53u PHOTONS/CM3/SEC EMISSION ZP ;49 ENO PHOTONS/CM3/SEC EMISSION ZP ;50 E-1085E CM3/SEC EXCITED-STATE ZP ;51 E-1085S CM3/SEC EXCITED-STATE ZP ;52 E-1134N CM3/SEC EXCITED-STATE ZP ;53 E-1134N2 CM3/SEC EXCITED-STATE ZP ;54 E-1200N CM3/SEC EXCITED-STATE ZP ;55 E-1200N2 CM3/SEC EXCITED-STATE ZP ;56 E-1304 CM3/SEC EXCITED-STATE ZP ;57 E-1356 CM3/SEC EXCITED-STATE ZP ;58 E-1493N CM3/SEC EXCITED-STATE ZP ;59 E-1493N2 CM3/SEC EXCITED-STATE ZP ;60 E-5577 CM3/SEC EXCITED-STATE ZP ;61 E-6300 CM3/SEC EXCITED-STATE ZP ;62 E-834E CM3/SEC EXCITED-STATE ZP ;63 E-834SOL CM3/SEC EXCITED-STATE ZP ;64 E-989 CM3/SEC EXCITED-STATE ZP ;65 E-N22PG CM3/SEC EXCITED-STATE ZP ;66 E-N2C4 CM3/SEC EXCITED-STATE ZP ;67 E-N2LBH CM3/SEC EXCITED-STATE ZP ;68 E-N2VK CM3/SEC EXCITED-STATE ZP ;69 E-OPLS2D CM3/SEC EXCITED-STATE ZP ;70 E-OPLS2P CM3/SEC EXCITED-STATE ZP ;71 OHV-0 CM-3 OH-VIB HEIGHT tn,o2,o1,h,o3,ho2,oh ;72 OHV-1 CM-3 OH-VIB HEIGHT ;73 OHV-2 CM-3 OH-VIB HEIGHT ;74 OHV-3 CM-3 OH-VIB HEIGHT ;75 OHV-4 CM-3 OH-VIB HEIGHT ;76 OHV-5 CM-3 OH-VIB HEIGHT ;77 OHV-6 CM-3 OH-VIB HEIGHT ;78 OHV-7 CM-3 OH-VIB HEIGHT ;79 OHV-8 CM-3 OH-VIB HEIGHT ;80 OHV-9 CM-3 OH-VIB HEIGHT ;81 OHB-93 PHOTONS/CM3/SEC OH-BAND HEIGHT tn,o2,o,h,o3,ho2,oh ;82 OHB-94 PHOTONS/CM3/SEC OH-BAND HEIGHT ;83 OHB-95 PHOTONS/CM3/SEC OH-BAND HEIGHT ;84 OHB-96 PHOTONS/CM3/SEC OH-BAND HEIGHT ;85 OHB-97 PHOTONS/CM3/SEC OH-BAND HEIGHT ;86 OHB-98 PHOTONS/CM3/SEC OH-BAND HEIGHT ;87 OHB-82 PHOTONS/CM3/SEC OH-BAND HEIGHT ;88 OHB-83 PHOTONS/CM3/SEC OH-BAND HEIGHT ;89 OHB-84 PHOTONS/CM3/SEC OH-BAND HEIGHT ;90 OHB-85 PHOTONS/CM3/SEC OH-BAND HEIGHT ;91 OHB-86 PHOTONS/CM3/SEC OH-BAND HEIGHT ;92 OHB-87 PHOTONS/CM3/SEC OH-BAND HEIGHT ;93 OHB-71 PHOTONS/CM3/SEC OH-BAND HEIGHT ;94 OHB-72 PHOTONS/CM3/SEC OH-BAND HEIGHT ;95 OHB-73 PHOTONS/CM3/SEC OH-BAND HEIGHT ;96 OHB-74 PHOTONS/CM3/SEC OH-BAND HEIGHT ;97 OHB-75 PHOTONS/CM3/SEC OH-BAND HEIGHT ;98 OHB-76 PHOTONS/CM3/SEC OH-BAND HEIGHT ;99 OHB-60 PHOTONS/CM3/SEC OH-BAND HEIGHT ;100 OHB-61 PHOTONS/CM3/SEC OH-BAND HEIGHT ;101 OHB-62 PHOTONS/CM3/SEC OH-BAND HEIGHT ;102 OHB-63 PHOTONS/CM3/SEC OH-BAND HEIGHT ;103 OHB-64 PHOTONS/CM3/SEC OH-BAND HEIGHT ;104 OHB-65 PHOTONS/CM3/SEC OH-BAND HEIGHT ;105 OHB-50 PHOTONS/CM3/SEC OH-BAND HEIGHT ;106 OHB-51 PHOTONS/CM3/SEC OH-BAND HEIGHT ;107 OHB-52 PHOTONS/CM3/SEC OH-BAND HEIGHT ;108 OHB-53 PHOTONS/CM3/SEC OH-BAND HEIGHT ;109 OHB-54 PHOTONS/CM3/SEC OH-BAND HEIGHT ;110 OHB-40 PHOTONS/CM3/SEC OH-BAND HEIGHT ;111 OHB-41 PHOTONS/CM3/SEC OH-BAND HEIGHT ;112 OHB-42 PHOTONS/CM3/SEC OH-BAND HEIGHT ;113 OHB-43 PHOTONS/CM3/SEC OH-BAND HEIGHT ;114 OHB-30 PHOTONS/CM3/SEC OH-BAND HEIGHT ;115 OHB-31 PHOTONS/CM3/SEC OH-BAND HEIGHT ;116 OHB-32 PHOTONS/CM3/SEC OH-BAND HEIGHT ;117 OHB-20 PHOTONS/CM3/SEC OH-BAND HEIGHT ;118 OHB-21 PHOTONS/CM3/SEC OH-BAND HEIGHT ;119 OHB-10 PHOTONS/CM3/SEC OH-BAND HEIGHT ;120 NaS CM3 DENSITY ZP ;121 NaO CM3 DENSITY ZP ;122 NaO3 CM3 DENSITY ZP ;123 NaO2 CM3 DENSITY ZP ;124 NaOH CM3 DENSITY ZP ;125 NaCO3 CM3 DENSITY ZP ;126 NaHCO3 CM3 DENSITY ZP ;127 NaS+ CM3 DENSITY ZP ;128 NaN2+ CM3 DENSITY ZP ;129 NaCO2+ CM3 DENSITY ZP ;130 NaH2O+ CM3 DENSITY ZP ;131 NaO+ CM3 DENSITY ZP ;132 NaEMIS CM3 DENSITY ZP ;133 O/CO2 RATIO ZP ;134 O/N2 RATIO ZP ;135 N2/O RATIO ZP ;136 O/O2+N2 RATIO ZP ;137 EPVY M^2/SEC^2 EPFLUX ZP ;138 EPVZ M^2/SEC^2 EPFLUX ZP ;139 EPVDIV M/SEC/DAY EPFLUX ZP ;140 EPVYZ M^2/SEC^2 EPFLUX ZP ;141 EPVYZMAG M^2/SEC^2 EPFLUX ZP ;142 QBARY m-1/s-1 QBARY ZP ;143 QH m-1/s-1 QBARY ZP ;144 QV m-1/s-1 QBARY ZP ;145 HTOT cm3-mmr DENSITY ZP 2*h2o+h+oh+ho2+4*ch4+2*h2 ;146 CTOT cm3-mmr DENSITY ZP co+co2+ch4 ; (Note: only tgcmproc1 (1/30/03) and later adds ch4 to CTOT) ; ; iprint_fldminmax: ; Single integer flag, 0 or 1. If iprint_fldminmax=1, then print the ; 3d minimum and maximum values of each field after being read from ; the history (for difference fields, min,max will be printed for ; perturbed, control, and differences). iprint_fldminmax=1 ; print 3d min,max of fields every hist ; ; fmnmxint: ; Groups of four values: string,float,float,float. ; Optional series of 4 values: 'FIELD',fmin,fmax,cint, where fmin,fmax ; are the minimum and maximum value for plotting of field, and cint is ; the contour interval for contouring. If fmin > fmax, the minimum and ; maximum of the field is calculated and used. If cint = 0., the interval ; will be chosen in the software. Note fmnmxint is used *after* any ; application of fscale and *after* any log10 has been taken. ; Default: 'FIELD',1.,0.,0. for all fields ; Example: fmnmxint = 'TN',480.,1640.,40., 'POTEN',-18000.,14000.,2000. ; In this example, Temperature (TN) is to be plotted from 480 to 1640, with ; contour interval of 40. Electric potential (POTEN) is to be plotted from ; -18000 to 14000 by 2000. ; ; fscale: ; Data type: Pairs of string,float ; Optional series of 2 values: 'FIELD',scale, where FIELD is one of the ; field labels given in comments to cfields (and, unlike cfields, it must ; be quoted), and scale is a scale factor to be multiplied by the field ; values before plotting. Note scale is applied before fmnmxint for the ; given field. ; Example: fscale = 'O1',1.e-11 ; In this example, Atomic oxygen (O1) is to be multipled by 1.e-11 before ; plotting. ; Default: 'FIELD',1. for all fields ; ; vn_scale: ; Optional 3 floats specifying low, high, and scale in m/s for ; plotting neutral velocities. ; ; vi_scale: ; Optional 3 floats specifying low, high, and scale in m/s for ; plotting ion drift velocities. ; ; vep_scale: ; Optional 3 floats specifying low, high, and scale in m/s for ; plotting epflux vectors. ; ; vepz_viewfac: ; Optional scaling factor for ep flux vectors (default=1.) ; ; vmag_len: ; Optional vector arrow length. ;------------------------------------------------------------------------ ; ; ie6300: ; Flag that is relevant only to the field 'E6300', the 6300 angstrom ; redline emission. ; ie6300 = 1 -> add SR63 to E6300 volume emission rate (solred is called) ; ie6300 = 0 -> do NOT add SR63 to E6300 volume emission rate ; (solred is not called) ie6300 = 0 ; E6300 emission flag (default=0) ; ; ie5577(5): ; Flag that is relevant only to the field 'E5577', greenline emission. ; Five integers, each 0 or 1, indicating components to be used in E5577: ; (default ie5577 = 1,0,0,0,0) ; ie5577(1) > 0 -> o1 recombination (original) ; (need tn,xo2,xo,xn2) ; ie5577(2) > 0 -> dissociative recombination of o2+ ; (need te,xo2p,xne,xo21d) ; ie5577(3) > 0 -> photoelectron impact ; (need tn,ht,xo2,xo,xn2,xo21d and solred) ; ie5577(4) > 0 -> airglow ; (need tn,ht,xo2,xo,xn2,xo21d and solred) ; ie5577(5) > 0 -> photo dissoc of o2 by solar lyman-beta ; (glyb returned by solred) ; If solred is called, also need iyd, ut, glat, glon, f107d, f107a ; Solred returns sr63 (see e6300), qn2p, and qop ; ie5577 = 1,0,0,0,0 ; E5577 emission flags ; ; ibohv_watts: ; Flag for units of height integrated OH emission bands, ; (e.g. cfields = 'OHB-98') ; ibohv_watts = 0 -> units are kilo-rayleighs (default) ; ibohv_watts = 1 -> units are watts/cm2-str ibohv_watts = 0 ;units flag for ht-integ OH ; ; integht: single integer, 0 or 1, (default integht=1): ; Flag to indicate whether or not to provide height-integrations ; of certain fields (e.g., OH bands and emission fields). integht = 1 ; integrate certain fields in height ;------------------------------------------------------------------------ ; ; ipltlat: ; If ipltlat=1, processor will make latitude slices, i.e., contours ; with longitude or local time on the x-axis, vertical (zp or height) ; on y-axis. If ipltlat=0, other related parameters (ilat_xx, etc) are ; ignored. ; ipltlat=0 ; plot flag for latitude slices ; ; ilat_log10: Integer flag for plotting log10 of fields lat slices: ; ilat_log10 = 0 -> do not plot log10 of any field ; ilat_log10 = 1 -> plot log10 of species densities only (default) ; ilat_log10 = 2 -> plot log10 of all fields ; ilat_log10=1 ; plot log10 sp if ilat_log10 > 0 ; ; ilat_yaxright: Flag specifies extra right-hand y-axes: ; ilat_yaxright = 2 -> If left y-axis is zp (flat_zprange), add extra ; right-hand y-axes in average height (km) and pressure (Mb). ; If left y-axis is ht (flat_htscale), add single right-hand y-axis ; in pressure (Mb). ; ilat_yaxright = 1 -> If left y-axis is zp (flat_zprange), add extra ; right-hand y-axis in average height. If left yaxis is height ; (flat_htscale), add extra right-hand y-axis in pressure (Mb). ; ilat_yaxright = 0 -> Do not add any extra right-hand y axes. ; (default ilat_yaxright = 2) ilat_yaxright=2 ; extra right-hand y-axes ; ; flats: Latitudes at which to make latitude slices (-90. -> +90.) ; (up to 73 latitudes may be specified). Note the nearest model ; grid point to flats will be used (i.e., processor does not ; interpolate between spatial grid points). ; A "short-form" for flats may also be used, e.g. ; flats = -30.,'to',30.,'by',10. would expand to -30.,-20.,...,30. flats = 40.,-40. ; ; flat_zprange: Two floats specifying the range (bottom,top) of zp log ; pressures for y-axis of latitude slices. If flat_zprange(1) < bottom ; of the model, then the bottom pressure of the model is used. If ; flat_zprange(2) > top of model, then top of model is used. flat_zprange = -99.,99. ; ; flat_htscale: Three floats specifying a height scale for y-axis of ; latitude slices: bottom, top, and delta (all in km). (the heights ; field will be used for interpolation to constant height surfaces) flat_htscale = 30.,100.,5. ; ; clat_xaxes: One or two character strings indicating type of x-axis ; for latitude slices: ; clat_xaxes = 'LON','LT' ; both longitude and local time x-axes (default) ; clat_xaxes = 'LON' ; longitude x-axis only ; clat_xaxes = 'LT' ; local time x-axis only ; clat_xaxes = 'LON','LT' ;------------------------------------------------------------------------ ; ; ipltlon: ; If ipltlon=1, processor will make longitude slices, i.e., contours ; with latitude on the x-axis, vertical (zp or height) on y-axis. If ; ipltlon=0, other related parameters (ilon_xx, etc) are ignored. ipltlon=1 ; plot flag for longitude slices ; ; ilon_log10: Integer flag for plotting log10 of fields lon slices: ; ilon_log10 = 0 -> do not plot log10 of any field ; ilon_log10 = 1 -> plot log10 of species densities only (default) ; ilon_log10 = 2 -> plot log10 of all fields ilon_log10=1 ; plot log10 sp if ilat_log10 > 0 ; ; ilon_yaxright: Flag specifies extra right-hand y-axes: ; ilon_yaxright = 2 -> If left y-axis is zp (flon_zprange), add extra ; right-hand y-axes in average height (km) and pressure (Mb). ; If left y-axis is ht (flon_htscale), add single right-hand y-axis ; in pressure (Mb). ; ilon_yaxright = 1 -> If left y-axis is zp (flon_zprange), add extra ; right-hand y-axis in average height. If left yaxis is height ; (flon_htscale), add extra right-hand y-axis in pressure (Mb). ; ilon_yaxright = 0 -> Do not add any extra right-hand y axes. ; (default ilon_yaxright = 2) ilon_yaxright=2 ; extra right-hand y-axes ; ; flons: Latitudes at which to make longitude slices (-180. -> +180.) ; (up to 73 longitudes may be specified). Note the nearest model ; grid point to flons will be used (i.e., processor does not ; interpolate between spatial grid points). In addition to longitudes, ; zonal means (globally averaged longitudes), be specified, as follows: ; flons = 'zm' ; zonal means ; A "short-form" for flats may also be used, e.g. ; flons = 0.,'to',180.,'by',60. would expand to 0.,60.,120.,180. flons = 0.,180.,'zm' ; ; fslts: Local times at which to make longitude slices (0. -> 24.) fslts = 0.,12. ; ; flon_zprange: Two floats specifying the range (bottom,top) of zp log ; pressures for y-axis of longitude slices. If flon_zprange(1) < bottom ; of the model, then the bottom pressure of the model is used. If ; flon_zprange(2) > top of model, then top of model is used. flon_zprange = -99.,99. ; ; flon_htscale: Three floats specifying a height scale for y-axis of ; longitude slices: bottom, top, and delta (all in km). (the heights ; field will be used for interpolation to constant height surfaces) flon_htscale = 30.,500.,10. ; ; flon_xlatrange: Two floats specifying minimum and maximum latitudes ; for x-axis of longitude slices (default flon_xlatrange = -90.,90.) ;flon_xlatrange = -40.,40. ; ; amphase: ; Wave number(s) (single integer in range 0 to 4) at which to plot ; amplitudes and phases in longitude slices (default amphase=0, ; i.e., do not plot amplitudes and phases) amphase=0 ; Wave number for amplitude/phase ; ; istream: ; Single integer flag 0 or 1 indicating whether or not to plot ; stream function using VN (meridional wind) (default istream=0) istream=0 ; Stream function for VN ; ; ilon_epvdiv_yz: Single integer: if > 0, add apvy_epvz vectors to ; EPVDIV contours, otherwise, do not (default ilon_epvdiv_yz = 0) ilon_epvdiv_yz=1 ; if > 0, add epvy+epvz vectors to epvdiv contours ; ; ilon_epvyzmag_yz: Single integer: if > 0, add apvy_epvz vectors to ; EPVYZMAG contours, otherwise, do not (default ilon_epvyzmag_yz = 0) ilon_epvyzmag_yz=1 ; if > 0, add epvy+epvz vectors to epvyzmag contours ; ;sendcdf_lons = 'machine:path/file.nc' (version 1.2 or later) ; Make a netcdf file containing longitude slices according to pltlon ; namelist parameters (flons, fslts, flon_zprange, flon_htscale). ; File is rcp'd to sendcdf_lons at end of the run. ;sendcdf_lons = 'vishnu.hao:/e/foster/tgcmproc/tgcmproc_lons.nc' ; ;------------------------------------------------------------------------ ; ; ipltmaps: ; Integer flag, 0 or 1. If ipltmaps = 1, then processor will make ; map projections at selected height or pressure surfaces according ; to map_xxx input parameters. Note map_xxxx parameters are ignored ; if ipltmaps = 0 ; ipltmaps=1 ; plot flag for maps ; ; map_global = 1 -> make horizontal slice global cylindrical equidistant ; projections with longitude or local time on x-axis, latitude on the ; y-axis. map_global=1 ; CE projections (cyl equidistant) ; ; map_global_cenlon (single integer): ; Center longitude for x-axis of global CE maps (map_global=1) ; (default map_global_cenlon = 0) map_global_cenlon=90 ; center x-axis longitude ; ; map_global_censlt (single integer): ; Center local time for x-axis of global CE maps (map_global=1) ; (default map_global_censlt = 0). This is ignored if map_global_cenlon ; is given (see above). map_global_censlt=12 ; center x-axis local time ; ; map_polar = 1 -> make polar stereographic map projections (pole in ; center of elliptical projection, with local time around the perimeter, ; where local noon is fixed at the top of the projection. map_polar=0 ; ST projections (polar stereographic) ; ; fmap_polar_perimlat: ; Up to 36 (nlat) floats, specifying perimeter latitude for polar ; stereographic maps (default 42.5). Note nearest model latitude grid ; point will be used. fmap_polar_perimlat = -40.,40. ; ; map_satview = 1 -> make satellite view map projections. map_satview=0 ; SV projections (sat view) ; ; fmap_satview_eradii: Number of earth radii from center of the earth ; to viewing eye of satellite view map. (default = 6.631, i.e., ; view earth as if seen from geosynchronous satellite. fmap_satview_eradii=6.631 ; earth radii from satv ; ; fmap_satview_latlon: Two reals specifying latitude and longitude ; of center of satellite view projection. fmap_satview_latlon = 40.,0. ; ; fmap_satview_latslt: Two reals specifying latitude and local time ; of center of satellite view projection (useful for time animations) fmap_satview_latslt = 40.,12. ; local noon ; ; map_mollweide = 1 -> make mollweide global map projections. map_mollweide=0 ; MO projections (mollweide) ; ; fmap_mollweide_latlon: Two reals specifying latitude and longitude ; of center of mollweide projection. fmap_mollweide_latlon = 40.,0. ; 40 lat, 0 lon ; ; fmap_mollweide_latslt: Two reals specifying latitude and local time ; of center of mollweide projection (useful for time animations) fmap_mollweide_latslt = 0.,12. ; 0 lat, local noon ; ; map_continents: flag for drawing continental outlines on map projections: ; map_continents = 0 -> do not draw continental outlines (default) ; map_continents = 1 -> draw continental outlines map_continents=0 ; continental outlines flag ; ; map_tn_unvn: flag for drawing neutral wind vectors over neutral temperature ; contours (cfields = 'TN'). ; map_tn_unvn = 0 -> do not add neutral velocities to TN contours (default) ; map_tn_unvn = 1 -> do add neutral velocities to TN contours. map_tn_unvn = 0 ; if > 0, add un+vn vectors to tn contours ; ; map_ht_unvn: flag for drawing neutral wind vectors over height ; contours (cfields = 'Z'). ; map_ht_unvn = 0 -> do not add neutral velocities to Z contours (default) ; map_ht_unvn = 1 -> do add neutral velocities to Z contours. map_ht_unvn = 0 ; if > 0, add un+vn vectors to tn contours ; ; map_ep_uivi: flag for drawing ion drift vectors over electric potential ; contours (cfields = 'POTEN'). ; map_ep_uivi = 0 -> do not add ion velocities to POTEN contours (default) ; map_ep_uivi = 1 -> do add ion velocities to POTEN contours. map_ep_uivi = 0 ; if > 0, add ui+vi vectors to poten contours ; ; map_log10: Integer flag for plotting log10 of fields on maps: ; map_log10 = 0 -> do not plot log10 of any field (default) ; map_log10 = 1 -> plot log10 of species densities only ; map_log10 = 2 -> plot log10 of all fields map_log10=0 ; plot log10 sp if map_log10 > 0 ; ; fmap_zpht: Up to 45 log pressure or height surfaces at which to make ; map projections. If fmap_zpht(i) > top of model pressure, then it ; is assumed to be a km height, otherwise plot at nearest vertical ; pressure grid point. ; A "short-form" for fmap_zpht may also be used, e.g. ; fmap_zpht = 100.,'to',180.,'by',5. would expand to 100.,105.,...,180. ; fmap_zpht = -17.,'to',5.,'by',0.5 would expand to -17.,-16.5,...,5. fmap_zpht = -4.,120. ; make maps at zp -4., and 120 km. ;------------------------------------------------------------------------ ; ; ipltxyloc: ; Integer flag, 0 or 1. If ipltxyloc = 1, then processor will make ; vertical profile line plots with the field on the x-axis, zp or ; height on the y-axis, at selected locations. Related input parameters ; ixyloc_xxx are ignored if ipltxyloc = 0. ipltxyloc=0 ; flag for vertical profile xy plots ; ; ixyloc_log10: Single integer flag for log10 of fields in vertical ; profiles (default ixyloc_log10 = 1): ; ixyloc_log10 = 0 -> do not plot log10 of any field. ; ixyloc_log10 = 1 -> plot log10 of species densities only. ixyloc_log10=1 ; flag for log10 of vertical profiles ; ; ixyloc_yaxright: Flag specifies extra right-hand y-axes: ; ixyloc_yaxright = 2 -> If left y-axis is zp (xyloc_zprange), add extra ; right-hand y-axes in average height (km) and pressure (Mb). ; If left y-axis is ht (xyloc_htscale), add single right-hand y-axis ; in pressure (Mb). ; ixyloc_yaxright = 1 -> If left y-axis is zp (xyloc_zprange), add extra ; right-hand y-axis in average height. If left yaxis is height ; (xyloc_htscale), add extra right-hand y-axis in pressure (Mb). ; ixyloc_yaxright = 0 -> Do not add any extra right-hand y axes. ; (default ixyloc_yaxright = 2) ixyloc_yaxright=2 ; flag for extra y-axes of ipltxyloc ; ; xylocs: ; Up to 73 pairs of lat,lon locations at which to make vertical profiles. ; xylocs(2) longitude may be 'zm' for zonal means, or 'ltxx' for local ; time xx. Use xylocs='zm','zm' for global means. (nearest lat,lon model ; grid point will be used, i.e., bilinear interpolation between grid ; points is not available). xylocs = 40.,-90., 40.,'zm', 40.,'slt12.', 'zm','zm' ; ; xyloc_zprange: Two floats specifying the range (bottom,top) of zp log ; pressures for y-axis of vertical profiles. If xyloc_zprange(1) < bottom ; of the model, then the bottom pressure of the model is used. If ; xyloc_zprange(2) > top of model, then top of model is used. xyloc_zprange = -99.,99. ; ; xyloc_htscale: Three floats specifying a height scale for y-axis of ; vertical profiles: bottom, top, and delta (all in km). (the heights ; field will be used for interpolation to constant height surfaces) xyloc_htscale = 30.,500.,10. ; ; xyloc_locname: Optional string array of location names corresponding to ; the locations given by xylocs (number of names given must be same as ; number of locations given (number of xylocs value pairs). If provided, ; these names will appear in the plot labelling. ;xyloc_locname = 'LOC 1','LOC 2' ;------------------------------------------------------------------------ ; ; Make lat vs zp/ht plots of zm at selected slt ; (must have at least 1 day time series): ; ipltzmslt = 0 ; zmslt = 0.,6.,12.,18. ; zmslt = 0.,12. ; zmslt_zprange = -999.,999. ; zmslt_htscale = 90.,400.,5. ; ;------------------------------------------------------------------------ ; ; ipltutvert: ; Integer flag, 0 or 1. If ipltutvert = 1, then processor will make ; contour fields with ut on the x-axis, pressure or height on the ; y-axis, at selected locations. At least two model times (mtimes) ; must be given. ipltutvert = 0 ; ; iutvert_log10: Integer flag for plotting log10 of ut vs vertical contours: ; iutvert_log10 = 0 -> do not plot log10 of any field ; iutvert_log10 = 1 -> plot log10 of species densities only (default) ; iutvert_log10 = 2 -> plot log10 of all fields iutvert_log10=1 ; log10 flag ; ; iutvert_yaxright: Flag specifies extra right-hand y-axes: ; iutvert_yaxright = 2 -> If left y-axis is zp (utvert_zprange), add extra ; right-hand y-axes in average height (km) and pressure (Mb). ; If left y-axis is ht (utvert_htscale), add single right-hand y-axis ; in pressure (Mb). ; iutvert_yaxright = 1 -> If left y-axis is zp (utvert_zprange), add extra ; right-hand y-axis in average height. If left yaxis is height ; (utvert_htscale), add extra right-hand y-axis in pressure (Mb). ; iutvert_yaxright = 0 -> Do not add any extra right-hand y axes. ; (default iutvert_yaxright = 2) iutvert_yaxright=2 ; flag for extra y-axes of ipltutvert ; ; utvert_locs: ; Up to 73 pairs of lat,lon locations (floats) at which to make ut vs ; vertical contours. utvert_locs(2) longitude may be 'zm' for zonal ; means, or 'ltxx' for local time xx. Use utvert_locs='zm','zm' for ; global means. (nearest lat,lon model grid point will be used, i.e., ; bilinear interpolation between grid points is not available). utvert_locs = 40.,-90., 40.,'zm', 40.,'slt12.', 'zm','zm' ; ; utvert_zprange: Two floats specifying the range (bottom,top) of zp log ; pressures for y-axis of ut vs vertical contours. If utvert_zprange(1) ; < bottom of the model, then the bottom pressure of the model is used. ; If utvert_zprange(2) > top of model, then top of model is used. utvert_zprange = -99.,99. ; ; utvert_htscale: Three floats specifying a height scale for y-axis of ; ut vs vertical contours: bottom, top, and delta (all in km). (the ; heights field will be used for interpolation to constant height surfaces) utvert_htscale = 30.,500.,10. ; ; utvert_locname: Optional string array of location names corresponding to ; the locations given by utvert_locs (number of names given must be same ; as number of locations given (number of utvert_locs value pairs). If ; provided, these names will appear in the plot labelling. ;utvert_locname = 'LOC 1','LOC 2' ; ;------------------------------------------------------------------------ ; ; ipltutlat: ; Integer flag, 0 or 1. If ipltutlat = 1, then processor will contour ; fields with ut on the x-axis, latitude on the y-axis, at selected ; locations. At least two model times (mtimes) must be given. ipltutlat = 0 ; ; iutlat_log10: Integer flag for plotting log10 of ut vs latitude contours: ; iutlat_log10 = 0 -> do not plot log10 of any field ; iutlat_log10 = 1 -> plot log10 of species densities only (default) ; iutlat_log10 = 2 -> plot log10 of all fields iutlat_log10=1 ; log10 flag ; ; iutlat_sltmaps: Integer flag, 0 or 1. If iutlat_sltmaps = 1, then ; processor will make map projections at fixed local times given ; by utlat_zphtlon (e.g., utlat_zphtlon = -4.,'SLT12.'). These maps ; are made only when a full day, no more no less, is being processed. ; Map projections are made based on map_global, map_polar, map_satview, ; and map_mollweide (regardless of value of ipltmaps flag). ; (default iutlat_sltmaps = 0) iutlat_sltmaps = 1 ; ; utlat_zphtlon: Up to 73 pairs of vertical surface and longitude at ; which to contour ut vs latitude. utlat_zphtlon(1) may be a pressure ; or height surface, and utlat_zphtlon(2) may be a longitude (-180 to ; +180), 'zm' for local means, or 'SLTxx' for local time xx. ; NOTE: Do NOT use 'LTxxx' for local time (use 'sltxxx' or 'SLTxxx' instead. utlat_zphtlon = -4.,0., 120.,'zm', 2.,'slt12.' ; ;------------------------------------------------------------------------ ; ipltutlon = 0 ; ipltutlon: ; Contour ut on x-axis, longitude on y-axis at selected latitudes and ; pressure or height surfaces. ; ; utlon_zphtlat: ; Selected zp/ht,lat pairs utlon_zphtlat = -4.,40., 2.,40., -4.,-40., 2.,-40. ; ; iutlon_log10: log10 flag for ut vs lon contours. ; iutlon_log10 = 0 -> do not plot log10 of any field ; iutlon_log10 = 1 -> plot log10 of species densities only (default) ; iutlon_log10 = 2 -> plot log10 of all fields iutlon_log10 = 1 ; ;------------------------------------------------------------------------ ; ; ipltxyut: ; Integer flag, 0 or 1. If ipltxyut = 1, then processor will make ; line plots with ut on x-axis and the field on the y-axis at ; selected locations and pressure or height surfaces. ipltxyut = 0 ; ; ixyut_log10: ; Integer flag for plotting log10 of ut vs field profiles: ; ixyut_log10 = 0 -> do not plot log10 of any field ; ixyut_log10 = 1 -> plot log10 of species densities only (default) ; ixyut_log10 = 2 -> plot log10 of all fields ixyut_log10 = 1 ; log10 flag ; ; ixyut_doppler: ; Integer flag, 0 or 1. If ixyut_doppler = 1, then processor will ; contour doppler temperature and uv velocities of emission or oh-band ; fields (e.g., cfields = 'OHB-98','E6300'). It will also make 1d ; vector plots of doppler velocities. (default ixyut_doppler = 0) ixyut_doppler=1 ; if > 0, make doppler t,u,v ; ; idoppler: ; Same as ixyut_doppler above (for compatability with old processor) ; ; xyut_locs: ; Up to 73 pairs of lat,lon locations (floats) at which to make ut vs ; field profiles. xyut_locs(2) longitude may be 'zm' for zonal ; means, or 'ltxx' for local time xx. Use xyut_locs='zm','zm' for ; global means. (nearest lat,lon model grid point will be used, i.e., ; bilinear interpolation between grid points is not available). xyut_locs = 40.,-90., 40.,'zm', 40.,'slt12.', 'zm','zm' ; ; xyut_zpht: Up to 45 log pressure or height surfaces at which to make ; map projections. If xyut_zpht(i) > top of model pressure, then it ; is assumed to be a km height, otherwise plot at nearest vertical ; pressure grid point. If 'hmf2' is specified in xyut_zpht, fields ; are plotted at hmf2 heights (however, 'HMF2' must be in cfields). xyut_zpht = -4.,120.,'hmf2' ; zp -4., 120 km, and at hmf2 heights. ; ; xyut_locname: Optional string array of location names corresponding to ; the locations given by xyut_locname (number of names given must be same ; as number of locations given (number of xyut_locname value pairs). If ; provided, these names will appear in the plot labelling. xyut_locname = 'LOC 1','LOC 2','LOC 3','LOC 4' ; ;sendcdf_xyut = 'machine:path/file.nc' (version 1.2 or later) ; Make a netcdf file containing xyut data according to pltxyut ; namelist parameters (xyut_locs, xyut_zpht, etc). ; File is rcp'd to sendcdf_xyut at end of the run. ;sendcdf_xyut = 'vishnu.hao:/e/foster/tgcmproc/tgcmproc_xyut.nc' ; ;------------------------------------------------------------------------ ; Plotting controls: ; ; outplt: ; String array (1 to 3 values) specifying type of plot file(s) to ; produce (more than one value may be specified). See also sendcgm, ; sendps, etc. ; outplt = 'cgm' ; make cgm (computer graphics metacode) files ; (cgm files may be viewed using the ncar graphics utility idt, ; and edited with the metacode editor med). These files may be ; converted to postscript using ctrans as follows: ; ctrans -d ps.mono file.cgm > file.ps (or use -d ps.color for ; color fill contours). Sendcgm must be set (see below) ; outplt = 'ps' ; make postscript file. These may be viewed with ; any common postscript viewer, e.g., ghostview or pageview. ; (individual frames may be saved using ghostview). These files ; may be sent directly to ps printers using the lp command. ; Sendps must be set (see below) ; outplt = 'x11' ; for interactive X11 plotting. ; outplt = 'cgm' ; ; psmode: ; String specifying either 'port' for portrait postscript, ; or 'land' for landscape postscript (ignored if outplt does not ; include 'ps') (default psmode = 'port'). psmode = 'port' ; ; icolor: ; Single integer, 0 or 1. If icolor = 1, processor will make ; color fill contours, otherwise, contours will be monochrome. ; (default icolor = 0) icolor=0 ; color fill contour flag ; ; ibox_clabs: ; This parameter has no effect (for compatability w/ old processor). ibox_clabs=0 ; box contour line labels ; ; iboxplt: ; Single integer flag, 0 or 1. If iboxplt = 1, draw a box around each ; plot at the outside perimeter of the frame, with tic marks (to assist ; in label design, etc) (default iboxplt = 0). iboxplt=0 ; put box around plot if iboxplt > 0 ; ; ishadeneg: single integer flag, 0 or 1. If ishadeneg=1, then ; monochrome contours will shade negative contour regions ; (default ishadeneg=0) (icolor=0 only) ishadeneg=1 ; shade neg contour areas (monochrome) ; ; multiplt: ; Single integer flag which, if set = 1, requests multiple plots per ; frame, according to ipltrowcol. If multiplt = 0, only one plot will ; appear per frame and ipltrowcol is ignored (default multiplt=0). multiplt=0 ; flag for multiple plots per frame ; ; multiadvfr: ; Single integer flag indicating whether or not frame should be advanced ; between plot types (maps, slices, etc) and ut's (histories). Multiadvfr ; is ignored if multiplt=0 (default multiadvfr=0). ; ; multiadvfr = 0 -> advance frame *only* when page is full according to ; ipltrowcol. ; multiadvfr = 1 -> advance frame with full page, *and* between ; plot types (maps, slices, xy plots) and ut's ; Typically, multiadvfr=1. However, multiadvfr=0 is useful if a time ; series is desired, so the frame is not advanced between ut's. ; NOTE: if you are making only one plot type (lons or lats or maps, etc), ; you should set multiadvfr=1 to insure complete plots are made for ; the last frame if it is not full of plots according to ipltrowcol. ; multiadvfr=0 ; frame advance flag for multiplt ; ; ipltrowcol: ; Two integers specifying the number of rows and columns respectively of ; plots drawn on each frame. ipltrowcol is used only when multiplt=1. ; Note that if row.ne.col then aspect ratio distortion will occur in the ; x direction (row > col), or in the y direction (col > row). Also be ; aware that larger numbers of rows or columns will result in smaller ; plots. Greater than 9 plots per frame (ipltrowcol=3,3) will result in ; very small text labeling (however thezoom feature of idt with cgm files ; is useful for enlarging small plots). ; ; Please note that ipltrowcol = 2,2 or 2,3 work best. Scaling problems ; may develop with other values. ; ipltrowcol = 2,2 ; ; ivec_label: ; Has no effect (for compatability with old processor) ; ; ilab_hq: ; Single integer flag, 0 or 1. If ilab_hq=1, processor will use ; high-quality stroked fonts for labelling (default ilab_hq=0). ; ilab_hq=0 ; high-quality flag for labelling ; ;------------------------------------------------------------------------ ; Output file destinations: ; ; sendcgm: ; Character variable specifying the machine:path address to which the cgm ; output metafile is to be sent. This may be either a directory path or a ; full path including file name. If it is a directory only, the file name ; will be "tgcmproc.cgm". ; ; The metafile is sent to the given location by rcp (remote copy), from the ; executing machine. Therefore the user must insure that rcp is allowed ; between the executing machine and the machine specified in the sendcgm ; i.e., .rhost files must have entries on both machines). Also make sure ; there is enough disk space available on the specified directory -- ; metafiles can get quite large (multiple megabytes) when many frames (say, ; over 100) are generated. ; ; If there is a failure of the rcp to sendcgm, the plot file will be ; disposed to the mss, and the mss path used will be given in the output ; listing of the run. The rcp will fail if the remote machine is down, ; if permissions are not correct, if the directory does not exist, or if ; the network link between the two machines is down. ; ; Sendcgm is ignored if outplt does not include 'cgm'. Also note that if ; bothsendcgm and sendps are *not* given, plots will not be made (only ; ascii datafile will be made, assuming senddat is provided). ; sendcgm = 'vishnu.hao:/d/foster/tgcmvis/tgcmproc/f90/tgcmproc.cgm' ; ; sendps: ; Character variable specifying the machine:path address to which the ; postscript output plot file is to be sent. This may be either a directory ; path or a full path including file name. If it is a directory only, the ; file name will be "tgcmproc.ps". ; ; The ps file is sent to the given location by rcp (remote copy), from the ; executing machine. Therefore the user must insure that rcp is allowed ; between the executing machine and the machine specified in the sendps ; (i.e., .rhost files must have entries on both machines). Also make sure ; there is enough disk space available on the specified directory -- ; postscript files can get quite large (multiple megabytes) when many ; frames (say, over 20) are generated. ; ; If there is a failure of the rcp to sendps, the file will be disposed ; to the mss, and the mss path used will be given in the output listing ; of the run. The rcp will fail if the remote machine is down, if ; permissions are not correct, if the directory does not exist, or if ; the network link between the two machines is down. ; ; Sendps is ignored if outplt does not include 'ps'. Also note that if both ; sendcgm and sendps are *not* given, plots will not be made (only ascii ; datafile will be made, assuming senddat is provided). ; sendps = 'vishnu.hao:/d/foster/tgcmvis/tgcmproc/f90/tgcmproc.ps' ; ; senddat: ; Character variable specifying the machine:path address to which the ascii ; data output file is to be sent. This may be either a directory path or a ; full path including file name. If it is a directory only, the file name ; will be "tgcmproc.dat". An ascii data file will *not* be generated if ; senddat is not given. ; ; The data file is sent to the given location by rcp (remote copy), from the ; executing machine. Therefore the user must insure that rcp is allowed ; between the executing machine and the machine specified in the sendps ; (i.e., .rhost files must have entries on both machines). Also make sure ; there is enough disk space available on the specified directory. ; ; If there is a failure of the rcp to senddat, the data file will be ; disposed to the mss, and the mss path used will be given in the output ; listing of the run. The rcp will fail if the remote machine is down, ; if permissions are not correct, if the directory does not exist, or if ; the network link between the two machines is down. ; ; The basic format of the ascii data file is: for *each* *plot* produced, ; four 80-char header lines are appended to the file followed by the x and ; y coordinates values, followed by the data (with x varying first). The ; data is written with a 6e13.5 format statement. See hao ~foster/tgcmvis/ ; pltdat for an example idl code that reads and plots from these data files. ; ; If you are running the processor to get ascii output data only, you should ; *not* provide sendcgm or sendps. This way the processor will not produce ; graphics, saving probably 90% of the cpu time. ; senddat = 'vishnu.hao:/d/foster/tgcmvis/tgcmproc/f90/tgcmproc.dat' ; ; sendxdr: ; Character variable specifying the machine:path address to which xdr output ; data file is to be sent. This may be either a directory path or a full ; pathincluding file name. If it is a directory only, the file name will be ; "tgcmproc.xdr". ; ; Xdr is "transparent data format", meaning is it machine transparent. Any ; machine that supports xdr can read these files which are written on the ; ncar cray's. These are binary files, and so are much smaller that the ; ascii datafiles (see senddat and senddatms). ; ; The xdr files written by tgcmproc are readable by IDL. The following idl ; code fragment will read a frame from an xdr file written by tgcmproc, and ; create a frame structure: ; ; frsize = 0 ; readu,lu,frsize ; hdr1='' & hdr2='' & hdr3='' & hdr4='' ; readu,lu,hdr1,hdr2,hdr3,hdr4 ; nx = 0 & xlab='' & readu,lu,nx,xlab ; xx = fltarr(nx) & readu,lu,xx ; ny = 0 & ylab='' & readu,lu,ny,ylab ; yy = fltarr(ny) & readu,lu,yy ; f = fltarr(nx,ny) & readu,lu,f ; frame = { $ ; size:frsize, $ frame size (only a dummy as of 2/96) ; hdr1:hdr1, $ 1st header line ; hdr2:hdr2, $ 2nd header line ; hdr3:hdr3, $ 3rd header line ; hdr4:hdr4, $ 4th header line ; nx:nx, $ number of x coords ; xlab:xlab, $ x-axis label ; xx:xx, $ x coords ; ny:ny, $ number of y coords ; ylab:ylab, $ y-axis label ; yy:yy, $ y coords ; mtime:mtime, $ model time (day,hr,min) ; f:f $ data ; } ; ; If all frames are the same size (same plot type from tgcmproc), subsequent ; reads can be simply "readu,lu,frame". Also note that you can use the idl ; function point_lun to point to the beginning of the desired frame. When ; all frame structures are the same size, this is effectively a random ; access file. However, idl does not allow use of the assoc function with ; xdr files. As with senddat, if sendxdr is given, but sendcgm and sendps ; are not, the processor will not make plots at all, and will make only ; the output data files. ; ; See idl code in $TGCMROOT/tgcmidl and $TGCMROOT/animxdr. ; ;sendxdr = 'vishnu.hao:/d/foster/tgcmvis/tgcmproc/f90/tgcmproc.xdr' ; ; sendv5d: ; Character variable like sendcgm, etc., specifying v5d output data ; files. These may be used in subsequent visualizations using vis5d. ;sendv5d = 'vishnu.hao:/d/foster/tgcmvis/tgcmproc/f90/tgcmproc.v5d' ; ; sendms_v5d: ; Optional mss path to which v5d files are to be disposed. ;sendms_v5d = '/FOSTER/tgcm/tgcmproc.v5d' ; ; For vis5d files: ; real :: v5d_zprange(2)=(/spval,spval/), ! zp range (bot,top) ; + v5d_slt=spval ! fixed local time ; character(len=8) :: ; + v5d_vtype = ' ' ! 'reg_zp' or 'ireg_mb' ; ; sendcdf: ; Character variable like sendcgm, etc., specifying netcdf output data ; files. ;sendcdf = 'vishnu.hao:/e/foster/tgcmproc/tgcmproc.nc' ; ; tgcmproc1.7 or later: ; Output files on the disk. Following are defaults, which can be ; overridden by the namelist read file: ; flnm_cgm = "tgcmproc.cgm" ; cgm metacode ; flnm_ps = "tgcmproc.ps" ; postscript ; flnm_dat = "tgcmproc.dat" ; ascii data ; flnm_xdr = "tgcmproc.xdr" ; xdr data ; flnm_bf_dat = "tgcmproc_bf.dat" ; ascii data (Bougher) ; These are useful when making multiple simultaneous runs in the same ; directory. ; ; Tgcmproc1 (1/30/03) or later versions: cdf_htscale or cdf_zprange ; will modify the vertical dimensions of fields saved to netcdf output ; files. These parameters are ignored if sendcdf is not set. ; ; cdf_htscale = bot,top,delta ; user-defined height scale ; cdf_htscale(3) is an optional user-defined height scale (bottom, top, ; delta in km), to which fields will be interpolated before being written ; to the netcdf output file. The coordinate variable on the netcdf file ; will be "hlev". Examples: ; cdf_htscale = 30.,500.,10. ; 30 to 500 km by 10 ; cdf_htscale = 110.,110.,0. ; single height only ; ; cdf_zprange = bot,top ; user defined limits on zp scale ; cdf_zprange(2) is an optional user-defined limit (bottom,top) for the zp ; log pressure dimensions of fields written to the netcdf output file. ; if cdf_zprange(1) is less than the bottom boundary of the history fields, ; it will be reset to the bottom boundary. Likewise, if cdf_zprange(2) is ; greater than the top boundary, it will be set to the top boundary. ; The coordinate variable on the netcdf file will be "zplev". Examples: ; cdf_zprange = -4.,2. ; limit vertical dimension to zp -4 to +2 ; cdf_zprange = -999.,2. ; bottom boundary to zp +2 ; cdf_zprange = -4.,,999. ; zp -4 to top boundary ; cdf_zprange = -5.,-5. ; single zp level ; ; cdf_zonalmean = 1 -> write zonal means to netcdf output file (v1.2 or later). ; ; Notes on tgcmproc netcdf output files: ; ; o Only one netcdf file is written per run of tgcmproc, but it may ; have multiple times (depending on mtimes). ; ; o All fields requested by the cfields input are written to the ; netcdf file, including history fields and derived fields. ; ; o All fields written to the netcdf output file have been "processed", ; i.e., conversion to "full levels" if necessary, units conversion, ; difference fields, etc according to the namelist inputs for the run. ; Global attributes on the file state that the fields were processed ; by tgcmproc, including the value and explanation of the modelhts ; namelist parameter (see below note about geopotential). ; ; o Both cdf_htscale and cdf_zprange are ignored if sendcdf is *not* set. ; ; o Use either cdf_htscale or cdf_zprange, not both in the same run ; (if both are set, cdf_zprange is ignored). ; ; o Certain derived fields have their own special vertical dimension ; (e.g., FOF2 and HMF2 have no vertical dimension, and OH-BAND and ; OH-VIB fields have their own height scale). The vertical dimension ; of these fields is not affected by cdf_zprange or cdf_htscale. ; ; o The geopotential Z field is always in zp coordinates on the netcdf ; output field (i.e., it is not affected by cdf_htscale). It *is* ; however, affected by cdf_zprange. If the namelist parameter modelhts ; was 1, then the Z field is the same as on the input history. However, ; if modelhts was 0, then the Z field was recalculated using varying ; gravity (see sub calchts in proclat.f). The Z field written to the ; netcdf output file was the field used in all height interpolation ; during the tgcmproc run, including any height interpolation done as ; a result of cdf_htscale. The value of modelhts is written on the ; netcdf file as a global attribute. ; ; o Tgcmproc netcdf output files cannot be used to restart the models, ; and cannot be used as input to tgcmproc. They are meant to provide ; "processed" model results to the community, and for input to customized ; IDL and NCL processors. ; ; mgcm_fspath: ; Path to NASA AMES GCM lower boundaries file for mtgcm (mars tgcm): ; (mgcm_fspath is path on file server, e.g., /fs/othrorgs/home0/foster/...) ; ; vtgcm_fspath: ; Path to N2 file for vtgcm (venus tgcm): ; (vtgcm_fspath is path on file server like mgcm_fspath) ; ; For compatability w/ old processor: ; integer :: ; + iproc_sut,iproc_mut, ! for compatability w/ old proc inputs ; + iemis_integ(6), ! for compatability w/ old proc inputs ; + ieohv(10), ! for compatability w/ old proc inputs ; + ibohv(60) ! for compatability w/ old proc inputs ; &end