Example #1
0
def get_grid(grid_dir='.'):

    gfil = grid_dir + '/regional.grid.a'
    dfil = grid_dir + '/regional.depth.a'
    #
    plon = Mrdg.get_array_from_HYCOM_binary(gfil, 1)
    nx, ny = plon.shape
    #
    plat = Mrdg.get_array_from_HYCOM_binary(gfil, 2, dims=(nx, ny))
    depths = Mrdg.get_array_from_HYCOM_binary(dfil, 1, dims=(nx, ny))

    return plon, plat, depths, nx, ny
Example #2
0
    for i in range(mask.shape[x]):
      if (i == 2.0):
        mask[i, :] = 1
      else:
        mask[i, :] = 0

  return grid

import fns_plotting as Fplt
import mod_reading  as mr
from matplotlib import pyplot as plt

gdir  = '/work/shared/nersc/msc/ModelInput/../REANALYSIS/topo'
afil  = gdir+'/regional.grid.a'

plon  = mr.get_array_from_HYCOM_binary(afil,1)
plat  = mr.get_array_from_HYCOM_binary(afil,2)
qlon  = mr.get_array_from_HYCOM_binary(afil,3)
qlat  = mr.get_array_from_HYCOM_binary(afil,4)
ulon  = mr.get_array_from_HYCOM_binary(afil,5)
ulat  = mr.get_array_from_HYCOM_binary(afil,6)
vlon  = mr.get_array_from_HYCOM_binary(afil,7)
vlat  = mr.get_array_from_HYCOM_binary(afil,8)

if 0:
   bmap  = Fplt.start_HYCOM_map('TP4')
   bmap.plot(plon[:-1,:-1],plat[:-1,:-1],'.k',latlon=True)
   bmap.plot(qlon,qlat,'or',latlon=True)
   bmap.plot(ulon,ulat,'^g',latlon=True)
   bmap.plot(vlon,vlat,'vb',latlon=True)
   plt.show()
##################################################################
# read in arrays from TP4 binaries (.a)
# lon/lat from grid binary
tdir = 'eg_TP4files'
plon, plat, depths, nx, ny = get_grid(tdir)
#
afil = tdir + '/TP4archv_wav.2015_139_180000.a'
bfil = afil[:-2] + '.b'

# make dictionary from bfil to get record number in afil
vlst = Mrdg.get_record_numbers_HYCOM(bfil)

# get recno from dictionary created from bfil
vbl = 'ficem'
ficem = Mrdg.get_array_from_HYCOM_binary(afil, vlst[vbl], dims=(nx, ny))
vbl = 'dfloe'
dfloe = Mrdg.get_array_from_HYCOM_binary(afil, vlst[vbl], dims=(nx, ny))
##################################################################

fig = plt.figure()
bm = Mplt.start_HYCOM_map('TP4')
if 1:
    bm.pcolor(plon, plat, ficem, latlon=True, vmin=0., vmax=1.)
    plt.colorbar()

MPi, MPl = get_ice_edge(ficem, depths, plon, plat, bm)

# simplify ice
MP = shops.unary_union(MPi)
Example #4
0
    afil = tdir + '/TP4DAILY_2015_140_2015_140.a'
else:
    afil = tdir + '/TP4archv_wav.2015_139_180000.a'
bfil = afil[:-2] + '.b'

# make dictionary from bfil to get record number in afil
vlst = Mrdg.get_record_numbers_HYCOM(bfil)
if 'TP4DAILY' in afil:
    # add extra keys (ficem/fice,hicem/hice difference)
    vlst.update({'ficem': vlst['fice']})
    vlst.update({'hicem': vlst['hice']})

# get recno from dictionary created from bfil
print(vlst)
recno = vlst[vbl]
V = Mrdg.get_array_from_HYCOM_binary(afil, recno, dims=(nx, ny))
#print('recno='+str(recno))
##################################################################

if 0:
    # plot V with imshow:
    plt.imshow(V)
    plt.title(vbl)
    plt.colorbar()
    plt.show()
elif 1:
    # plot V with basemap:
    fig = plt.figure()
    bm = Mplt.start_HYCOM_map('TP4')

    contours = []
         jtest = 350

   elif MOD=='FR1':
         Model    = 'FR1a0.03'
         topo_dir = M_INP+'/FramStrait_Hyc2.2.12/'+Model+'/topo/'

         # test one point
         itest = 200
         jtest = 200
   ###############################################################################################

   ###############################################################################################
   # read binary files
   rfil  = topo_dir+'/regional.grid.a'
   print('\nReading '+rfil)
   plon  = Mr.get_array_from_HYCOM_binary(rfil,1)
   plat  = Mr.get_array_from_HYCOM_binary(rfil,2)
   dims  = plon.shape

   afil     = piv_path+'/pivots/'+Model+'_pivots_'+dname+'.a'
   print('\nReading '+afil)
   ipiv  = Mr.get_array_from_HYCOM_binary(afil,1,dims=dims)
   jpiv  = Mr.get_array_from_HYCOM_binary(afil,2,dims=dims)
   dist  = Mr.get_array_from_HYCOM_binary(afil,3,dims=dims)

   tlon  = plon[itest-1,jtest-1]
   tlat  = plat[itest-1,jtest-1]
   ###############################################################################################

   ###############################################################################################
   # interpolate variable