! jnl file that uses Argo data to make 20-degree isotherm depth maps ! requires input arguments for time range, depth range and lat/lon range ! to run the program in ferret, you will need to type the following line with the various values filled in: ! go fer_tchp time_start time_end lat_min lat_max lon_min lon_max iland station ! If you choose not to give values for the various variables, default ones will be substituted for you. ! If you only want to choose some values, you can, but you cannot skip any values. This means you can ! fill in the first 2 and no others, or if you want to specify the lat/lon ranges, you must fill in values ! for the first 4 variables as well as the lat/lon ranges. ! time values are entered corresponding to monthly values starting with Jan, 2004 ! iland 0=hig res, 1=low res go fland ! station 1=overlay stations, all other values disable cancel/all data cancel/all var cancel/all sym cancel region set window/clear go set_pixel_size 1024 768 set mem/size=80 ! assigning variables to arguments passed in the go command as well as default values let lat_min=`$3%-30%` let lat_max=`$4%0%` let lon_min=`$5%130%` let lon_max=`$6%210%` let time_start=`$1%48%` let time_end=`$2%48%` let iland=`$7%1%` let station=`$8%0%` set mode interpolate PPL DFLTFNT DR ppl conpre @P1@DR ppl axlsze 0.15,.15 ppl axset 1,1,1,1 ppl pen 0,7 ppl pen 1,7 ppl pen 2,13 ppl labset .15,.15,.15 use RG_ArgoClim_Full.nc use climatological_axes let dyn_s = argo_salinity_mean[d=1] + argo_salinity_anomaly[d=1] let dyn_t = argo_temperature_mean[d=1]+argo_temperature_anomaly[d=1] ! setting map scales properly let beq=if (`lon_min`) eq (`lon_max`) then 1 else 0 if `beq` then let lon_max=`lon_max`+360 endif let blm=if (`lon_min`) gt (`lon_max`) then 1 else 0 if `blm` then let lon_max=`lon_max`+360 endif define symbol xdeg `lon_max-lon_min` define symbol ydeg `lat_max-lat_min` define symbol xdegb `($xdeg)`*2 define symbol alasp `($ydeg)/($xdegb)` let wincheck= if `($alasp)` ge 1 then 1 else 0 if `wincheck` then define symbol alasp `($ydeg)/($xdeg)` endif set win/asp=($alasp):axis !set win/asp=0.7 define viewport/xlim=.0,.95/ylim=.4,1 top define viewport/xlim=.0,.95/ylim=.0,.6 bot define region/z=0:1000/y=`lat_min`:`lat_max`/x=`lon_min`:`lon_max` treg set region treg define grid/like=dyn_t dgrd let dyn_p = z[d=1,g=dgrd] let rcheck=`lon_max`-`lon_min` !let new_t=if dyn_t gt 26. then (dyn_t-26.) else 0. let new_t=if dyn_t gt 26. then (dyn_t-26.) let tchp=new_t[z=0:1000@dint] let factor=1024.*4000./10000000. set view top fill/nolab/set/lev=(0,240,20)/pale=default tchp[l=`time_start`:`time_end`@ave]*factor ppl axlabp 0,-1 ppl ylab ppl xlab ppl fill con/over/nolab/pen=7 dyn_t[z=0,l=`time_start`:`time_end`@ave] ! now use etopo6 to add bathymetry ! check zonal range to see if using high or low land resoluion if `rcheck gt 120` then if `iland eq 0` then use etopo12_grid.nc shade/over/nokey/nolab/pal=black/lev=(0,10000,10000) btdata12 shade/over/nokey/nolab/palette=lightgreyscale/over/levels=(-1000,0,1000) btdata12 shade/over/nokey/nolab/pal=grey/over/lev=(-200,0,200) btdata12 endif if `iland eq 1` then use etopo12_grid.nc fill/over/nokey/nolab/palette=black/levels=(0,10000,10000) btdata12 endif endif if `rcheck le 120` then if `iland eq 0` then use etopo6_grid.nc fill/over/nokey/nolab/palette=black/levels=(0,10000,10000) btdata fill/over/nokey/nolab/palette=lightgreyscale/over/levels=(-1000,0,1000) btdata fill/over/nokey/nolab/palette=grey/over/levels=(-200,0,200) btdata else use etopo6_grid.nc fill/over/nokey/nolab/palette=black/levels=(0,10000,10000) btdata endif endif set view bot fill/nolab/set/pale=centered/lev=(-100,100,10) tchp[l=`time_start`:`time_end`@ave]*factor - tchp[gt=month_irreg@mod, l=`time_start`:`time_end`@ave]*factor ppl axlabp 0,-1 ppl ylab ppl xlab ppl fill con/over/nolab/pen=7 dyn_t[z=20,l=`time_start`:`time_end`@ave] ! now use etopo6 to add bathymetry ! check zonal range to see if using high or low land resoluion if `rcheck gt 120` then if `iland eq 0` then use etopo12_grid.nc shade/over/nokey/nolab/pal=black/lev=(0,10000,10000) btdata12 shade/over/nokey/nolab/palette=lightgreyscale/over/levels=(-1000,0,1000) btdata12 shade/over/nokey/nolab/pal=grey/over/lev=(-200,0,200) btdata12 endif if `iland eq 1` then use etopo12_grid.nc fill/over/nokey/nolab/palette=black/levels=(0,10000,10000) btdata12 endif endif if `rcheck le 120` then if `iland eq 0` then use etopo6_grid.nc fill/over/nokey/nolab/palette=black/levels=(0,10000,10000) btdata fill/over/nokey/nolab/palette=lightgreyscale/over/levels=(-1000,0,1000) btdata fill/over/nokey/nolab/palette=grey/over/levels=(-200,0,200) btdata else use etopo6_grid.nc fill/over/nokey/nolab/palette=black/levels=(0,10000,10000) btdata endif endif if `station eq 1` then go fer_temp_station_loc_overlay endif set view top if `station eq 1` then go fer_temp_station_loc_overlay endif say Plot is finished say To adjust parameters, use the command line to pass arguments say For this file, the form to pass arguments is say go fer_tchp time_start time_end lat_min lat_max lon_min lon_max iland station