Changeset 48


Ignore:
Timestamp:
08/01/14 18:56:25 (10 years ago)
Author:
lahlod
Message:

new scripts

Location:
trunk/src/scripts_Laura/ARCTIC/Travail_CEN
Files:
2 added
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/scripts_Laura/ARCTIC/Travail_CEN/choose_new_classified_points.py

    r47 r48  
    55import matplotlib.pyplot as plt 
    66from pylab import * 
     7from mpl_toolkits.basemap import Basemap 
     8from mpl_toolkits.basemap import shiftgrid, cm 
    79from netCDF4 import Dataset 
    810import arctic_map # function to regrid coast limits 
    911import cartesian_grid_test # function to convert grid from polar to cartesian 
     12import scipy.special 
     13import ffgrid2 
     14import map_ffgrid 
     15from matplotlib import colors 
    1016from matplotlib.font_manager import FontProperties 
    1117import map_cartesian_grid 
    12 import ice_class_delimit_AMSU_data 
    13  
    14  
    15  
    16  
    17  
    18  
    19  
    20  
    21 fichier1 = Dataset('/net/argos/data/parvati/lahlod/ARCTIC/monthly_GLACE/gridded_data/cartesian_grid/res_40/cartesian_grid_monthly_data_lamb_spec_near_nadir_AMSUB89_SEPTEMBER2009.nc', 'r', format='NETCDF3_CLASSIC') 
    22 x89 = fichier1.variables['longitude'][:] 
    23 y89 = fichier1.variables['latitude'][:] 
    24 day89 = fichier1.variables['days'][:] 
    25 emis_spec_89 = fichier1.variables['e_spec'][:] 
    26 emis_lamb_89 = fichier1.variables['e_lamb'][:] 
    27 fichier1.close() 
    28  
    29  
    30  
    31 fichier_emis = Dataset('/net/argos/data/parvati/lahlod/ARCTIC/AMSUA_ice_class/cartesian_grid_map_ice_no-ice_SEPTEMBER2009_AMSUA30_spec_lamb_thresholds.nc', 'r', format='NETCDF3_CLASSIC') 
    32 xdist = fichier_emis.variables['longitude'][:] 
    33 ydist = fichier_emis.variables['latitude'][:] 
    34 emis_spec = fichier_emis.variables['spec_ice_area'][:] 
    35 emis_lamb = fichier_emis.variables['lamb_ice_area'][:] 
    36 fichier_emis.close() 
    37 spec_89 = np.zeros([len(ydist), len(xdist)], float) 
    38 for ilon in range (0, len(xdist)): 
    39     for ilat in range (0, len(ydist)): 
    40         if (isnan(emis_spec[ilat, ilon]) == True): 
    41             spec_89[ilat, ilon] = NaN 
    42         else: 
    43             spec_89[ilat, ilon] = emis_spec_89[ilat, ilon, 0] 
    44  
    45  
    46  
    47  
     18 
     19 
     20############################### 
     21# time period characteristics # 
     22############################### 
     23MONTH = np.array(['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12']) 
     24month = np.array(['JANUARY', 'FEBRUARY', 'MARCH', 'APRIL', 'MAY', 'JUNE', 'JULY', 'AUGUST', 'SEPTEMBER', 'OCTOBER', 'NOVEMBER', 'DECEMBER']) 
     25month_day = np.array([31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]) 
     26M = len(month) 
     27 
     28 
     29######################## 
     30# grid characteristics # 
     31######################## 
     32x0 = -3000. # min limit of grid 
     33x1 = 2500. # max limit of grid 
     34dx = 40. 
     35xvec = np.arange(x0, x1+dx, dx) 
     36nx = len(xvec)  
     37y0 = -3000. # min limit of grid 
     38y1 = 3000. # max limit of grid 
     39dy = 40. 
     40yvec = np.arange(y0, y1+dy, dy) 
     41ny = len(yvec) 
     42 
     43 
     44################################################################################################################## 
     45# We devide the loop in two steps :  
     46# - first loop concerns all months except for AUGUST and SEPTEMBER - use of AMSUA23GHz SPEC emissivity to seperate ice from no-ice zones  
     47# - second loop concerns AUGUST and SEPTEMBER - use of AMSUA30GHz SPEC emissivity to seperate ice from no_ice zones 
     48################################################################################################################## 
     49frequ = 89 # apply threshold on this frequency 
     50# open .dat file to stack data (see end of loop) 
     51#data_classif = open ('/net/argos/data/parvati/lahlod/ARCTIC/AMSUA_ice_class/sub_classification/AMSUA'+str(frequ)+'_data_classification_parameters_ice_no-ice_with_AMSUA23-and-30-spec_2009.dat', 'a') 
     52bin = 50 
     53 
     54 
     55# monthly mean parameter (2D-array) on ARCTIC area 
     56spec_month = np.zeros([M, ny, nx], float) 
     57lamb_month = np.zeros([M, ny, nx], float) 
     58diff_month = np.zeros([M, ny, nx], float) 
     59ratio_month = np.zeros([M, ny, nx], float) 
     60# monthly mean parameter (2D-array) on ARCTIC SEA ICE area 
     61spec_ice = np.zeros([M, ny, nx], float) 
     62lamb_ice = np.zeros([M, ny, nx], float) 
     63diff_ice = np.zeros([M, ny, nx], float) 
     64ratio_ice = np.zeros([M, ny, nx], float) 
     65# monthly mean parameter (1D-array) on ARCTIC SEA ICE area transformed into vector 
     66spec_vec = np.zeros([M, ny * nx], float) 
     67lamb_vec = np.zeros([M, ny * nx], float) 
     68diff_vec = np.zeros([M, ny * nx], float) 
     69ratio_vec = np.zeros([M, ny * nx], float) 
     70# histogram distribution (intensity of occurence) of parameter in SEA ICE area (1D-array, bins = 200) 
     71hist_vals_spec = np.zeros([M, bin], float) 
     72hist_vals_lamb = np.zeros([M, bin], float) 
     73hist_vals_diff = np.zeros([M, bin], float) 
     74hist_vals_ratio = np.zeros([M, bin], float) 
     75# histogram distribution (emissivity value) of parameter in SEA ICE area (1D-array, bins = 200) 
     76corresp_emis_spec = np.zeros([M, bin], float) 
     77corresp_emis_lamb = np.zeros([M, bin], float) 
     78corresp_emis_diff = np.zeros([M, bin], float) 
     79corresp_emis_ratio = np.zeros([M, bin], float) 
     80months1 = np.array([0, 1, 2, 3, 4, 5, 6, 9, 10, 11]) # use AMSUA 23GHz to delimit ice/no_ice for all months except for AUGUST and SEPTEMBER 
     81for imo in months1: 
     82    print 'month ' + month[imo] 
     83    ################################################################################## 
     84    # choice of AMSUA 23GHz delimitation ice/no_ice for the sub_classification study # 
     85    ################################################################################## 
     86    print 'open threshold file' 
     87    fichier_emis = Dataset('/net/argos/data/parvati/lahlod/ARCTIC/AMSUA_ice_class/cartesian_grid_map_ice_no-ice_' + str(month[imo]) + '2009_AMSUA23_spec_lamb_thresholds.nc', 'r', format='NETCDF3_CLASSIC') 
     88    spec_lim = fichier_emis.variables['spec_ice_area'][:] 
     89    #lamb_lim = fichier_emis.variables['lamb_ice_area'][:] 
     90    fichier_emis.close() 
     91    ######################################################### 
     92    # application of AMSUA 23GHz delimitation to other data # 
     93    ######################################################### 
     94    print 'open emissivity to sub_classify file' 
     95    ## data of emis SPEC, LAMB, DIFF(SPEC-LAMB) 
     96    fichier_e = Dataset('/net/argos/data/parvati/lahlod/ARCTIC/monthly_GLACE/gridded_data/cartesian_grid/res_40/cartesian_grid_monthly_data_lamb_spec_near_nadir_AMSUA' + str(frequ) + '_' + str(month[imo]) + '2009.nc', 'r', format='NETCDF3_CLASSIC') 
     97    day = fichier_e.variables['days'][:] 
     98    emis_spec = fichier_e.variables['e_spec'][:] 
     99    emis_lamb = fichier_e.variables['e_lamb'][:] 
     100    emis_diff = fichier_e.variables['e_spec_lamb'][:] 
     101    fichier_e.close() 
     102    for ilon in range (0, nx): 
     103        for ilat in range (0, ny): 
     104            spec_month[imo, ilat, ilon] = mean(emis_spec[ilat, ilon, :][nonzero(isnan(emis_spec[ilat, ilon, :]) == False)]) 
     105            lamb_month[imo, ilat, ilon] = mean(emis_lamb[ilat, ilon, :][nonzero(isnan(emis_lamb[ilat, ilon, :]) == False)]) 
     106            diff_month[imo, ilat, ilon] = mean(emis_diff[ilat, ilon, :][nonzero(isnan(emis_diff[ilat, ilon, :]) == False)]) 
     107    ## data of emis RATIO 
     108    fichier_r = Dataset('/net/argos/data/parvati/lahlod/ARCTIC/monthly_GLACE/gridded_data/cartesian_grid/res_40/cartesian_grid_monthly_lamb-spec_ratio_near_nadir_AMSUA' + str(frequ) + '_' + str(month[imo]) + '2009.nc', 'r', format='NETCDF3_CLASSIC') 
     109    ratio_month[imo, :, :] = fichier_r.variables['emis_ratio'][:] 
     110    fichier_r.close() 
     111    print 'compute matrix of parameter on SEA ICE area' 
     112    for ilon in range (0, nx): 
     113        for ilat in range (0, ny): 
     114            if (isnan(spec_lim[ilat, ilon]) == True): 
     115                spec_ice[imo, ilat, ilon] = NaN 
     116                lamb_ice[imo, ilat, ilon] = NaN 
     117                diff_ice[imo, ilat, ilon] = NaN 
     118                ratio_ice[imo, ilat, ilon] = NaN 
     119            else: 
     120                spec_ice[imo, ilat, ilon] = spec_month[imo, ilat, ilon] 
     121                lamb_ice[imo, ilat, ilon] = lamb_month[imo, ilat, ilon] 
     122                diff_ice[imo, ilat, ilon] = diff_month[imo, ilat, ilon] 
     123                ratio_ice[imo, ilat, ilon] = ratio_month[imo, ilat, ilon] 
     124    print 'compute SPEC distribution' 
     125    ######## 
     126    # SPEC # 
     127    ######## 
     128    cs = reshape(spec_ice[imo, :, :], size(spec_ice[imo, :, :]))[nonzero(isnan(reshape(spec_ice[imo, :, :], size(spec_ice[imo, :, :]))) == False)] 
     129    spec_vec[imo, 0 : len(cs)] = cs 
     130    hist_vals_spec[imo, :] = hist(spec_vec[imo, 0 : len(cs)], bins = bin, normed = True, histtype='step')[0] 
     131    for ibin in range (0, bin): 
     132        corresp_emis_spec[imo, ibin] = mean(hist(spec_vec[imo, 0 : len(cs)], bins = bin, normed = True, histtype='step')[1][ibin : ibin + 2]) 
     133    print 'compute LAMB distribution' 
     134    ######## 
     135    # LAMB # 
     136    ######## 
     137    cl = reshape(lamb_ice[imo, :, :], size(lamb_ice[imo, :, :]))[nonzero(isnan(reshape(lamb_ice[imo, :, :], size(lamb_ice[imo, :, :]))) == False)] 
     138    lamb_vec[imo, 0 : len(cl)] = cl 
     139    hist_vals_lamb[imo, :] = hist(lamb_vec[imo, 0 : len(cl)], bins = bin, normed = True, histtype='step')[0] 
     140    for ibin in range (0, bin): 
     141        corresp_emis_lamb[imo, ibin] = mean(hist(lamb_vec[imo, 0 : len(cl)], bins = bin, normed = True, histtype='step')[1][ibin : ibin + 2]) 
     142    print 'compute DIFF distribution' 
     143    ######## 
     144    # DIFF # 
     145    ######## 
     146    cd = reshape(diff_ice[imo, :, :], size(diff_ice[imo, :, :]))[nonzero(isnan(reshape(diff_ice[imo, :, :], size(diff_ice[imo, :, :]))) == False)] 
     147    diff_vec[imo, 0 : len(cd)] = cd 
     148    hist_vals_diff[imo, :] = hist(diff_vec[imo, 0 : len(cd)], bins = bin, normed = True, histtype='step')[0] 
     149    for ibin in range (0, bin): 
     150        corresp_emis_diff[imo, ibin] = mean(hist(diff_vec[imo, 0 : len(cd)], bins = bin, normed = True, histtype='step')[1][ibin : ibin + 2]) 
     151    print 'compute RATIO distribution' 
     152    ######### 
     153    # RATIO # 
     154    ######### 
     155    cr = reshape(ratio_ice[imo, :, :], size(ratio_ice[imo, :, :]))[nonzero(isnan(reshape(ratio_ice[imo, :, :], size(ratio_ice[imo, :, :]))) == False)] 
     156    ratio_vec[imo, 0 : len(cr)] = cr 
     157    hist_vals_ratio[imo, :] = hist(ratio_vec[imo, 0 : len(cr)], bins = bin, normed = True, histtype='step')[0] 
     158    for ibin in range (0, bin): 
     159        corresp_emis_ratio[imo, ibin] = mean(hist(ratio_vec[imo, 0 : len(cr)], bins = bin, normed = True, histtype='step')[1][ibin : ibin + 2]) 
     160    ###################### 
     161    # stack in .dat file # 
     162    ###################### 
     163    print 'start stacking in .dat file' 
     164    #data_classif = open ('/net/argos/data/parvati/lahlod/ARCTIC/AMSUB_ice_class/sub_classification/AMSUB'+str(frequ)+'_data_classification_parameters_ice_no-ice_with_AMSUA23-spec_2009.dat', 'a') 
     165    '''for ii in range (0, bin): 
     166        data_classif.write(('%(months)10s    %(hist_vals_spec)10.5f    %(corresp_emis_spec)10.5f    %(hist_vals_lamb)10.5f    %(corresp_emis_lamb)10.5f    %(hist_vals_diff)10.5f    %(corresp_emis_diff)10.5f    %(hist_vals_rate)10.5f    %(corresp_emis_rate)10.5f    \n' % { 
     167                                            'months':month[imo], 
     168                                            'hist_vals_spec':hist_vals_spec[imo, ii], 
     169                                            'corresp_emis_spec':corresp_emis_spec[imo, ii], 
     170                                            'hist_vals_lamb':hist_vals_lamb[imo, ii], 
     171                                            'corresp_emis_lamb':corresp_emis_lamb[imo, ii], 
     172                                            'hist_vals_diff':hist_vals_diff[imo, ii], 
     173                                            'corresp_emis_diff':corresp_emis_diff[imo, ii], 
     174                                            'hist_vals_rate':hist_vals_ratio[imo, ii], 
     175                                            'corresp_emis_rate':corresp_emis_ratio[imo, ii], 
     176                                            }))''' 
     177    ######################## 
     178    # stack in netcdf file # 
     179    ########################  
     180    print 'stack in file month ' + str(month[imo]) 
     181    rootgrp = Dataset('/net/argos/data/parvati/lahlod/ARCTIC/AMSUA_ice_class/sub_classification/cartesian_grid_map_sea_ice_extent_with-AMSUA23-and-30_' + month[imo] + '2009_AMSUA' + str(frequ) + '_spec_lamb_thresholds.nc', 'w', format='NETCDF3_CLASSIC') 
     182    rootgrp.createDimension('longitude', len(xvec)) 
     183    rootgrp.createDimension('latitude', len(yvec)) 
     184    nc_lon = rootgrp.createVariable('longitude', 'f', ('longitude',)) 
     185    nc_lat = rootgrp.createVariable('latitude', 'f', ('latitude',)) 
     186    nc_ice_spec = rootgrp.createVariable('spec_ice_area', 'f', ('latitude', 'longitude')) 
     187    nc_ice_lamb = rootgrp.createVariable('lamb_ice_area', 'f', ('latitude', 'longitude')) 
     188    nc_ice_diff = rootgrp.createVariable('diff_ice_area', 'f', ('latitude', 'longitude')) 
     189    nc_ice_ratio = rootgrp.createVariable('ratio_ice_area', 'f', ('latitude', 'longitude')) 
     190    nc_lon[:] = xvec 
     191    nc_lat[:] = yvec 
     192    nc_ice_spec[:] = spec_ice[imo, :, :] 
     193    nc_ice_lamb[:] = lamb_ice[imo, :, :] 
     194    nc_ice_diff[:] = diff_ice[imo, :, :] 
     195    nc_ice_ratio[:] = ratio_ice[imo, :, :] 
     196    rootgrp.close() 
     197 
     198 
     199months2 = np.array([7, 8])# use AMSUA 30GHz to delimit ice/no_ice for AUGUST and SEPTEMBER 
     200for imo in months2: 
     201    print 'month ' + month[imo] 
     202    ################################################################################## 
     203    # choice of AMSUA 23GHz delimitation ice/no_ice for the sub_classification study # 
     204    ################################################################################## 
     205    print 'open threshold file' 
     206    fichier_emis = Dataset('/net/argos/data/parvati/lahlod/ARCTIC/AMSUA_ice_class/cartesian_grid_map_ice_no-ice_' + str(month[imo]) + '2009_AMSUA23_spec_lamb_thresholds.nc', 'r', format='NETCDF3_CLASSIC') 
     207    spec_lim = fichier_emis.variables['spec_ice_area'][:] 
     208    #lamb_lim = fichier_emis.variables['lamb_ice_area'][:] 
     209    fichier_emis.close() 
     210    ######################################################### 
     211    # application of AMSUA 23GHz delimitation to other data # 
     212    ######################################################### 
     213    print 'open emissivity to sub_classify file' 
     214    ## data of emis SPEC, LAMB, DIFF(SPEC-LAMB) 
     215    fichier_e = Dataset('/net/argos/data/parvati/lahlod/ARCTIC/monthly_GLACE/gridded_data/cartesian_grid/res_40/cartesian_grid_monthly_data_lamb_spec_near_nadir_AMSUA' + str(frequ) + '_' + str(month[imo]) + '2009.nc', 'r', format='NETCDF3_CLASSIC') 
     216    day = fichier_e.variables['days'][:] 
     217    emis_spec = fichier_e.variables['e_spec'][:] 
     218    emis_lamb = fichier_e.variables['e_lamb'][:] 
     219    emis_diff = fichier_e.variables['e_spec_lamb'][:] 
     220    fichier_e.close() 
     221    for ilon in range (0, nx): 
     222        for ilat in range (0, ny): 
     223            spec_month[imo, ilat, ilon] = mean(emis_spec[ilat, ilon, :][nonzero(isnan(emis_spec[ilat, ilon, :]) == False)]) 
     224            lamb_month[imo, ilat, ilon] = mean(emis_lamb[ilat, ilon, :][nonzero(isnan(emis_lamb[ilat, ilon, :]) == False)]) 
     225            diff_month[imo, ilat, ilon] = mean(emis_diff[ilat, ilon, :][nonzero(isnan(emis_diff[ilat, ilon, :]) == False)]) 
     226    ## data of emis RATIO 
     227    fichier_r = Dataset('/net/argos/data/parvati/lahlod/ARCTIC/monthly_GLACE/gridded_data/cartesian_grid/res_40/cartesian_grid_monthly_lamb-spec_ratio_near_nadir_AMSUA' + str(frequ) + '_' + str(month[imo]) + '2009.nc', 'r', format='NETCDF3_CLASSIC') 
     228    ratio_month[imo, :, :] = fichier_r.variables['emis_ratio'][:] 
     229    fichier_r.close() 
     230    print 'compute matrix of parameter on SEA ICE area' 
     231    for ilon in range (0, nx): 
     232        for ilat in range (0, ny): 
     233            if (isnan(spec_lim[ilat, ilon]) == True): 
     234                spec_ice[imo, ilat, ilon] = NaN 
     235                lamb_ice[imo, ilat, ilon] = NaN 
     236                diff_ice[imo, ilat, ilon] = NaN 
     237                ratio_ice[imo, ilat, ilon] = NaN 
     238            else: 
     239                spec_ice[imo, ilat, ilon] = spec_month[imo, ilat, ilon] 
     240                lamb_ice[imo, ilat, ilon] = lamb_month[imo, ilat, ilon] 
     241                diff_ice[imo, ilat, ilon] = diff_month[imo, ilat, ilon] 
     242                ratio_ice[imo, ilat, ilon] = ratio_month[imo, ilat, ilon] 
     243    print 'compute SPEC distribution' 
     244    ######## 
     245    # SPEC # 
     246    ######## 
     247    cs = reshape(spec_ice[imo, :, :], size(spec_ice[imo, :, :]))[nonzero(isnan(reshape(spec_ice[imo, :, :], size(spec_ice[imo, :, :]))) == False)] 
     248    spec_vec[imo, 0 : len(cs)] = cs 
     249    hist_vals_spec[imo, :] = hist(spec_vec[imo, 0 : len(cs)], bins = bin, normed = True, histtype='step')[0] 
     250    for ibin in range (0, bin): 
     251        corresp_emis_spec[imo, ibin] = mean(hist(spec_vec[imo, 0 : len(cs)], bins = bin, normed = True, histtype='step')[1][ibin : ibin + 2]) 
     252    print 'compute LAMB distribution' 
     253    ######## 
     254    # LAMB # 
     255    ######## 
     256    cl = reshape(lamb_ice[imo, :, :], size(lamb_ice[imo, :, :]))[nonzero(isnan(reshape(lamb_ice[imo, :, :], size(lamb_ice[imo, :, :]))) == False)] 
     257    lamb_vec[imo, 0 : len(cl)] = cl 
     258    hist_vals_lamb[imo, :] = hist(lamb_vec[imo, 0 : len(cl)], bins = bin, normed = True, histtype='step')[0] 
     259    for ibin in range (0, bin): 
     260        corresp_emis_lamb[imo, ibin] = mean(hist(lamb_vec[imo, 0 : len(cl)], bins = bin, normed = True, histtype='step')[1][ibin : ibin + 2]) 
     261    print 'compute DIFF distribution' 
     262    ######## 
     263    # DIFF # 
     264    ######## 
     265    cd = reshape(diff_ice[imo, :, :], size(diff_ice[imo, :, :]))[nonzero(isnan(reshape(diff_ice[imo, :, :], size(diff_ice[imo, :, :]))) == False)] 
     266    diff_vec[imo, 0 : len(cd)] = cd 
     267    hist_vals_diff[imo, :] = hist(diff_vec[imo, 0 : len(cd)], bins = bin, normed = True, histtype='step')[0] 
     268    for ibin in range (0, bin): 
     269        corresp_emis_diff[imo, ibin] = mean(hist(diff_vec[imo, 0 : len(cd)], bins = bin, normed = True, histtype='step')[1][ibin : ibin + 2]) 
     270    print 'compute RATIO distribution' 
     271    ######### 
     272    # RATIO # 
     273    ######### 
     274    cr = reshape(ratio_ice[imo, :, :], size(ratio_ice[imo, :, :]))[nonzero(isnan(reshape(ratio_ice[imo, :, :], size(ratio_ice[imo, :, :]))) == False)] 
     275    ratio_vec[imo, 0 : len(cr)] = cr 
     276    hist_vals_ratio[imo, :] = hist(ratio_vec[imo, 0 : len(cr)], bins = bin, normed = True, histtype='step')[0] 
     277    for ibin in range (0, bin): 
     278        corresp_emis_ratio[imo, ibin] = mean(hist(ratio_vec[imo, 0 : len(cr)], bins = bin, normed = True, histtype='step')[1][ibin : ibin + 2]) 
     279    ###################### 
     280    # stack in .dat file # 
     281    ###################### 
     282    print 'start stacking in .dat file' 
     283    #data_classif = open ('/net/argos/data/parvati/lahlod/ARCTIC/AMSUB_ice_class/sub_classification/AMSUB'+str(frequ)+'_data_classification_parameters_ice_no-ice_with_AMSUA23-spec_2009.dat', 'a') 
     284    '''for ii in range (0, bin): 
     285        data_classif.write(('%(months)10s    %(hist_vals_spec)10.5f    %(corresp_emis_spec)10.5f    %(hist_vals_lamb)10.5f    %(corresp_emis_lamb)10.5f    %(hist_vals_diff)10.5f    %(corresp_emis_diff)10.5f    %(hist_vals_rate)10.5f    %(corresp_emis_rate)10.5f    \n' % { 
     286                                            'months':month[imo], 
     287                                            'hist_vals_spec':hist_vals_spec[imo, ii], 
     288                                            'corresp_emis_spec':corresp_emis_spec[imo, ii], 
     289                                            'hist_vals_lamb':hist_vals_lamb[imo, ii], 
     290                                            'corresp_emis_lamb':corresp_emis_lamb[imo, ii], 
     291                                            'hist_vals_diff':hist_vals_diff[imo, ii], 
     292                                            'corresp_emis_diff':corresp_emis_diff[imo, ii], 
     293                                            'hist_vals_rate':hist_vals_ratio[imo, ii], 
     294                                            'corresp_emis_rate':corresp_emis_ratio[imo, ii], 
     295                                            }))''' 
     296    ######################## 
     297    # stack in netcdf file # 
     298    ########################  
     299    print 'stack in file month ' + str(month[imo]) 
     300    rootgrp = Dataset('/net/argos/data/parvati/lahlod/ARCTIC/AMSUA_ice_class/sub_classification/cartesian_grid_map_sea_ice_extent_with-AMSUA23-and-30_' + month[imo] + '2009_AMSUA' + str(frequ) + '_spec_lamb_thresholds.nc', 'w', format='NETCDF3_CLASSIC') 
     301    rootgrp.createDimension('longitude', len(xvec)) 
     302    rootgrp.createDimension('latitude', len(yvec)) 
     303    nc_lon = rootgrp.createVariable('longitude', 'f', ('longitude',)) 
     304    nc_lat = rootgrp.createVariable('latitude', 'f', ('latitude',)) 
     305    nc_ice_spec = rootgrp.createVariable('spec_ice_area', 'f', ('latitude', 'longitude')) 
     306    nc_ice_lamb = rootgrp.createVariable('lamb_ice_area', 'f', ('latitude', 'longitude')) 
     307    nc_ice_diff = rootgrp.createVariable('diff_ice_area', 'f', ('latitude', 'longitude')) 
     308    nc_ice_ratio = rootgrp.createVariable('ratio_ice_area', 'f', ('latitude', 'longitude')) 
     309    nc_lon[:] = xvec 
     310    nc_lat[:] = yvec 
     311    nc_ice_spec[:] = spec_ice[imo, :, :] 
     312    nc_ice_lamb[:] = lamb_ice[imo, :, :] 
     313    nc_ice_diff[:] = diff_ice[imo, :, :] 
     314    nc_ice_ratio[:] = ratio_ice[imo, :, :] 
     315    rootgrp.close() 
     316 
     317''' 
     318data_classif.close() 
     319''' 
     320 
     321 
     322 
     323''' 
    48324# test: 
    49325ion() 
     
    52328y_coast = y_ind 
    53329z_coast = z_ind 
    54 map_cartesian_grid.draw_map_cartes_l(x_coast, y_coast, z_coast, volume, xdist, ydist, emis_spec[:, :], 0.45, 1.02, 0.01, cm.s3pcpn_l_r, 'test') 
     330for imo in range (0, M): 
     331    map_cartesian_grid.draw_map_cartes_l(x_coast, y_coast, z_coast, volume, xvec, yvec, ratio_ice[imo, :, :], 0., 4., 0.01, cm.s3pcpn_l_r, 'Sea ice extent - emissivity RATIO') 
     332    title('AMSUA ' + str(frequ) + ' - ' + str(month[imo]) + ' 2009') 
     333    plt.savefig('/usr/home/lahlod/twice_d/fig_output_ARCTIC/fig_output_sea_ice_study/ice_class_AMSUA/sub_classification/maps_sea_ice_extent/emiss_ratio_map_AMSUA'+str(frequ)+'_with_AMSUA23-and-30-spec_'+str(month[imo])+'_2009.png') 
     334''' 
     335 
     336 
  • trunk/src/scripts_Laura/ARCTIC/Travail_CEN/compare_ice_area_different_data.py

    r47 r48  
    164164j = np.zeros([M], float) 
    165165for imo in range (0, M): 
    166     a[imo] = AS[0, imo] - area_osi[imo] 
    167     b[imo] = AL[0, imo] - area_osi[imo] 
    168     c[imo] = AS[1, imo] - area_osi[imo] 
    169     d[imo] = AL[1, imo] - area_osi[imo] 
    170     e[imo] = AS[2, imo] - area_osi[imo] 
    171     f[imo] = AL[2, imo] - area_osi[imo] 
    172     g[imo] = AS[3, imo] - area_osi[imo] 
    173     h[imo] = AL[3, imo] - area_osi[imo] 
    174     i[imo] = area_s_B[imo] - area_osi[imo] 
    175     j[imo] = area_l_B[imo] - area_osi[imo] 
     166    a[imo] = (AS[0, imo] - area_osi[imo]) / area_osi[imo] 
     167    b[imo] = (AL[0, imo] - area_osi[imo]) / area_osi[imo] 
     168    c[imo] = (AS[1, imo] - area_osi[imo]) / area_osi[imo] 
     169    d[imo] = (AL[1, imo] - area_osi[imo]) / area_osi[imo] 
     170    e[imo] = (AS[2, imo] - area_osi[imo]) / area_osi[imo] 
     171    f[imo] = (AL[2, imo] - area_osi[imo]) / area_osi[imo] 
     172    g[imo] = (AS[3, imo] - area_osi[imo]) / area_osi[imo] 
     173    h[imo] = (AL[3, imo] - area_osi[imo]) / area_osi[imo] 
     174    i[imo] = (area_s_B[imo] - area_osi[imo]) / area_osi[imo] 
     175    j[imo] = (area_l_B[imo] - area_osi[imo]) / area_osi[imo] 
    176176 
    177177 
Note: See TracChangeset for help on using the changeset viewer.