New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 4394 for branches/2013/dev_MERGE_2013/NEMOGCM/CONFIG/ORCA2_LIM/IDL_scripts/std_plot_all.pro – NEMO

Ignore:
Timestamp:
2014-02-03T14:38:45+01:00 (10 years ago)
Author:
flavoni
Message:

add time series of FRAM STRAIT, and update IDL plots, see ticket: #724

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2013/dev_MERGE_2013/NEMOGCM/CONFIG/ORCA2_LIM/IDL_scripts/std_plot_all.pro

    r4320 r4394  
    103103;climatology  
    104104  QNET = read_ncdf(getenv('VAR_FLUX'), filename = std_file_oaflux ) 
    105  
     105  
    106106; erp (evaporation damping) 
    107107  ERP1 = read_ncdf(getenv('VAR1_ERP'), allrecords = allrec, direc = 't', filename = std_file1_T ) 
    108108  ERP1 = {arr:ERP1.arr * 86400., unit:'mm/day', grid:'T'} 
    109109  IF std_file2_T NE std_file1_T THEN BEGIN 
    110     ERP2 = read_ncdf(getenv('VAR2_ERP'), allrecords = allrec, direc = 't', filename = std_file2_T ) 
    111     ERP2 = {arr:ERP2.arr * 86400., unit:'mm/day', grid:'T'} 
     110     ERP2 = read_ncdf(getenv('VAR2_ERP'), allrecords = allrec, direc = 't', filename = std_file2_T ) 
     111     ERP2 = {arr:ERP2.arr * 86400., unit:'mm/day', grid:'T'} 
    112112  ENDIF ELSE ERP2 = {arr:-1} 
    113  
     113  
    114114; emp (evaporation minus precipitation) 
    115115  EMP1 = read_ncdf(getenv('VAR1_EMP'), allrecords = allrec, direc = 't', filename = std_file1_T ) 
    116116  EMP1 = {arr:EMP1.arr * 86400., unit:'mm/day', grid:'T'} 
    117   IF std_file2_T NE std_file1_T THEN BEGIN 
    118     EMP2 = read_ncdf(getenv('VAR2_EMP'), allrecords = allrec, direc = 't', filename = std_file2_T ) 
    119     EMP2 = {arr:EMP2.arr * 86400., unit:'mm/day', grid:'T'} 
    120   ENDIF ELSE EMP2 = {arr:-1} 
    121    
    122 ;mixed layer depth 
    123   MLD1 = read_ncdf(getenv('VAR1_MLD'), allrecords = allrec, direc = 't', filename = std_file1_T ) ; 10 m 
    124   IF std_file2_T NE std_file1_T THEN BEGIN 
    125     MLD2 = read_ncdf(getenv('VAR2_MLD'), allrecords = allrec, direc = 't', filename = std_file2_T ) ; 10 m 
    126   ENDIF ELSE MLD2 = {arr:-1} 
    127 ;climatology  
    128   MLD = read_ncdf(getenv('VAR_MLD'), filename = std_file_mld ) 
    129  
    130 ; velocities 
    131   U1 = read_ncdf(getenv('VAR1_U'), allrecords = allrec, direc = 't', filename = std_file1_U ) 
    132   IF strlowcase(getenv('VAR1_U')) EQ 'uocetr_eff' THEN BEGIN 
    133     U1.arr = U1.arr / e3u_3d(/e2) * umask() 
    134     U1.unit = 'm/s' 
    135   ENDIF  
    136   IF std_file2_U NE std_file1_U THEN BEGIN 
    137     U2 = read_ncdf(getenv('VAR2_U'), allrecords = allrec, direc = 't', filename = std_file2_U ) 
    138     IF strlowcase(getenv('VAR2_U')) EQ 'uocetr_eff' THEN BEGIN 
    139       U2.arr = U2.arr / e3u_3d(/e2) * umask() 
    140       U2.unit = 'm/s' 
    141     ENDIF  
    142   ENDIF ELSE U2 = {arr:-1} 
    143 ; 
    144   V1 = read_ncdf(getenv('VAR1_V'), allrecords = allrec, direc = 't', filename = std_file1_V ) 
    145   IF strlowcase(getenv('VAR1_V')) EQ 'vocetr_eff' THEN BEGIN 
    146     V1.arr = V1.arr / e3v_3d(/e1) * vmask() 
    147     V1.unit = 'm/s' 
    148   ENDIF  
    149   IF std_file2_V NE std_file1_V THEN BEGIN 
    150     V2 = read_ncdf(getenv('VAR2_V'), allrecords = allrec, direc = 't', filename = std_file2_V ) 
    151     IF strlowcase(getenv('VAR2_V')) EQ 'vocetr_eff' THEN BEGIN 
    152       V2.arr = V2.arr / e3v_3d(/e1) * vmask() 
    153       V2.unit = 'm/s' 
    154     ENDIF  
    155   ENDIF ELSE V2 = {arr:-1} 
     117   IF std_file2_T NE std_file1_T THEN BEGIN 
     118     EMP2 = read_ncdf(getenv('VAR2_EMP'), allrecords = allrec, direc = 't', filename = std_file2_T ) 
     119     EMP2 = {arr:EMP2.arr * 86400., unit:'mm/day', grid:'T'} 
     120   ENDIF ELSE EMP2 = {arr:-1} 
     121    
     122 ;mixed layer depth 
     123   MLD1 = read_ncdf(getenv('VAR1_MLD'), allrecords = allrec, direc = 't', filename = std_file1_T ) ; 10 m 
     124   IF std_file2_T NE std_file1_T THEN BEGIN 
     125     MLD2 = read_ncdf(getenv('VAR2_MLD'), allrecords = allrec, direc = 't', filename = std_file2_T ) ; 10 m 
     126   ENDIF ELSE MLD2 = {arr:-1} 
     127 ;climatology  
     128   MLD = read_ncdf(getenv('VAR_MLD'), filename = std_file_mld ) 
     129 
     130 ; velocities 
     131   U1 = read_ncdf(getenv('VAR1_U'), allrecords = allrec, direc = 't', filename = std_file1_U ) 
     132   ; old formulation: we tested variable name 
     133   ; IF strlowcase(getenv('VAR1_U')) EQ 'uocetr_eff' OR strlowcase(getenv('VAR1_U')) EQ 'vozoeftr' THEN BEGIN 
     134   IF strlowcase(U1.unit) EQ 'm3/s' THEN BEGIN 
     135     ;IF it is a transport it is transofrmed in velocity 
     136     U1.arr = U1.arr / e3u_3d(/e2) * umask() 
     137     U1.unit = 'm/s' 
     138   ENDIF  
     139   IF std_file2_U NE std_file1_U THEN BEGIN 
     140     U2 = read_ncdf(getenv('VAR2_U'), allrecords = allrec, direc = 't', filename = std_file2_U ) 
     141     ; old formulation: we tested variable name 
     142     ; IF strlowcase(getenv('VAR2_U')) EQ 'uocetr_eff' OR strlowcase(getenv('VAR2_U')) EQ 'vozoeftr' THEN BEGIN 
     143     IF strlowcase(U2.unit) EQ 'm3/s' THEN BEGIN 
     144       U2.arr = U2.arr / e3u_3d(/e2) * umask() 
     145       U2.unit = 'm/s' 
     146     ENDIF  
     147   ENDIF ELSE U2 = {arr:-1} 
     148; 
     149   V1 = read_ncdf(getenv('VAR1_V'), allrecords = allrec, direc = 't', filename = std_file1_V ) 
     150   ; old formulation: we tested variable name 
     151   ; IF strlowcase(getenv('VAR1_V')) EQ 'vocetr_eff' OR strlowcase(getenv('VAR1_V')) EQ 'vomeeftr' THEN BEGIN 
     152   IF strlowcase(V1.unit) EQ 'm3/s' THEN BEGIN ; test on unit to understand if it is a transport or velocity 
     153     ;IF it is a transport it is transofrmed in velocity 
     154     V1.arr = V1.arr / e3v_3d(/e1) * vmask() 
     155     V1.unit = 'm/s' 
     156   ENDIF  
     157   IF std_file2_V NE std_file1_V THEN BEGIN 
     158     V2 = read_ncdf(getenv('VAR2_V'), allrecords = allrec, direc = 't', filename = std_file2_V ) 
     159     ; old formulation 
     160     ; IF strlowcase(getenv('VAR2_V')) EQ 'vocetr_eff' OR strlowcase(getenv('VAR2_V')) EQ 'vozoeftr' THEN BEGIN 
     161     IF strlowcase(V2.unit) EQ 'm3/s' THEN BEGIN  
     162       V2.arr = V2.arr / e3v_3d(/e1) * vmask() 
     163       V2.unit = 'm/s' 
     164     ENDIF  
     165   ENDIF ELSE V2 = {arr:-1} 
    156166 
    157167; ice 
     
    256266  cnt = cnt+1   &   blabla = 'Erp salinity damping term' 
    257267  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_erp, ERP1, ERP2, _extra = ex 
    258  
     268; 
    259269  cnt = cnt+1   &   blabla = 'Evaporation - Precipitation - Runoff term' 
    260270  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_emp, EMP1, EMP2, _extra = ex 
    261  
     271; 
    262272  cnt = cnt+1   &   blabla = 'Net heat flux' 
    263273  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_qnet, Q1, Q2, QNET, _extra = ex 
    264  
     274; 
    265275  cnt = cnt+1   &   blabla = 'Meridionnal Heat Transport' 
    266276  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_mht, Q1.arr+geo, Q2.arr+geo, masknp, std_file_msksub, _extra = ex 
    267  
     277; 
    268278  cnt = cnt+1   &   blabla = 'Global Barotropic stream Function' 
    269279  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_bsf, U1, U2, _extra = ex 
    270  
     280; 
    271281  cnt = cnt+1   &   blabla = 'mean Temperature diff with New Reynolds' 
    272282  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_sst, T1, T2, TRey, _extra = ex 
    273  
     283; 
    274284  cnt = cnt+1   &   blabla = 'mean Salinity diff with Levitus' 
    275285  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_sss, S1, S2, SLev, _extra = ex 
    276  
     286; 
    277287  cnt = cnt+1   &   blabla = 'Arctic mean Salinity diff with Levitus' 
    278288  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_ArcSal, S1, SLev, _extra = ex        
    279  
     289; 
    280290  cnt = cnt+1   &   blabla = 'Arctic mean Salinity diff with Levitus and exp2' 
    281291  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_ArcSal, S1, S2, SLev, _extra = ex 
    282  
     292; 
    283293  cnt = cnt+1   &   blabla = 'Arctic mean Salinity diff with Levitus at z=100 meters' 
    284294  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_ArcSal, S1, SLev, /z100, _extra = ex        
    285   
     295;  
    286296  cnt = cnt+1   &   blabla = 'Arctic mean Salinity diff with Levitus and exp2 at z=100 meters' 
    287297  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_ArcSal, S1, S2, SLev, /z100, _extra = ex 
    288  
     298; 
    289299  cnt = cnt+1   &   blabla = 'mean Temperature diff with Levitus at z=100 meters' 
    290300  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_T100m, T1, T2, Tlev, _extra = ex 
    291    
     301;   
    292302  cnt = cnt+1   &   blabla = 'mean Salinity diff with Levitus at z=100 meters' 
    293303  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_S100m, S1, S2, SLev, _extra = ex 
    294    
     304;   
    295305  cnt = cnt+1   &   blabla = 'Mixed layer depth' 
    296306  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_mld, MLD1, MLD, _extra = ex 
    297  
     307; 
    298308  cnt = cnt+1   &   blabla = 'Mixed layer depth differences' 
    299309  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_mld, MLD1, MLD2, MLD, _extra = ex 
    300  
     310; 
    301311  cnt = cnt+1   &   blabla = 'Zonal mean Mixed layer depth' 
    302312  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_ZonMld, MLD1, MLD2, MLD, _extra = ex 
    303    
     313;   
    304314  cnt = cnt+1   &   blabla = 'Zonal mean Temperature diff with Levitus: Global' 
    305315  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_zonal_T, T1, T2, TLev, _extra = ex 
    306  
     316; 
    307317  cnt = cnt+1   &   blabla = 'Zonal mean Temperature diff with Levitus: Atlantic' 
    308318  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_zonal_T, T1, T2, TLev, SUBBASIN = 'Atl', _extra = ex 
    309    
     319;   
    310320  cnt = cnt+1   &   blabla = 'Zonal mean Temperature diff with Levitus: Indian' 
    311321  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_zonal_T, T1, T2, TLev, SUBBASIN = 'Ind', _extra = ex 
    312    
     322;   
    313323  cnt = cnt+1   &   blabla = 'Zonal mean Temperature diff with Levitus: Pacific' 
    314324  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_zonal_T, T1, T2, TLev, SUBBASIN = 'Pac', _extra = ex 
    315  
     325; 
    316326  cnt = cnt+1   &   blabla = 'Zonal mean Salinity diff with Levitus: Global' 
    317327  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_zonal_S, S1, S2, SLev, _extra = ex 
    318  
     328; 
    319329  cnt = cnt+1   &   blabla = 'Zonal mean Salinity diff with Levitus: Atlantic' 
    320330  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_zonal_S, S1, S2, SLev, SUBBASIN = 'Atl', _extra = ex 
    321  
     331; 
    322332  cnt = cnt+1   &   blabla = 'Zonal mean Salinity diff with Levitus: Indian' 
    323333  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_zonal_S, S1, S2, SLev, SUBBASIN = 'Ind', _extra = ex  
    324  
     334; 
    325335  cnt = cnt+1   &   blabla = 'Zonal mean Salinity diff with Levitus: Pacific' 
    326336  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_zonal_S, S1, S2, SLev, SUBBASIN = 'Pac', _extra = ex  
    327    
     337;   
    328338;  cnt = cnt+1   &   blabla = 'Arctic Ice Thickness: MARCH' 
    329339;  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_IceThick, Ithi_march_1, Ithi_march_2, /ARC, /MARCH, _extra = ex 
     
    331341  cnt = cnt+1   &   blabla = 'Arctic Ice Thickness: APRIL' 
    332342  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_IceThick, Ithi_april_1, Ithi_april_2, /ARC, /APRIL, _extra = ex 
    333  
     343; 
    334344  cnt = cnt+1   &   blabla = 'Arctic Ice Thickness: SEPT' 
    335345  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_IceThick, Ithi_sept_1, Ithi_sept_2, /ARC, /SEPT, _extra = ex 
    336    
     346;   
    337347;  cnt = cnt+1   &   blabla = 'Antarctic Ice Thickness: MARCH' 
    338348;  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_IceThick, Ithi_march_1, Ithi_march_2, /ANT, /MARCH, _extra = ex 
     
    340350  cnt = cnt+1   &   blabla = 'Antarctic Ice Thickness: APRIL' 
    341351  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_IceThick, Ithi_april_1, Ithi_april_2, /ANT, /APRIL, _extra = ex 
    342  
     352; 
    343353  cnt = cnt+1   &   blabla = 'Antarctic Ice Thickness: SEPT' 
    344354  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_IceThick, Ithi_sept_1, Ithi_sept_2, /ANT, /SEPT, _extra = ex 
    345  
     355; 
    346356  cnt = cnt+1   &   blabla = 'Arctic Ice Fraction: MARCH' 
    347357  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_IceFrac, Ifra_march_1, Ifra_march_2, /ARC, /MARCH, _extra = ex 
    348    
     358;   
    349359  cnt = cnt+1   &   blabla = 'Arctic Ice Fraction: SEPT' 
    350360  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_IceFrac, Ifra_sept_1, Ifra_sept_2, /ARC, /SEPT, _extra = ex 
    351    
     361;   
    352362  cnt = cnt+1   &   blabla = 'Antarctic Ice Fraction: MARCH' 
    353363  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_IceFrac, Ifra_march_1, Ifra_march_2, /ANT, /MARCH, _extra = ex 
    354  
     364; 
    355365  cnt = cnt+1   &   blabla = 'Antarctic Ice Fraction: SEPT' 
    356366  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_IceFrac, Ifra_sept_1, Ifra_sept_2, /ANT, /SEPT, _extra = ex 
    357 ;; SF non funziona, dice che deve essere una struttura e non e!!!! 
    358 ;;SF  cnt = cnt+1   &   blabla = 'Arctic SNOW Thickness: APRIL' 
    359 ;;SF  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_SnowThick, Isnow_april_1, Isnow_april_2, /ARC, /APRIL, _extra = ex 
     367;; SF need to be reviewed, it does not work, it need a structure!!!! 
     368;; SF 
     369;; SF  cnt = cnt+1   &   blabla = 'Arctic SNOW Thickness: APRIL' 
     370;; SF  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_SnowThick, Isnow_april_1, Isnow_april_2, /ARC, /APRIL, _extra = ex 
    360371;; SF  
    361372;; SF   cnt = cnt+1   &   blabla = 'Arctic SNOW Thickness: SEPT' 
     
    368379;; SF   IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_SnowThick, Isnow_sept_1, Isnow_sept_2, /ANT, /SEPT, _extra = ex 
    369380;  
    370 ;  cnt = cnt+1   &   blabla = 'Arctic Ice Extend: ' 
    371 ;  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_IceExt, Ifra_1, Ifra_2, masknp, /ARC,  _extra = ex 
    372    
    373 ;  cnt = cnt+1   &   blabla = 'Antarctic Ice Extend: ' 
    374 ;  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_IceExt, Ifra_1, Ifra_2, masknp, /ANT,  _extra = ex 
     381; NOT NEEDED, only for TIME SERIES NOW ICE EXTEND 
     382;SF  cnt = cnt+1   &   blabla = 'Arctic Ice Extend: ' 
     383;SF  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_IceExt, Ifra_1, Ifra_2, masknp, /ARC,  _extra = ex 
     384;SF   
     385;SF  cnt = cnt+1   &   blabla = 'Antarctic Ice Extend: ' 
     386;SF  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_IceExt, Ifra_1, Ifra_2, masknp, /ANT,  _extra = ex 
    375387 
    376388  cnt = cnt+1   &   blabla = 'Meridional stream Function: Global (no Med)' 
    377389  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_msf, V1, V2, SUBBASIN = 'GloNoMed', _extra = ex 
    378  
     390  
    379391  cnt = cnt+1   &   blabla = 'Meridional stream Function: Atlantic' 
    380392  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_msf, V1, V2, SUBBASIN = 'Atl', _extra = ex 
    381  
     393  
    382394  cnt = cnt+1   &   blabla = 'Meridional stream Function: Indian' 
    383395  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_msf, V1, V2, SUBBASIN = 'Ind', _extra = ex 
    384  
     396  
    385397  cnt = cnt+1   &   blabla = 'Meridional stream Function: Indo-Pacific' 
    386398  IF doplot EQ cnt OR doplot EQ 0 THEN std_plot_msf, V1, V2, SUBBASIN = 'IndoPac', _extra = ex 
Note: See TracChangeset for help on using the changeset viewer.