Ignore:
Timestamp:
10/13/23 15:43:31 (7 months ago)
Author:
omamce
Message:

O.M. : TOOLS/MOSAIX - Cosmetic changes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • TOOLS/WATER_BUDGET/ATM_waterbudget.py

    r6647 r6651  
    6868tar_restart_end_ATM=None ; tar_restart_end_DYN=None ; tar_restart_end_SRF=None 
    6969tar_restart_end_RUN=None ; tar_restart_end_OCE=None ; tar_restart_end_ICE=None 
    70 ContinueOnError=False ; ErrorCount=0 ; SortIco = False 
     70ContinueOnError=False ; ErrorCount=0 # ; SortIco = False 
    7171 
    7272## 
     
    177177                      'OCE_rho_liq':str(OCE_rho_liq), 'ATM_rho':str(ATM_rho), 'SRF_rho':str(SRF_rho), 'RUN_rho':str(RUN_rho)} 
    178178 
    179 config['Config'] = { 'ContinueOnError':str(ContinueOnError), 'SortIco':str(SortIco), 'TestInterp':str(TestInterp), 'readPrec':str(readPrec) } 
     179config['Config'] = { 'ContinueOnError':str(ContinueOnError), 'TestInterp':str(TestInterp), 'readPrec':str(readPrec) } 
    180180 
    181181## -------------------------- 
     
    236236if readPrec == float : 
    237237    def rprec (tab) : return tab 
    238 else :  
     238else                 : 
    239239    def rprec (tab) : return tab.astype(readPrec).astype(float) 
    240240     
     
    270270 
    271271echo ( f'{ContinueOnError = }' ) 
    272 echo ( f'{SortIco         = }' ) 
    273272echo ( f'{readPrec        = }' ) 
    274273 
     
    624623config_out.close () 
    625624 
    626 if ICO : 
    627     if SortIco :  
    628         # Creation d'une clef de tri pour les restarts (pour chaque restart !) 
    629         DYN_beg_keysort = np.lexsort ( (d_DYN_beg['lat_mesh'], d_DYN_beg['lon_mesh'] ) ) 
    630         ATM_beg_keysort = np.lexsort ( (d_ATM_beg['latitude'], d_ATM_beg['longitude']) ) 
    631         SRF_beg_keysort = np.lexsort ( (d_SRF_beg['nav_lat' ], d_SRF_beg['nav_lon']  ) ) 
    632         DYN_end_keysort = np.lexsort ( (d_DYN_end['lat_mesh'], d_DYN_end['lon_mesh'] ) ) 
    633         ATM_end_keysort = np.lexsort ( (d_ATM_end['latitude'], d_ATM_end['longitude']) ) 
    634         SRF_end_keysort = np.lexsort ( (d_SRF_end['nav_lat' ], d_SRF_end['nav_lon']  ) ) 
    635          
    636         if ATM_HIS == 'ico' : 
    637             ATM_his_keysort = np.lexsort ( (d_ATM_his['lat'], d_ATM_his['lon'] ) ) 
    638         if SRF_HIS == 'ico' : 
    639             SRF_his_keysort = np.lexsort ( (d_SRF_his['lat'], d_SRF_his['lon'] ) ) 
    640             RUN_his_keysort = SRF_his_keysort 
    641     else :  
    642         DYN_beg_keysort = np.arange ( len ( d_DYN_beg['lat_mesh'] ) ) 
    643         ATM_beg_keysort = DYN_beg_keysort 
    644         SRF_beg_keysort = DYN_beg_keysort 
    645  
    646         DYN_end_keysort = DYN_beg_keysort 
    647         ATM_end_keysort = DYN_beg_keysort 
    648         SRF_end_keysort = DYN_beg_keysort 
    649      
    650         ATM_his_keysort = DYN_beg_keysort 
    651         SRF_his_keysort = DYN_beg_keysort 
    652         RUN_his_keysort = SRF_his_keysort 
    653          
    654625# ATM grid with cell surfaces 
    655626if LMDZ : 
     
    657628    ATM_lat       = lmdz.geo2point (   rprec (d_ATM_his ['lat'])+0*rprec (d_ATM_his ['lon']), dim1D='cell' ) 
    658629    ATM_lon       = lmdz.geo2point ( 0*rprec (d_ATM_his ['lat'])+  rprec (d_ATM_his ['lon']), dim1D='cell' ) 
    659     ATM_aire      = lmdz.geo2point ( rprec (d_ATM_his ['aire'] )    [0], cumulPoles=True, dim1D='cell' ) 
     630    ATM_aire      = lmdz.geo2point ( rprec (d_ATM_his ['aire']     [0]), cumulPoles=True, dim1D='cell' ) 
    660631    ATM_fter      = lmdz.geo2point ( rprec (d_ATM_his ['fract_ter'][0]), dim1D='cell' ) 
    661632    ATM_foce      = lmdz.geo2point ( rprec (d_ATM_his ['fract_oce'][0]), dim1D='cell' ) 
     
    685656    if ATM_HIS == 'ico' : 
    686657        echo ( 'ATM areas and fractions on ICO grid' ) 
    687         ATM_aire =  rprec (d_ATM_his ['aire']     [0])[ATM_his_keysort].squeeze() 
    688         ATM_lat  =  rprec (d_ATM_his ['lat']         )[ATM_his_keysort] 
    689         ATM_lon  =  rprec (d_ATM_his ['lon']         )[ATM_his_keysort] 
    690         ATM_fter =  rprec (d_ATM_his ['fract_ter'][0])[ATM_his_keysort] 
    691         ATM_foce =  rprec (d_ATM_his ['fract_oce'][0])[ATM_his_keysort] 
    692         ATM_fsic =  rprec (d_ATM_his ['fract_sic'][0])[ATM_his_keysort] 
    693         ATM_flic =  rprec (d_ATM_his ['fract_lic'][0])[ATM_his_keysort] 
     658        ATM_aire =  rprec (d_ATM_his ['aire']     [0]).squeeze() 
     659        ATM_lat  =  rprec (d_ATM_his ['lat']         ) 
     660        ATM_lon  =  rprec (d_ATM_his ['lon']         ) 
     661        ATM_fter =  rprec (d_ATM_his ['fract_ter'][0]) 
     662        ATM_foce =  rprec (d_ATM_his ['fract_oce'][0]) 
     663        ATM_fsic =  rprec (d_ATM_his ['fract_sic'][0]) 
     664        ATM_flic =  rprec (d_ATM_his ['fract_lic'][0]) 
    694665 
    695666    if SRF_HIS == 'latlon' : 
     
    713684    if SRF_HIS == 'ico' : 
    714685        echo ( 'SRF areas and fractions on latlon grid' ) 
    715         SRF_lat       =  rprec (d_SRF_his ['lat']     ) [SRF_his_keysort] 
    716         SRF_lon       =  rprec (d_SRF_his ['lon']     ) [SRF_his_keysort] 
    717         SRF_areas     =  rprec (d_SRF_his ['Areas']   ) [SRF_his_keysort]  
    718         SRF_contfrac  =  rprec (d_SRF_his ['Contfrac']) [SRF_his_keysort] 
     686        SRF_lat       =  rprec (d_SRF_his ['lat']     ) 
     687        SRF_lon       =  rprec (d_SRF_his ['lon']     ) 
     688        SRF_areas     =  rprec (d_SRF_his ['Areas']   )  
     689        SRF_contfrac  =  rprec (d_SRF_his ['Contfrac']) 
    719690        SRF_aire      =  SRF_areas * SRF_contfrac 
    720691 
     
    745716        DYN_aire_keysort = np.arange ( len ( d_DYN_aire['lat'] ) ) 
    746717             
    747     DYN_lat = d_DYN_aire['lat'][DYN_aire_keysort] 
    748     DYN_lon = d_DYN_aire['lon'][DYN_aire_keysort] 
    749  
    750     DYN_aire = d_DYN_aire['aire'][DYN_aire_keysort] 
    751     DYN_fsea = d_DYN_aire['fract_oce'][DYN_aire_keysort] + d_DYN_aire['fract_sic'][DYN_aire_keysort] 
     718    DYN_lat = d_DYN_aire['lat'] 
     719    DYN_lon = d_DYN_aire['lon'] 
     720 
     721    DYN_aire = d_DYN_aire['aire'] 
     722    DYN_fsea = d_DYN_aire['fract_oce'] + d_DYN_aire['fract_sic'] 
    752723    DYN_flnd = 1.0 - DYN_fsea 
    753     DYN_fter = d_ATM_beg['FTER'][ATM_beg_keysort] 
    754     DYN_flic = d_ATM_beg['FLIC'][ATM_beg_keysort] 
     724    DYN_fter = d_ATM_beg['FTER'] 
     725    DYN_flic = d_ATM_beg['FLIC'] 
    755726    DYN_aire_fter = DYN_aire * DYN_fter 
    756727     
     
    782753def SRF_stock_int (stock) : 
    783754    '''Integrate (* surface) stock on land grid''' 
    784     #SRF_stock_int  = wu.Ksum (  ( (stock * DYN_aire_fter).to_masked_array().ravel()) ) # Marche avec ICO et lon/lat na 
    785755    SRF_stock_int  = wu.Ksum (  ( (stock * DYN_aire_fter).to_masked_array().ravel()) ) 
    786756    return SRF_stock_int 
     
    845815echo ( 'Surface pressure' ) 
    846816if ICO : 
    847     DYN_psol_beg = d_DYN_beg['ps'][DYN_beg_keysort] 
    848     DYN_psol_end = d_DYN_end['ps'][DYN_end_keysort] 
     817    DYN_psol_beg = d_DYN_beg['ps'] 
     818    DYN_psol_end = d_DYN_end['ps'] 
    849819if LMDZ :  
    850820    DYN_psol_beg = lmdz.geo2point ( d_DYN_beg['ps'].isel(rlonv=slice(0,-1)), dim1D='cell' ) 
     
    911881    if 'H2Ov_g' in d_DYN_beg.variables : 
    912882        echo ('reading ICO : H2O_g, H2O_l, H2O_s' ) 
    913         DYN_wat_beg = (d_DYN_beg['H2O_g'] + d_DYN_beg['H2O_l'] + d_DYN_beg['H2O_s'])[..., DYN_beg_keysort] 
    914         DYN_wat_end = (d_DYN_end['H2O_g'] + d_DYN_end['H2O_l'] + d_DYN_end['H2O_s'])[..., DYN_beg_keysort] 
     883        DYN_wat_beg = (d_DYN_beg['H2O_g'] + d_DYN_beg['H2O_l'] + d_DYN_beg['H2O_s']) 
     884        DYN_wat_end = (d_DYN_end['H2O_g'] + d_DYN_end['H2O_l'] + d_DYN_end['H2O_s']) 
    915885    elif 'H2O_g' in d_DYN_beg.variables : 
    916886        echo ('reading ICO : H2O_g, H2O_l, H2O_s' ) 
    917         DYN_wat_beg = (d_DYN_beg['H2O_g'] + d_DYN_beg['H2O_l'] + d_DYN_beg['H2O_s'])[..., DYN_beg_keysort] 
    918         DYN_wat_end = (d_DYN_end['H2O_g'] + d_DYN_end['H2O_l'] + d_DYN_end['H2O_s'])[..., DYN_beg_keysort] 
     887        DYN_wat_beg = (d_DYN_beg['H2O_g'] + d_DYN_beg['H2O_l'] + d_DYN_beg['H2O_s']) 
     888        DYN_wat_end = (d_DYN_end['H2O_g'] + d_DYN_end['H2O_l'] + d_DYN_end['H2O_s']) 
    919889    elif 'q' in d_DYN_beg.variables : 
    920890        echo ('reading ICO : q' ) 
    921         DYN_wat_beg = (d_DYN_beg['q'].isel(nq=0) + d_DYN_beg['q'].isel(nq=1) + d_DYN_beg['q'].isel(nq=2) )[..., DYN_beg_keysort] 
    922         DYN_wat_end = (d_DYN_end['q'].isel(nq=0) + d_DYN_end['q'].isel(nq=1) + d_DYN_end['q'].isel(nq=2) )[..., DYN_beg_keysort] 
     891        DYN_wat_beg = (d_DYN_beg['q'].isel(nq=0) + d_DYN_beg['q'].isel(nq=1) + d_DYN_beg['q'].isel(nq=2) ) 
     892        DYN_wat_end = (d_DYN_end['q'].isel(nq=0) + d_DYN_end['q'].isel(nq=1) + d_DYN_end['q'].isel(nq=2) ) 
    923893 
    924894if 'lev' in DYN_wat_beg.dims :  
     
    973943 
    974944if ICO : 
    975      ATM_sno_beg     = ATM_sno_beg    [ATM_beg_keysort] 
    976      ATM_sno_end     = ATM_sno_end    [ATM_end_keysort] 
    977      ATM_qs_beg      = ATM_qs_beg     [ATM_beg_keysort] 
    978      ATM_qs_end      = ATM_qs_end     [ATM_end_keysort] 
    979      ATM_qsol_beg    = ATM_qsol_beg   [ATM_beg_keysort] 
    980      ATM_qs01_beg    = ATM_qs01_beg   [ATM_beg_keysort] 
    981      ATM_qs02_beg    = ATM_qs02_beg   [ATM_beg_keysort] 
    982      ATM_qs03_beg    = ATM_qs03_beg   [ATM_beg_keysort] 
    983      ATM_qs04_beg    = ATM_qs04_beg   [ATM_beg_keysort] 
    984      ATM_qsol_end    = ATM_qsol_end   [ATM_end_keysort] 
    985      ATM_qs01_end    = ATM_qs01_end   [ATM_end_keysort] 
    986      ATM_qs02_end    = ATM_qs02_end   [ATM_end_keysort] 
    987      ATM_qs03_end    = ATM_qs03_end   [ATM_end_keysort] 
    988      ATM_qs04_end    = ATM_qs04_end   [ATM_end_keysort] 
    989      LIC_sno_beg     = LIC_sno_beg    [ATM_beg_keysort] 
    990      LIC_sno_end     = LIC_sno_end    [ATM_end_keysort] 
    991      LIC_runlic0_beg = LIC_runlic0_beg[ATM_beg_keysort] 
    992      LIC_runlic0_end = LIC_runlic0_end[ATM_end_keysort] 
     945     ATM_sno_beg     = ATM_sno_beg     
     946     ATM_sno_end     = ATM_sno_end     
     947     ATM_qs_beg      = ATM_qs_beg      
     948     ATM_qs_end      = ATM_qs_end      
     949     ATM_qsol_beg    = ATM_qsol_beg    
     950     ATM_qs01_beg    = ATM_qs01_beg    
     951     ATM_qs02_beg    = ATM_qs02_beg    
     952     ATM_qs03_beg    = ATM_qs03_beg    
     953     ATM_qs04_beg    = ATM_qs04_beg    
     954     ATM_qsol_end    = ATM_qsol_end    
     955     ATM_qs01_end    = ATM_qs01_end    
     956     ATM_qs02_end    = ATM_qs02_end    
     957     ATM_qs03_end    = ATM_qs03_end    
     958     ATM_qs04_end    = ATM_qs04_end    
     959     LIC_sno_beg     = LIC_sno_beg     
     960     LIC_sno_end     = LIC_sno_end     
     961     LIC_runlic0_beg = LIC_runlic0_beg 
     962     LIC_runlic0_end = LIC_runlic0_end 
    993963    
    994964LIC_qs_beg = ATM_qs02_beg 
     
    11461116    SRF_snow_end        = lmdz.geo2point (SRF_snow_end       , dim1D='cell') 
    11471117    SRF_lakeres_end     = lmdz.geo2point (SRF_lakeres_end    , dim1D='cell') 
    1148    
    1149 if ICO : 
    1150     SRF_tot_watveg_beg  = SRF_tot_watveg_beg  [SRF_beg_keysort] 
    1151     SRF_tot_watsoil_beg = SRF_tot_watsoil_beg [SRF_beg_keysort] 
    1152     SRF_snow_beg        = SRF_snow_beg        [SRF_beg_keysort] 
    1153     SRF_lakeres_beg     = SRF_lakeres_beg     [SRF_beg_keysort] 
    1154     SRF_tot_watveg_end  = SRF_tot_watveg_end  [SRF_end_keysort] 
    1155     SRF_tot_watsoil_end = SRF_tot_watsoil_end [SRF_end_keysort] 
    1156     SRF_snow_end        = SRF_snow_end        [SRF_end_keysort] 
    1157     SRF_lakeres_end     = SRF_lakeres_end     [SRF_end_keysort] 
     1118 
    11581119 
    11591120# Stock dSoilHum dInterce dSWE dStream dFastR dSlowR dLake dPond dFlood 
     
    12521213if ATM_HIS == 'ico' : 
    12531214    echo (' ico case') 
    1254     ATM_wbilo_oce   = rprec (d_ATM_his ['wbilo_oce'])[..., ATM_his_keysort] 
    1255     ATM_wbilo_sic   = rprec (d_ATM_his ['wbilo_sic'])[..., ATM_his_keysort] 
    1256     ATM_wbilo_ter   = rprec (d_ATM_his ['wbilo_ter'])[..., ATM_his_keysort] 
    1257     ATM_wbilo_lic   = rprec (d_ATM_his ['wbilo_lic'])[..., ATM_his_keysort] 
    1258     ATM_runofflic   = rprec (d_ATM_his ['runofflic'])[..., ATM_his_keysort] 
    1259     ATM_fqcalving   = rprec (d_ATM_his ['fqcalving'])[..., ATM_his_keysort] 
    1260     ATM_fqfonte     = rprec (d_ATM_his ['fqfonte']  )[..., ATM_his_keysort] 
    1261     ATM_precip      = rprec (d_ATM_his ['precip']   )[..., ATM_his_keysort] 
    1262     ATM_snowf       = rprec (d_ATM_his ['snow']     )[..., ATM_his_keysort] 
    1263     ATM_evap        = rprec (d_ATM_his ['evap']     )[..., ATM_his_keysort] 
    1264     ATM_wevap_ter   = rprec (d_ATM_his ['wevap_ter'])[..., ATM_his_keysort] 
    1265     ATM_wevap_oce   = rprec (d_ATM_his ['wevap_oce'])[..., ATM_his_keysort] 
    1266     ATM_wevap_lic   = rprec (d_ATM_his ['wevap_lic'])[..., ATM_his_keysort] 
    1267     ATM_wevap_sic   = rprec (d_ATM_his ['wevap_sic'])[..., ATM_his_keysort] 
    1268     ATM_runofflic   = rprec (d_ATM_his ['runofflic'])[..., ATM_his_keysort] 
    1269     ATM_wevap_ter   = rprec (d_ATM_his ['wevap_ter'])[..., ATM_his_keysort] 
    1270     ATM_wevap_oce   = rprec (d_ATM_his ['wevap_oce'])[..., ATM_his_keysort] 
    1271     ATM_wevap_lic   = rprec (d_ATM_his ['wevap_lic'])[..., ATM_his_keysort] 
    1272     ATM_wevap_sic   = rprec (d_ATM_his ['wevap_sic'])[..., ATM_his_keysort] 
    1273     ATM_wrain_ter   = rprec (d_ATM_his ['wrain_ter'])[..., ATM_his_keysort] 
    1274     ATM_wrain_oce   = rprec (d_ATM_his ['wrain_oce'])[..., ATM_his_keysort] 
    1275     ATM_wrain_lic   = rprec (d_ATM_his ['wrain_lic'])[..., ATM_his_keysort] 
    1276     ATM_wrain_sic   = rprec (d_ATM_his ['wrain_sic'])[..., ATM_his_keysort] 
    1277     ATM_wsnow_ter   = rprec (d_ATM_his ['wsnow_ter'])[..., ATM_his_keysort] 
    1278     ATM_wsnow_oce   = rprec (d_ATM_his ['wsnow_oce'])[..., ATM_his_keysort] 
    1279     ATM_wsnow_lic   = rprec (d_ATM_his ['wsnow_lic'])[..., ATM_his_keysort] 
    1280     ATM_wsnow_sic   = rprec (d_ATM_his ['wsnow_sic'])[..., ATM_his_keysort] 
     1215    ATM_wbilo_oce   = rprec (d_ATM_his ['wbilo_oce']) 
     1216    ATM_wbilo_sic   = rprec (d_ATM_his ['wbilo_sic']) 
     1217    ATM_wbilo_ter   = rprec (d_ATM_his ['wbilo_ter']) 
     1218    ATM_wbilo_lic   = rprec (d_ATM_his ['wbilo_lic']) 
     1219    ATM_runofflic   = rprec (d_ATM_his ['runofflic']) 
     1220    ATM_fqcalving   = rprec (d_ATM_his ['fqcalving']) 
     1221    ATM_fqfonte     = rprec (d_ATM_his ['fqfonte']  ) 
     1222    ATM_precip      = rprec (d_ATM_his ['precip']   ) 
     1223    ATM_snowf       = rprec (d_ATM_his ['snow']     ) 
     1224    ATM_evap        = rprec (d_ATM_his ['evap']     ) 
     1225    ATM_wevap_ter   = rprec (d_ATM_his ['wevap_ter']) 
     1226    ATM_wevap_oce   = rprec (d_ATM_his ['wevap_oce']) 
     1227    ATM_wevap_lic   = rprec (d_ATM_his ['wevap_lic']) 
     1228    ATM_wevap_sic   = rprec (d_ATM_his ['wevap_sic']) 
     1229    ATM_runofflic   = rprec (d_ATM_his ['runofflic']) 
     1230    ATM_wevap_ter   = rprec (d_ATM_his ['wevap_ter']) 
     1231    ATM_wevap_oce   = rprec (d_ATM_his ['wevap_oce']) 
     1232    ATM_wevap_lic   = rprec (d_ATM_his ['wevap_lic']) 
     1233    ATM_wevap_sic   = rprec (d_ATM_his ['wevap_sic']) 
     1234    ATM_wrain_ter   = rprec (d_ATM_his ['wrain_ter']) 
     1235    ATM_wrain_oce   = rprec (d_ATM_his ['wrain_oce']) 
     1236    ATM_wrain_lic   = rprec (d_ATM_his ['wrain_lic']) 
     1237    ATM_wrain_sic   = rprec (d_ATM_his ['wrain_sic']) 
     1238    ATM_wsnow_ter   = rprec (d_ATM_his ['wsnow_ter']) 
     1239    ATM_wsnow_oce   = rprec (d_ATM_his ['wsnow_oce']) 
     1240    ATM_wsnow_lic   = rprec (d_ATM_his ['wsnow_lic']) 
     1241    ATM_wsnow_sic   = rprec (d_ATM_his ['wsnow_sic']) 
    12811242    echo ( f'End of ico case ') 
    12821243 
     
    13261287if RUN_HIS == 'ico' : 
    13271288    echo ( f'RUN costalflow Grille ICO' ) 
    1328     RUN_coastalflow =  rprec (d_RUN_his ['coastalflow'])[..., RUN_his_keysort] 
    1329     RUN_riverflow   =  rprec (d_RUN_his ['riverflow']  )[..., RUN_his_keysort] 
    1330     RUN_runoff      =  rprec (d_RUN_his ['runoff']     )[..., RUN_his_keysort] 
    1331     RUN_drainage    =  rprec (d_RUN_his ['drainage']   )[..., RUN_his_keysort] 
    1332     RUN_riversret   =  rprec (d_RUN_his ['riversret']  )[..., RUN_his_keysort] 
    1333      
    1334     RUN_coastalflow_cpl = rprec (d_RUN_his ['coastalflow_cpl'])[..., RUN_his_keysort] 
    1335     RUN_riverflow_cpl   = rprec (d_RUN_his ['riverflow_cpl']  )[..., RUN_his_keysort] 
     1289    RUN_coastalflow =  rprec (d_RUN_his ['coastalflow']) 
     1290    RUN_riverflow   =  rprec (d_RUN_his ['riverflow']  ) 
     1291    RUN_runoff      =  rprec (d_RUN_his ['runoff']     ) 
     1292    RUN_drainage    =  rprec (d_RUN_his ['drainage']   ) 
     1293    RUN_riversret   =  rprec (d_RUN_his ['riversret']  ) 
     1294     
     1295    RUN_coastalflow_cpl = rprec (d_RUN_his ['coastalflow_cpl']) 
     1296    RUN_riverflow_cpl   = rprec (d_RUN_his ['riverflow_cpl']  ) 
    13361297 
    13371298Step = 0 
     
    13451306         SRF_subli    = lmdz.geo2point ( rprec (d_SRF_his ['subli_contfrac_interp']), dim1D='cell') 
    13461307         SRF_transpir = lmdz.geo2point ( rprec (d_SRF_his ['transpir_contfrac_interp']).sum(dim='veget'), dim1D='cell' ) 
    1347          SRF_rain.attrs     = d_SRF_his ['rain_contfrac_interp'].attrs 
    1348          SRF_evap.attrs     = d_SRF_his ['evap_contfrac_interp'].attrs 
    1349          SRF_snowf.attrs    = d_SRF_his ['snow_contfrac_interp'].attrs 
    1350          SRF_subli.attrs    = d_SRF_his ['subli_contfrac_interp'].attrs 
    1351          SRF_transpir.attrs = d_SRF_his ['transpir_contfrac_interp'].attrs 
     1308         #SRF_rain.attrs.update     ( d_SRF_his ['rain_contfrac_interp'].attrs ) 
     1309         #SRF_evap.attrs.update     ( d_SRF_his ['evap_contfrac_interp'].attrs ) 
     1310         #SRF_snowf.attrs.update    ( d_SRF_his ['snow_contfrac_interp'].attrs ) 
     1311         #SRF_subli.attrs.update    ( d_SRF_his ['subli_contfrac_interp'].attrs ) 
     1312         #SRF_transpir.attrs.update ( d_SRF_his ['transpir_contfrac_interp'].attrs ) 
    13521313    else :  
    13531314        echo ( f'SRF rain' ) 
     
    13601321if SRF_HIS == 'ico' : 
    13611322    echo ( f'SRF rain') 
    1362     SRF_rain     = rprec (d_SRF_his ['rain'] )[..., SRF_his_keysort] 
    1363     SRF_evap     = rprec (d_SRF_his ['evap'] )[..., SRF_his_keysort] 
    1364     SRF_snowf    = rprec (d_SRF_his ['snowf'])[..., SRF_his_keysort] 
    1365     SRF_subli    = rprec (d_SRF_his ['subli'])[..., SRF_his_keysort] 
    1366     SRF_transpir = rprec (d_SRF_his ['transpir']).sum(dim='veget')[..., SRF_his_keysort] 
     1323    SRF_rain     = rprec (d_SRF_his ['rain'] ) 
     1324    SRF_evap     = rprec (d_SRF_his ['evap'] ) 
     1325    SRF_snowf    = rprec (d_SRF_his ['snowf']) 
     1326    SRF_subli    = rprec (d_SRF_his ['subli']) 
     1327    SRF_transpir = rprec (d_SRF_his ['transpir']).sum(dim='veget') 
    13671328 
    13681329echo ( f'SRF emp' ) 
Note: See TracChangeset for help on using the changeset viewer.