Skip to content

Commit 75cb66f

Browse files
committed
Added Amplitude object/file
1 parent 56cf76e commit 75cb66f

File tree

4 files changed

+579
-484
lines changed

4 files changed

+579
-484
lines changed

make_eddy_track_AVISO.py

Lines changed: 20 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,9 @@
3030
Scroll down to line ~640 to get started
3131
===============================================================================
3232
"""
33-
33+
import sys
3434
import glob as glob
35-
from py_eddy_tracker_classes import plt, np, dt, netcdf, ndimage, time, \
35+
from py_eddy_tracker_classes import plt, np, dt, Dataset, ndimage, time, \
3636
datestr2datetime, gaussian_resolution, \
3737
get_cax, collection_loop, track_eddies, \
3838
anim_figure
@@ -75,7 +75,7 @@ def read_nc(self, varfile, varname, indices="[:]"):
7575
varname : variable ('temp', 'mask_rho', etc) to read
7676
indices : string of index ranges, eg. '[0,:,0]'
7777
'''
78-
with netcdf.Dataset(varfile) as nc:
78+
with Dataset(varfile) as nc:
7979
try:
8080
var = eval(''.join(("nc.variables[varname]", indices)))
8181
except Exception:
@@ -90,7 +90,7 @@ def read_nc_att(self, varfile, varname, att):
9090
varname : variable ('temp', 'mask_rho', etc) to read
9191
att : string of attribute, eg. 'valid_range'
9292
'''
93-
with netcdf.Dataset(varfile) as nc:
93+
with Dataset(varfile) as nc:
9494
return eval(''.join(("nc.variables[varname].", att)))
9595

9696

@@ -488,13 +488,13 @@ def __init__(self, AVISO_FILE, LONMIN, LONMAX, LATMIN, LATMAX,
488488
self.fillval = self.read_nc_att(AVISO_FILE,
489489
'Grid_0001', '_FillValue')
490490

491-
if np.logical_and(LONMIN < 0, LONMAX <=0):
491+
if LONMIN < 0 and LONMAX <=0:
492492
self._lon -= 360.
493493
self._lon, self._lat = np.meshgrid(self._lon, self._lat)
494494
self._angle = np.zeros_like(self._lon)
495495
# To be used for handling a longitude range that
496496
# crosses 0 degree meridian
497-
if np.logical_and(LONMIN < 0, LONMAX >= 0):
497+
if LONMIN < 0 and LONMAX >= 0:
498498
self.ZERO_CROSSING = True
499499

500500
self.set_initial_indices(LONMIN, LONMAX, LATMIN, LATMAX)
@@ -720,8 +720,12 @@ def pcol_2dxy(self, x, y):
720720

721721
if __name__ == '__main__':
722722

723+
724+
725+
YAML_FILE = sys.argv[1]
726+
print "\nLaunching with yaml file: %s" % YAML_FILE
723727
# Choose a yaml configuration file
724-
YAML_FILE = 'eddy_tracker_configuration.yaml'
728+
#YAML_FILE = 'eddy_tracker_configuration.yaml'
725729
#YAML_FILE = 'BlackSea.yaml'
726730

727731
#--------------------------------------------------------------------------
@@ -765,7 +769,7 @@ def pcol_2dxy(self, x, y):
765769
MAX_SLA = config['CONTOUR_PARAMETER']['CONTOUR_PARAMETER_SLA']['MAX_SLA']
766770
INTERVAL = config['CONTOUR_PARAMETER']['CONTOUR_PARAMETER_SLA']['INTERVAL']
767771
CONTOUR_PARAMETER = np.arange(-MAX_SLA, MAX_SLA + INTERVAL, INTERVAL)
768-
SHAPE_ERROR = 55. * np.ones(CONTOUR_PARAMETER.size)
772+
SHAPE_ERROR = config['SHAPE_ERROR'] * np.ones(CONTOUR_PARAMETER.size)
769773
elif 'Q' in DIAGNOSTIC_TYPE:
770774
MAX_Q = config['CONTOUR_PARAMETER']['CONTOUR_PARAMETER_Q']['MAX_Q']
771775
NUM_LEVS = config['CONTOUR_PARAMETER']['CONTOUR_PARAMETER_Q']['NUM_LEVS']
@@ -812,6 +816,8 @@ def pcol_2dxy(self, x, y):
812816

813817
SEPARATION_METHOD = config['SEPARATION_METHOD']
814818

819+
MAX_LOCAL_EXTREMA = config['MAX_LOCAL_EXTREMA']
820+
815821
TRACK_EXTRA_VARIABLES = config['TRACK_EXTRA_VARIABLES']
816822

817823
VERBOSE = config['VERBOSE']
@@ -897,8 +903,9 @@ def pcol_2dxy(self, x, y):
897903

898904
A_eddy.SMOOTHING = SMOOTHING
899905
C_eddy.SMOOTHING = SMOOTHING
900-
#A_eddy.smooth_fac = smooth_fac
901-
#C_eddy.smooth_fac = smooth_fac
906+
907+
A_eddy.MAX_LOCAL_EXTREMA = MAX_LOCAL_EXTREMA
908+
C_eddy.MAX_LOCAL_EXTREMA = MAX_LOCAL_EXTREMA
902909

903910
A_eddy.M = sla_grd.M
904911
C_eddy.M = sla_grd.M
@@ -991,7 +998,7 @@ def pcol_2dxy(self, x, y):
991998

992999
for AVISO_FILE in AVISO_FILES:
9931000

994-
with netcdf.Dataset(AVISO_FILE) as nc:
1001+
with Dataset(AVISO_FILE) as nc:
9951002

9961003
try:
9971004
thedate = nc.OriginalName
@@ -1007,8 +1014,7 @@ def pcol_2dxy(self, x, y):
10071014

10081015
rtime = thedate
10091016

1010-
if np.logical_and(thedate >= thestartdate,
1011-
thedate <= theenddate):
1017+
if thedate >= thestartdate and thedate <= theenddate:
10121018
active = True
10131019
else:
10141020
active = False
@@ -1257,6 +1263,7 @@ def pcol_2dxy(self, x, y):
12571263

12581264
#print 'figure saving'
12591265
#tt = time.time()
1266+
12601267
anim_figure(A_eddy, C_eddy, Mx, My, pMx, pMy, plt.cm.RdBu_r, rtime, DIAGNOSTIC_TYPE,
12611268
SAVE_DIR, 'SLA ' + tit, animax, animax_cbar)
12621269
#print 'figure saving done in %s seconds\n' %(time.time() - tt)

0 commit comments

Comments
 (0)