In [1]:
%pylab notebook
from __future__ import print_function
import glob
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
import rasterio
from charistools.modelEnv import ModelEnv
from netCDF4 import Dataset
import xarray as xr


Populating the interactive namespace from numpy and matplotlib

In [9]:
#%cd /projects/brodzik/derived_hypsometries/MODSCAG_GF_v09_fromFile
#%ls


/projects/brodzik/derived_hypsometries/MODSCAG_GF_v09_fromFile
AM_OBJECTID100/             BR_OBJECTID33/              IN_v01_OBJECTID20/
AM_OBJECTID62/              BR_OBJECTID34/              IN_v01_OBJECTID21/
AM_OBJECTID64/              BR_OBJECTID35/              IN_v01_OBJECTID23/
AM_OBJECTID65/              BR_OBJECTID36/              IN_v01_OBJECTID24/
AM_OBJECTID66/              BR_OBJECTID37/              IN_v01_OBJECTID25/
AM_OBJECTID68/              BR_OBJECTID38/              IN_v01_OBJECTID26/
AM_OBJECTID69/              BR_OBJECTID39/              IN_v01_OBJECTID27/
AM_OBJECTID72/              BR_OBJECTID4/               IN_v01_OBJECTID29/
AM_OBJECTID77/              BR_OBJECTID40/              IN_v01_OBJECTID30/
AM_OBJECTID78/              BR_OBJECTID41/              IN_v01_OBJECTID31/
AM_OBJECTID79/              BR_OBJECTID42/              IN_v01_OBJECTID32/
AM_OBJECTID80/              BR_OBJECTID43/              IN_v01_OBJECTID33/
AM_OBJECTID81/              BR_OBJECTID44/              IN_v01_OBJECTID34/
AM_OBJECTID82/              BR_OBJECTID46/              IN_v01_OBJECTID36/
AM_OBJECTID83/              BR_OBJECTID47/              IN_v01_OBJECTID37/
AM_OBJECTID84/              BR_OBJECTID49/              IN_v01_OBJECTID39/
AM_OBJECTID85/              BR_OBJECTID5/               IN_v01_OBJECTID4/
AM_OBJECTID86/              BR_OBJECTID52/              IN_v01_OBJECTID44/
AM_OBJECTID88/              BR_OBJECTID56/              IN_v01_OBJECTID47/
AM_OBJECTID89/              BR_OBJECTID57/              IN_v01_OBJECTID48/
AM_OBJECTID90/              BR_OBJECTID59/              IN_v01_OBJECTID53/
AM_OBJECTID91/              BR_OBJECTID6/               IN_v01_OBJECTID56/
AM_OBJECTID93/              BR_OBJECTID61/              IN_v01_OBJECTID57/
AM_OBJECTID94/              BR_OBJECTID7/               IN_v01_OBJECTID58/
AM_OBJECTID97/              BR_OBJECTID8/               IN_v01_OBJECTID59/
AM_OBJECTID98/              BR_OBJECTID9/               IN_v01_OBJECTID6/
AM_OBJECTID99/              deleteAfterJul31/           IN_v01_OBJECTID62/
AM.SCA.2001-2014.csv        GA_Karnali_at_Benighat/     IN_v01_OBJECTID63/
AM.SCA.2001-2014.pkl        GA_Langtang_at_Kyanjin/     IN_v01_OBJECTID65/
AM_Vakhsh_at_Komsomolabad/  GA_Narayani_at_Devghat/     IN_v01_OBJECTID7/
BR_OBJECTID10/              GA_SaptaKosi_at_Chatara/    IN_v01_OBJECTID73/
BR_OBJECTID11/              GA_v01_OBJECTID1/           IN_v01_OBJECTID8/
BR_OBJECTID12/              GA_v01_OBJECTID10/          IN_v01_OBJECTID9/
BR_OBJECTID13/              GA_v01_OBJECTID12/          SY_v01_OBJECTID941/
BR_OBJECTID14/              GA_v01_OBJECTID2/           SY_v01_OBJECTID950/
BR_OBJECTID15/              GA_v01_OBJECTID22/          SY_v01_OBJECTID951/
BR_OBJECTID16/              GA_v01_OBJECTID3/           SY_v01_OBJECTID952/
BR_OBJECTID17/              GA_v01_OBJECTID32/          SY_v01_OBJECTID953/
BR_OBJECTID18/              GA_v01_OBJECTID4/           SY_v01_OBJECTID955/
BR_OBJECTID19/              GA_v01_OBJECTID6/           SY_v01_OBJECTID956/
BR_OBJECTID20/              GA_v01_OBJECTID9/           SY_v01_OBJECTID957/
BR_OBJECTID21/              IN_Hunza_at_DainyorBridge/  SY_v01_OBJECTID958/
BR_OBJECTID22/              IN_v01_OBJECTID0/           SY_v01_OBJECTID959/
BR_OBJECTID23/              IN_v01_OBJECTID10/          SY_v01_OBJECTID960/
BR_OBJECTID24/              IN_v01_OBJECTID11/          SY_v01_OBJECTID961/
BR_OBJECTID25/              IN_v01_OBJECTID12/          SY_v01_OBJECTID962/
BR_OBJECTID26/              IN_v01_OBJECTID13/          SY_v01_OBJECTID964/
BR_OBJECTID27/              IN_v01_OBJECTID14/          SY_v01_OBJECTID965/
BR_OBJECTID28/              IN_v01_OBJECTID17/          SY_v01_OBJECTID966/
BR_OBJECTID29/              IN_v01_OBJECTID18/          SY_v01_OBJECTID967/
BR_OBJECTID30/              IN_v01_OBJECTID19/
BR_OBJECTID32/              IN_v01_OBJECTID2/

In [31]:
configFile = "/projects/brodzik/charis_ti_melt/modelEnv_config.ini"
myEnv = ModelEnv(tileConfigFile=configFile, topDir='/projects/brodzik')

In [32]:
def get_snow_area(drainageID, year, verbose=False):
    ablation_method='grsize_scag'
    threshold='fromFile'
    modice_nstrikes=3
    inputs = myEnv.model_inputs(
        drainageID, 
        year, 
        ablation_method, 
        threshold, 
        modice_nstrikes=modice_nstrikes, 
        verbose=verbose)
    
    all = pd.DataFrame()
    all['SOL_km2'] = inputs["snow_on_land_by_elevation_hyps"].data_by_doy()
    all['EGI_km2'] = inputs["exposed_glacier_ice_by_elevation_hyps"].data_by_doy()
    all['SOI_km2'] = inputs["snow_on_ice_by_elevation_hyps"].data_by_doy()
    
    if verbose:
        print("Read drainageID=%s, year=%d" % (drainageID, year))
    
    return all

In [33]:
def get_snow_for_drainage(drainageID, start_year=2001, stop_year=2014, verbose=False):
    all = pd.DataFrame()
    for year in np.arange(start_year, stop_year+1):
        next = get_snow_area(drainageID, year, verbose=verbose)
        all = pd.concat([all, next])
        
    return all

In [40]:
# Generate a list of OBJECTID basins by major drainage,
# and aggregate the SOI/SOL/EGI snow cover 
%cd /projects/brodzik/derived_hypsometries/MODSCAG_GF_v09_fromFile/
majorBasinIDs = ['AM', 'BR','GA_v01', 'IN_v01', 'SY_v01']
start_year = 2001
stop_year = 2014
for id in majorBasinIDs:
    ids = glob.glob("%s_OBJECTID*" % id)
    ids.sort()
    print("There are %d sub-basins for the %s major basin" % (len(ids), id))
    majorBasin_sca = pd.DataFrame()
    for drainageID in ids:
        drainage_sca = get_snow_for_drainage(drainageID, start_year=start_year,
                                             stop_year=stop_year)
        drainage_sca.fillna(value=0.0, inplace=True)
        print("drainage = %s" % drainageID)
        print(drainage_sca.sum())
        if majorBasin_sca.empty:
            print("Starting new sca sum for major basin = %s..." % id)
            majorBasin_sca = drainage_sca.copy()
        else:
            print("Adding drainage = %s sca..." % drainageID)
            majorBasin_sca = majorBasin_sca + drainage_sca
    outfile = "%s.SCA.%d-%d.nc" % (id, start_year, stop_year)
    
    print("Accumulated sca:")
    print(majorBasin_sca.sum())
    sca_xr = majorBasin_sca.to_xarray()
    sca_xr.attrs['basins'] = ", ".join(ids)
    sca_xr.to_netcdf(outfile, mode='w', format='NETCDF4')
    print("Saved accumulated SCA to: %s" % outfile)


/projects/brodzik/derived_hypsometries/MODSCAG_GF_v09_fromFile
There are 27 sub-basins for the AM major basin
drainage = AM_OBJECTID100
SOL_km2    30857436.74
EGI_km2      250520.90
SOI_km2     9016865.29
dtype: float64
Starting new sca sum for major basin = AM...
drainage = AM_OBJECTID62
SOL_km2    0.0
EGI_km2    0.0
SOI_km2    0.0
dtype: float64
Adding drainage = AM_OBJECTID62 sca...
drainage = AM_OBJECTID64
SOL_km2    0.0
EGI_km2    0.0
SOI_km2    0.0
dtype: float64
Adding drainage = AM_OBJECTID64 sca...
drainage = AM_OBJECTID65
SOL_km2    42135.08
EGI_km2        0.00
SOI_km2        0.00
dtype: float64
Adding drainage = AM_OBJECTID65 sca...
drainage = AM_OBJECTID66
SOL_km2    18321097.41
EGI_km2      141720.96
SOI_km2     3163072.05
dtype: float64
Adding drainage = AM_OBJECTID66 sca...
drainage = AM_OBJECTID68
SOL_km2    3082.05
EGI_km2       0.00
SOI_km2       0.00
dtype: float64
Adding drainage = AM_OBJECTID68 sca...
drainage = AM_OBJECTID69
SOL_km2    183558.57
EGI_km2         0.00
SOI_km2         0.00
dtype: float64
Adding drainage = AM_OBJECTID69 sca...
drainage = AM_OBJECTID72
SOL_km2    4256925.00
EGI_km2        814.97
SOI_km2      17345.09
dtype: float64
Adding drainage = AM_OBJECTID72 sca...
drainage = AM_OBJECTID77
SOL_km2    16397923.92
EGI_km2      100014.30
SOI_km2     2829881.04
dtype: float64
Adding drainage = AM_OBJECTID77 sca...
drainage = AM_OBJECTID78
SOL_km2     9639873.52
EGI_km2      372556.99
SOI_km2    10871220.80
dtype: float64
Adding drainage = AM_OBJECTID78 sca...
drainage = AM_OBJECTID79
SOL_km2    25535633.17
EGI_km2      339342.47
SOI_km2     6686115.94
dtype: float64
Adding drainage = AM_OBJECTID79 sca...
drainage = AM_OBJECTID80
SOL_km2    8541214.09
EGI_km2      31175.96
SOI_km2     492744.58
dtype: float64
Adding drainage = AM_OBJECTID80 sca...
drainage = AM_OBJECTID81
SOL_km2    6894352.13
EGI_km2      10130.58
SOI_km2     200336.46
dtype: float64
Adding drainage = AM_OBJECTID81 sca...
drainage = AM_OBJECTID82
SOL_km2    35707743.95
EGI_km2      230438.62
SOI_km2     5431991.84
dtype: float64
Adding drainage = AM_OBJECTID82 sca...
drainage = AM_OBJECTID83
SOL_km2    13773734.47
EGI_km2      152669.43
SOI_km2     5619244.61
dtype: float64
Adding drainage = AM_OBJECTID83 sca...
drainage = AM_OBJECTID84
SOL_km2    804513.05
EGI_km2         0.00
SOI_km2         0.00
dtype: float64
Adding drainage = AM_OBJECTID84 sca...
drainage = AM_OBJECTID85
SOL_km2    6453821.01
EGI_km2      77638.61
SOI_km2    2352867.70
dtype: float64
Adding drainage = AM_OBJECTID85 sca...
drainage = AM_OBJECTID86
SOL_km2    29770014.84
EGI_km2       91566.00
SOI_km2     4368930.25
dtype: float64
Adding drainage = AM_OBJECTID86 sca...
drainage = AM_OBJECTID88
SOL_km2    3903079.05
EGI_km2          0.00
SOI_km2          0.00
dtype: float64
Adding drainage = AM_OBJECTID88 sca...
drainage = AM_OBJECTID89
SOL_km2    3176578.46
EGI_km2      16620.34
SOI_km2     482010.72
dtype: float64
Adding drainage = AM_OBJECTID89 sca...
drainage = AM_OBJECTID90
SOL_km2    2102105.76
EGI_km2         33.82
SOI_km2        634.90
dtype: float64
Adding drainage = AM_OBJECTID90 sca...
drainage = AM_OBJECTID91
SOL_km2    204899.18
EGI_km2         0.00
SOI_km2         0.00
dtype: float64
Adding drainage = AM_OBJECTID91 sca...
drainage = AM_OBJECTID93
SOL_km2    0.0
EGI_km2    0.0
SOI_km2    0.0
dtype: float64
Adding drainage = AM_OBJECTID93 sca...
drainage = AM_OBJECTID94
SOL_km2    28525035.15
EGI_km2       94674.02
SOI_km2     3063071.71
dtype: float64
Adding drainage = AM_OBJECTID94 sca...
drainage = AM_OBJECTID97
SOL_km2    28744712.29
EGI_km2       48996.90
SOI_km2     1893962.90
dtype: float64
Adding drainage = AM_OBJECTID97 sca...
drainage = AM_OBJECTID98
SOL_km2    10996910.93
EGI_km2        7446.49
SOI_km2      384983.82
dtype: float64
Adding drainage = AM_OBJECTID98 sca...
drainage = AM_OBJECTID99
SOL_km2    17754106.05
EGI_km2         363.36
SOI_km2       12857.56
dtype: float64
Adding drainage = AM_OBJECTID99 sca...
Accumulated sca:
SOL_km2    3.025905e+08
EGI_km2    1.966725e+06
SOI_km2    5.688814e+07
dtype: float64
Saved accumulated SCA to: AM.SCA.2001-2014.nc
There are 48 sub-basins for the BR major basin
drainage = BR_OBJECTID10
SOL_km2    5236597.54
EGI_km2     193870.60
SOI_km2     662164.48
dtype: float64
Starting new sca sum for major basin = BR...
drainage = BR_OBJECTID11
SOL_km2    2066888.27
EGI_km2      26463.94
SOI_km2      86835.67
dtype: float64
Adding drainage = BR_OBJECTID11 sca...
drainage = BR_OBJECTID12
SOL_km2    10655048.15
EGI_km2     1301892.16
SOI_km2    12714520.46
dtype: float64
Adding drainage = BR_OBJECTID12 sca...
drainage = BR_OBJECTID13
SOL_km2    2519333.20
EGI_km2     205458.94
SOI_km2    1614642.98
dtype: float64
Adding drainage = BR_OBJECTID13 sca...
drainage = BR_OBJECTID14
SOL_km2    17651021.58
EGI_km2      453168.00
SOI_km2     4706233.81
dtype: float64
Adding drainage = BR_OBJECTID14 sca...
drainage = BR_OBJECTID15
SOL_km2    944688.70
EGI_km2    124522.10
SOI_km2    853266.26
dtype: float64
Adding drainage = BR_OBJECTID15 sca...
drainage = BR_OBJECTID16
SOL_km2    2546033.72
EGI_km2      14369.21
SOI_km2      92440.00
dtype: float64
Adding drainage = BR_OBJECTID16 sca...
drainage = BR_OBJECTID17
SOL_km2    4307056.83
EGI_km2     596751.14
SOI_km2    3469174.78
dtype: float64
Adding drainage = BR_OBJECTID17 sca...
drainage = BR_OBJECTID18
SOL_km2    2361573.44
EGI_km2       7296.75
SOI_km2      46603.44
dtype: float64
Adding drainage = BR_OBJECTID18 sca...
drainage = BR_OBJECTID19
SOL_km2    2201379.32
EGI_km2      79237.33
SOI_km2     264167.01
dtype: float64
Adding drainage = BR_OBJECTID19 sca...
drainage = BR_OBJECTID20
SOL_km2    37246.97
EGI_km2        0.00
SOI_km2        0.00
dtype: float64
Adding drainage = BR_OBJECTID20 sca...
drainage = BR_OBJECTID21
SOL_km2    383046.55
EGI_km2         0.00
SOI_km2         0.00
dtype: float64
Adding drainage = BR_OBJECTID21 sca...
drainage = BR_OBJECTID22
SOL_km2    850155.33
EGI_km2       134.38
SOI_km2      1177.45
dtype: float64
Adding drainage = BR_OBJECTID22 sca...
drainage = BR_OBJECTID23
SOL_km2    2469101.03
EGI_km2      16429.82
SOI_km2      57360.19
dtype: float64
Adding drainage = BR_OBJECTID23 sca...
drainage = BR_OBJECTID24
SOL_km2    623759.05
EGI_km2     10769.40
SOI_km2     30942.79
dtype: float64
Adding drainage = BR_OBJECTID24 sca...
drainage = BR_OBJECTID25
SOL_km2    21969.77
EGI_km2        0.00
SOI_km2        0.00
dtype: float64
Adding drainage = BR_OBJECTID25 sca...
drainage = BR_OBJECTID26
SOL_km2    820184.73
EGI_km2       571.85
SOI_km2      4247.36
dtype: float64
Adding drainage = BR_OBJECTID26 sca...
drainage = BR_OBJECTID27
SOL_km2    1425190.45
EGI_km2      22862.26
SOI_km2      75829.34
dtype: float64
Adding drainage = BR_OBJECTID27 sca...
drainage = BR_OBJECTID28
SOL_km2    16180767.45
EGI_km2      139396.24
SOI_km2     1708406.56
dtype: float64
Adding drainage = BR_OBJECTID28 sca...
drainage = BR_OBJECTID29
SOL_km2    3044700.14
EGI_km2     210123.72
SOI_km2     724497.37
dtype: float64
Adding drainage = BR_OBJECTID29 sca...
drainage = BR_OBJECTID30
SOL_km2    2743646.73
EGI_km2     214211.53
SOI_km2     670410.12
dtype: float64
Adding drainage = BR_OBJECTID30 sca...
drainage = BR_OBJECTID32
SOL_km2    7011940.63
EGI_km2     271573.29
SOI_km2    1915792.31
dtype: float64
Adding drainage = BR_OBJECTID32 sca...
drainage = BR_OBJECTID33
SOL_km2    5418642.48
EGI_km2     539814.72
SOI_km2    2420268.13
dtype: float64
Adding drainage = BR_OBJECTID33 sca...
drainage = BR_OBJECTID34
SOL_km2    910152.08
EGI_km2     57347.66
SOI_km2    425524.84
dtype: float64
Adding drainage = BR_OBJECTID34 sca...
drainage = BR_OBJECTID35
SOL_km2    4856753.90
EGI_km2     613502.77
SOI_km2    2415440.31
dtype: float64
Adding drainage = BR_OBJECTID35 sca...
drainage = BR_OBJECTID36
SOL_km2    90274.64
EGI_km2        0.00
SOI_km2        0.00
dtype: float64
Adding drainage = BR_OBJECTID36 sca...
drainage = BR_OBJECTID37
SOL_km2    16977236.91
EGI_km2     1372873.65
SOI_km2     8403446.94
dtype: float64
Adding drainage = BR_OBJECTID37 sca...
drainage = BR_OBJECTID38
SOL_km2    7065.27
EGI_km2       0.00
SOI_km2       0.00
dtype: float64
Adding drainage = BR_OBJECTID38 sca...
drainage = BR_OBJECTID39
SOL_km2     361770.48
EGI_km2     236516.62
SOI_km2    1156681.91
dtype: float64
Adding drainage = BR_OBJECTID39 sca...
drainage = BR_OBJECTID4
SOL_km2    9838253.99
EGI_km2     151481.55
SOI_km2     996400.22
dtype: float64
Adding drainage = BR_OBJECTID4 sca...
drainage = BR_OBJECTID40
SOL_km2    15096.16
EGI_km2        0.00
SOI_km2        0.00
dtype: float64
Adding drainage = BR_OBJECTID40 sca...
drainage = BR_OBJECTID41
SOL_km2    137004.31
EGI_km2      2176.57
SOI_km2      4897.61
dtype: float64
Adding drainage = BR_OBJECTID41 sca...
drainage = BR_OBJECTID42
SOL_km2    4294009.97
EGI_km2     418720.85
SOI_km2    1573460.10
dtype: float64
Adding drainage = BR_OBJECTID42 sca...
drainage = BR_OBJECTID43
SOL_km2    6562852.03
EGI_km2     288917.99
SOI_km2    1303016.12
dtype: float64
Adding drainage = BR_OBJECTID43 sca...
drainage = BR_OBJECTID44
SOL_km2    3382309.43
EGI_km2     743886.27
SOI_km2    2135597.78
dtype: float64
Adding drainage = BR_OBJECTID44 sca...
drainage = BR_OBJECTID46
SOL_km2    494508.35
EGI_km2    169655.76
SOI_km2    666014.07
dtype: float64
Adding drainage = BR_OBJECTID46 sca...
drainage = BR_OBJECTID47
SOL_km2    3007.09
EGI_km2       0.00
SOI_km2       0.00
dtype: float64
Adding drainage = BR_OBJECTID47 sca...
drainage = BR_OBJECTID49
SOL_km2    2489909.55
EGI_km2     190920.64
SOI_km2     718557.05
dtype: float64
Adding drainage = BR_OBJECTID49 sca...
drainage = BR_OBJECTID5
SOL_km2    3583119.54
EGI_km2      79834.97
SOI_km2     308393.07
dtype: float64
Adding drainage = BR_OBJECTID5 sca...
drainage = BR_OBJECTID52
SOL_km2    12308.83
EGI_km2        0.00
SOI_km2        0.00
dtype: float64
Adding drainage = BR_OBJECTID52 sca...
drainage = BR_OBJECTID56
SOL_km2    34485.66
EGI_km2        0.00
SOI_km2        0.00
dtype: float64
Adding drainage = BR_OBJECTID56 sca...
drainage = BR_OBJECTID57
SOL_km2    1527442.09
EGI_km2      32820.37
SOI_km2     120768.25
dtype: float64
Adding drainage = BR_OBJECTID57 sca...
drainage = BR_OBJECTID59
SOL_km2    59453.43
EGI_km2        0.00
SOI_km2        0.00
dtype: float64
Adding drainage = BR_OBJECTID59 sca...
drainage = BR_OBJECTID6
SOL_km2    96544.06
EGI_km2        0.00
SOI_km2        0.00
dtype: float64
Adding drainage = BR_OBJECTID6 sca...
drainage = BR_OBJECTID61
SOL_km2    57911.74
EGI_km2        0.00
SOI_km2        0.00
dtype: float64
Adding drainage = BR_OBJECTID61 sca...
drainage = BR_OBJECTID7
SOL_km2    22068324.49
EGI_km2      363694.79
SOI_km2     1893195.32
dtype: float64
Adding drainage = BR_OBJECTID7 sca...
drainage = BR_OBJECTID8
SOL_km2    12899457.55
EGI_km2     1190900.86
SOI_km2    13121438.81
dtype: float64
Adding drainage = BR_OBJECTID8 sca...
drainage = BR_OBJECTID9
SOL_km2    4381319.43
EGI_km2     162474.92
SOI_km2     683341.67
dtype: float64
Adding drainage = BR_OBJECTID9 sca...
Accumulated sca:
SOL_km2    1.866605e+08
EGI_km2    1.050464e+07
SOI_km2    6.804515e+07
dtype: float64
Saved accumulated SCA to: BR.SCA.2001-2014.nc
There are 10 sub-basins for the GA_v01 major basin
drainage = GA_v01_OBJECTID1
SOL_km2    3041671.42
EGI_km2      85706.19
SOI_km2     698221.60
dtype: float64
Starting new sca sum for major basin = GA_v01...
drainage = GA_v01_OBJECTID10
SOL_km2    3335727.39
EGI_km2     637873.16
SOI_km2    2185404.70
dtype: float64
Adding drainage = GA_v01_OBJECTID10 sca...
drainage = GA_v01_OBJECTID12
SOL_km2    9159594.45
EGI_km2    1650791.40
SOI_km2    6163240.70
dtype: float64
Adding drainage = GA_v01_OBJECTID12 sca...
drainage = GA_v01_OBJECTID2
SOL_km2    14241040.87
EGI_km2     1135512.31
SOI_km2     8364542.08
dtype: float64
Adding drainage = GA_v01_OBJECTID2 sca...
drainage = GA_v01_OBJECTID22
SOL_km2    5820426.44
EGI_km2    1262661.96
SOI_km2    2828829.50
dtype: float64
Adding drainage = GA_v01_OBJECTID22 sca...
drainage = GA_v01_OBJECTID3
SOL_km2    22785423.51
EGI_km2      789999.81
SOI_km2     4663763.07
dtype: float64
Adding drainage = GA_v01_OBJECTID3 sca...
drainage = GA_v01_OBJECTID32
SOL_km2    1668160.35
EGI_km2     472007.43
SOI_km2    1138162.71
dtype: float64
Adding drainage = GA_v01_OBJECTID32 sca...
drainage = GA_v01_OBJECTID4
SOL_km2    6301787.77
EGI_km2     592565.47
SOI_km2    3850975.98
dtype: float64
Adding drainage = GA_v01_OBJECTID4 sca...
drainage = GA_v01_OBJECTID6
SOL_km2    6480412.26
EGI_km2     429301.53
SOI_km2    1480389.56
dtype: float64
Adding drainage = GA_v01_OBJECTID6 sca...
drainage = GA_v01_OBJECTID9
SOL_km2    8705224.41
EGI_km2    1855093.93
SOI_km2    3919840.35
dtype: float64
Adding drainage = GA_v01_OBJECTID9 sca...
Accumulated sca:
SOL_km2    81539468.87
EGI_km2     8911513.19
SOI_km2    35293370.25
dtype: float64
Saved accumulated SCA to: GA_v01.SCA.2001-2014.nc
There are 43 sub-basins for the IN_v01 major basin
drainage = IN_v01_OBJECTID0
SOL_km2    35144843.31
EGI_km2     1073718.46
SOI_km2    35105548.26
dtype: float64
Starting new sca sum for major basin = IN_v01...
drainage = IN_v01_OBJECTID10
SOL_km2    10545457.1
EGI_km2           0.0
SOI_km2           0.0
dtype: float64
Adding drainage = IN_v01_OBJECTID10 sca...
drainage = IN_v01_OBJECTID11
SOL_km2    1150126.63
EGI_km2          0.00
SOI_km2          0.00
dtype: float64
Adding drainage = IN_v01_OBJECTID11 sca...
drainage = IN_v01_OBJECTID12
SOL_km2    32742843.56
EGI_km2      284531.20
SOI_km2     3800034.06
dtype: float64
Adding drainage = IN_v01_OBJECTID12 sca...
drainage = IN_v01_OBJECTID13
SOL_km2     6937164.01
EGI_km2      645666.19
SOI_km2    12015975.88
dtype: float64
Adding drainage = IN_v01_OBJECTID13 sca...
drainage = IN_v01_OBJECTID14
SOL_km2    6880647.57
EGI_km2        124.18
SOI_km2       5727.27
dtype: float64
Adding drainage = IN_v01_OBJECTID14 sca...
drainage = IN_v01_OBJECTID17
SOL_km2    4092598.36
EGI_km2       9205.70
SOI_km2     172722.48
dtype: float64
Adding drainage = IN_v01_OBJECTID17 sca...
drainage = IN_v01_OBJECTID18
SOL_km2    594355.41
EGI_km2      2237.29
SOI_km2     54746.14
dtype: float64
Adding drainage = IN_v01_OBJECTID18 sca...
drainage = IN_v01_OBJECTID19
SOL_km2    1626444.49
EGI_km2          0.00
SOI_km2          0.00
dtype: float64
Adding drainage = IN_v01_OBJECTID19 sca...
drainage = IN_v01_OBJECTID2
SOL_km2    37233142.94
EGI_km2      401978.46
SOI_km2     9787492.99
dtype: float64
Adding drainage = IN_v01_OBJECTID2 sca...
drainage = IN_v01_OBJECTID20
SOL_km2    6595452.44
EGI_km2      72232.19
SOI_km2    1191852.47
dtype: float64
Adding drainage = IN_v01_OBJECTID20 sca...
drainage = IN_v01_OBJECTID21
SOL_km2    5140.29
EGI_km2       0.00
SOI_km2       0.00
dtype: float64
Adding drainage = IN_v01_OBJECTID21 sca...
drainage = IN_v01_OBJECTID23
SOL_km2    519244.63
EGI_km2         0.00
SOI_km2         0.00
dtype: float64
Adding drainage = IN_v01_OBJECTID23 sca...
drainage = IN_v01_OBJECTID24
SOL_km2    3883285.80
EGI_km2       3724.52
SOI_km2     132468.39
dtype: float64
Adding drainage = IN_v01_OBJECTID24 sca...
drainage = IN_v01_OBJECTID25
SOL_km2    12846268.02
EGI_km2       86375.26
SOI_km2      944085.17
dtype: float64
Adding drainage = IN_v01_OBJECTID25 sca...
drainage = IN_v01_OBJECTID26
SOL_km2    5790362.93
EGI_km2      17463.79
SOI_km2     258291.24
dtype: float64
Adding drainage = IN_v01_OBJECTID26 sca...
drainage = IN_v01_OBJECTID27
SOL_km2    22871680.94
EGI_km2      132185.70
SOI_km2     3405203.87
dtype: float64
Adding drainage = IN_v01_OBJECTID27 sca...
drainage = IN_v01_OBJECTID29
SOL_km2    161700.93
EGI_km2         0.00
SOI_km2         0.00
dtype: float64
Adding drainage = IN_v01_OBJECTID29 sca...
drainage = IN_v01_OBJECTID30
SOL_km2    7298115.00
EGI_km2      11151.89
SOI_km2     604733.38
dtype: float64
Adding drainage = IN_v01_OBJECTID30 sca...
drainage = IN_v01_OBJECTID31
SOL_km2    11830067.40
EGI_km2       26983.26
SOI_km2      416187.62
dtype: float64
Adding drainage = IN_v01_OBJECTID31 sca...
drainage = IN_v01_OBJECTID32
SOL_km2    28177.92
EGI_km2        0.00
SOI_km2        0.00
dtype: float64
Adding drainage = IN_v01_OBJECTID32 sca...
drainage = IN_v01_OBJECTID33
SOL_km2    2000705.81
EGI_km2          0.00
SOI_km2          0.00
dtype: float64
Adding drainage = IN_v01_OBJECTID33 sca...
drainage = IN_v01_OBJECTID34
SOL_km2    708465.18
EGI_km2         0.00
SOI_km2         0.00
dtype: float64
Adding drainage = IN_v01_OBJECTID34 sca...
drainage = IN_v01_OBJECTID36
SOL_km2    26707495.54
EGI_km2      166202.64
SOI_km2     4748355.43
dtype: float64
Adding drainage = IN_v01_OBJECTID36 sca...
drainage = IN_v01_OBJECTID37
SOL_km2    11776161.18
EGI_km2       38661.03
SOI_km2      771594.17
dtype: float64
Adding drainage = IN_v01_OBJECTID37 sca...
drainage = IN_v01_OBJECTID39
SOL_km2    749450.44
EGI_km2         0.00
SOI_km2         0.00
dtype: float64
Adding drainage = IN_v01_OBJECTID39 sca...
drainage = IN_v01_OBJECTID4
SOL_km2    23588340.34
EGI_km2      353015.61
SOI_km2     6083209.15
dtype: float64
Adding drainage = IN_v01_OBJECTID4 sca...
drainage = IN_v01_OBJECTID44
SOL_km2    29886315.07
EGI_km2      797286.35
SOI_km2    13945936.48
dtype: float64
Adding drainage = IN_v01_OBJECTID44 sca...
drainage = IN_v01_OBJECTID47
SOL_km2    110669.86
EGI_km2         0.00
SOI_km2         0.00
dtype: float64
Adding drainage = IN_v01_OBJECTID47 sca...
drainage = IN_v01_OBJECTID48
SOL_km2    821236.43
EGI_km2         0.00
SOI_km2         0.00
dtype: float64
Adding drainage = IN_v01_OBJECTID48 sca...
drainage = IN_v01_OBJECTID53
SOL_km2    5592531.98
EGI_km2      91908.78
SOI_km2    1028839.73
dtype: float64
Adding drainage = IN_v01_OBJECTID53 sca...
drainage = IN_v01_OBJECTID56
SOL_km2    9540040.48
EGI_km2      54594.60
SOI_km2     873280.03
dtype: float64
Adding drainage = IN_v01_OBJECTID56 sca...
drainage = IN_v01_OBJECTID57
SOL_km2    8139919.90
EGI_km2      11069.37
SOI_km2      78874.31
dtype: float64
Adding drainage = IN_v01_OBJECTID57 sca...
drainage = IN_v01_OBJECTID58
SOL_km2    4641723.84
EGI_km2      60201.94
SOI_km2     420761.28
dtype: float64
Adding drainage = IN_v01_OBJECTID58 sca...
drainage = IN_v01_OBJECTID59
SOL_km2    6048431.26
EGI_km2     193948.94
SOI_km2    2761903.75
dtype: float64
Adding drainage = IN_v01_OBJECTID59 sca...
drainage = IN_v01_OBJECTID6
SOL_km2    14332433.02
EGI_km2     1104501.23
SOI_km2    19555625.50
dtype: float64
Adding drainage = IN_v01_OBJECTID6 sca...
drainage = IN_v01_OBJECTID62
SOL_km2    10217291.74
EGI_km2      115788.91
SOI_km2     2260606.12
dtype: float64
Adding drainage = IN_v01_OBJECTID62 sca...
drainage = IN_v01_OBJECTID63
SOL_km2    776243.35
EGI_km2      6471.70
SOI_km2    132373.14
dtype: float64
Adding drainage = IN_v01_OBJECTID63 sca...
drainage = IN_v01_OBJECTID65
SOL_km2    29853871.09
EGI_km2      177278.32
SOI_km2     1680882.90
dtype: float64
Adding drainage = IN_v01_OBJECTID65 sca...
drainage = IN_v01_OBJECTID7
SOL_km2    653832.61
EGI_km2     45112.44
SOI_km2    450676.16
dtype: float64
Adding drainage = IN_v01_OBJECTID7 sca...
drainage = IN_v01_OBJECTID73
SOL_km2    9237041.90
EGI_km2     176490.57
SOI_km2    2132275.38
dtype: float64
Adding drainage = IN_v01_OBJECTID73 sca...
drainage = IN_v01_OBJECTID8
SOL_km2    13080541.67
EGI_km2         444.04
SOI_km2       24579.83
dtype: float64
Adding drainage = IN_v01_OBJECTID8 sca...
drainage = IN_v01_OBJECTID9
SOL_km2    6253732.42
EGI_km2     142834.97
SOI_km2    2308968.09
dtype: float64
Adding drainage = IN_v01_OBJECTID9 sca...
Accumulated sca:
SOL_km2    4.234936e+08
EGI_km2    6.303390e+06
SOI_km2    1.271538e+08
dtype: float64
Saved accumulated SCA to: IN_v01.SCA.2001-2014.nc
There are 17 sub-basins for the SY_v01 major basin
drainage = SY_v01_OBJECTID941
SOL_km2    0.0
EGI_km2    0.0
SOI_km2    0.0
dtype: float64
Starting new sca sum for major basin = SY_v01...
drainage = SY_v01_OBJECTID950
SOL_km2    1831.71
EGI_km2       0.00
SOI_km2       0.00
dtype: float64
Adding drainage = SY_v01_OBJECTID950 sca...
drainage = SY_v01_OBJECTID951
SOL_km2    0.0
EGI_km2    0.0
SOI_km2    0.0
dtype: float64
Adding drainage = SY_v01_OBJECTID951 sca...
drainage = SY_v01_OBJECTID952
SOL_km2    0.0
EGI_km2    0.0
SOI_km2    0.0
dtype: float64
Adding drainage = SY_v01_OBJECTID952 sca...
drainage = SY_v01_OBJECTID953
SOL_km2    2077013.08
EGI_km2       3532.32
SOI_km2      83202.15
dtype: float64
Adding drainage = SY_v01_OBJECTID953 sca...
drainage = SY_v01_OBJECTID955
SOL_km2    12634676.50
EGI_km2        8750.83
SOI_km2      144695.60
dtype: float64
Adding drainage = SY_v01_OBJECTID955 sca...
drainage = SY_v01_OBJECTID956
SOL_km2    18801072.06
EGI_km2       14901.44
SOI_km2      402439.34
dtype: float64
Adding drainage = SY_v01_OBJECTID956 sca...
drainage = SY_v01_OBJECTID957
SOL_km2    19492356.71
EGI_km2       25519.79
SOI_km2      594408.36
dtype: float64
Adding drainage = SY_v01_OBJECTID957 sca...
drainage = SY_v01_OBJECTID958
SOL_km2    57416168.47
EGI_km2       93080.95
SOI_km2     5324016.70
dtype: float64
Adding drainage = SY_v01_OBJECTID958 sca...
drainage = SY_v01_OBJECTID959
SOL_km2    0.0
EGI_km2    0.0
SOI_km2    0.0
dtype: float64
Adding drainage = SY_v01_OBJECTID959 sca...
drainage = SY_v01_OBJECTID960
SOL_km2    83476.69
EGI_km2        0.00
SOI_km2        0.00
dtype: float64
Adding drainage = SY_v01_OBJECTID960 sca...
drainage = SY_v01_OBJECTID961
SOL_km2    637193.67
EGI_km2         0.00
SOI_km2         0.00
dtype: float64
Adding drainage = SY_v01_OBJECTID961 sca...
drainage = SY_v01_OBJECTID962
SOL_km2    4440489.97
EGI_km2        140.68
SOI_km2       7708.90
dtype: float64
Adding drainage = SY_v01_OBJECTID962 sca...
drainage = SY_v01_OBJECTID964
SOL_km2    21802406.13
EGI_km2       29987.80
SOI_km2      877576.57
dtype: float64
Adding drainage = SY_v01_OBJECTID964 sca...
drainage = SY_v01_OBJECTID965
SOL_km2    1107003.2
EGI_km2          0.0
SOI_km2          0.0
dtype: float64
Adding drainage = SY_v01_OBJECTID965 sca...
drainage = SY_v01_OBJECTID966
SOL_km2    11313844.38
EGI_km2       24379.65
SOI_km2     1152434.64
dtype: float64
Adding drainage = SY_v01_OBJECTID966 sca...
drainage = SY_v01_OBJECTID967
SOL_km2    14913300.77
EGI_km2      103928.58
SOI_km2     2192144.02
dtype: float64
Adding drainage = SY_v01_OBJECTID967 sca...
Accumulated sca:
SOL_km2    1.647208e+08
EGI_km2    3.042220e+05
SOI_km2    1.077863e+07
dtype: float64
Saved accumulated SCA to: SY_v01.SCA.2001-2014.nc

In [13]:
test = saved.to_xarray()
test.attrs['label'] = "this is a label"
test.to_netcdf('AM.SCA.2001-2014.nc')

In [35]:
fromdisk = xr.open_dataset('AM.SCA.2001-2014.nc')
fromdisk


Out[35]:
<xarray.Dataset>
Dimensions:  (Date: 5113)
Coordinates:
  * Date     (Date) datetime64[ns] 2001-01-01 2001-01-02 2001-01-03 ...
Data variables:
    SOL_km2  (Date) float64 1.05e+04 1.033e+04 1.022e+04 1.019e+04 1.016e+04 ...
    EGI_km2  (Date) float64 52.16 37.39 32.08 29.21 25.23 27.8 25.69 26.82 ...
    SOI_km2  (Date) float64 1.817e+03 1.812e+03 1.813e+03 1.829e+03 1.85e+03 ...
Attributes:
    basins:   AM_OBJECTID100AM_OBJECTID62AM_OBJECTID64AM_OBJECTID65AM_OBJECTI...

In [37]:
fromdisk.close()

In [36]:
ds = fromdisk.to_dataframe()
ds.sum()


Out[36]:
EGI_km2      250520.90
SOI_km2     9016865.29
SOL_km2    30857436.74
dtype: float64

In [ ]:


In [ ]:
print(hunza.ix['2014-12-23'], obj0.ix['2014-12-23'], )

In [ ]:
all = hunza + obj0
all.sum()

In [ ]:
all

In [ ]:
fig, ax = plt.subplots(nrows=1, ncols=1)
ax.plot(all['SOL'], label='SOL')
ax.plot(all['SOL'] + all['EGI'], label='EGI')
ax.plot(all['SOL'] + all['EGI'] + all['SOI'], label='SOI')

handles, labels = ax.get_legend_handles_labels()
ax.legend(handles[::-1], labels[::-1])

In [ ]:
new = pd.DataFrame()
if new.empty:
    print("nothing there")

In [ ]:
all['SOL'] = sol
all['EGI'] = egi
all['SOI'] = soi
all

In [ ]:
fig, ax = plt.subplots(nrows=1, ncols=1)
ax.plot(all0['SOL'], label='SOL OBJ0')
ax.plot(all0['SOL'] + all0['EGI'], label='EGI')
ax.plot(all0['SOL'] + all0['EGI'] + all0['SOI'], label='SOI')

handles, labels = ax.get_legend_handles_labels()
ax.legend(handles[::-1], labels[::-1])

In [ ]:
mod10 = mod10_cube.read(1)
print(mod10.shape)
np.amin(mod10), np.amax(mod10)

In [ ]:
f = Dataset(mod10a1_filename, 'r', 'HDF5')
d = f.groups['500m'].variables['fsca']

In [ ]:
d

In [ ]:
forig = Dataset(modscag_filename, 'r', 'HDF5')
dorig = forig.groups['500m'].variables['fsca']
dorig

In [ ]: