@@ -1317,6 +1317,15 @@ def _low_filter(self, grid_name, w_cut, **kwargs):
1317
1317
def convolve_filter_with_dynamic_kernel (
1318
1318
self , grid , kernel_func , lat_max = 85 , extend = False , ** kwargs_func
1319
1319
):
1320
+ """
1321
+ :param str grid: grid name
1322
+ :param func kernel_func: function of kernel to use
1323
+ :param float lat_max: absolute latitude above no filtering apply
1324
+ :param bool extend: if False, only non masked value will return a filtered value
1325
+ :param dict kwargs_func: look at kernel_func
1326
+ :return: filtered value
1327
+ :rtype: array
1328
+ """
1320
1329
if (abs (self .y_c ) > lat_max ).any ():
1321
1330
logger .warning ("No filtering above %f degrees of latitude" , lat_max )
1322
1331
if isinstance (grid , str ):
@@ -1409,7 +1418,7 @@ def lanczos_high_filter(
1409
1418
lat_max = lat_max ,
1410
1419
wave_length = wave_length ,
1411
1420
order = order ,
1412
- ** kwargs
1421
+ ** kwargs ,
1413
1422
)
1414
1423
self .vars [grid_name ] -= data_out
1415
1424
@@ -1421,7 +1430,7 @@ def lanczos_low_filter(self, grid_name, wave_length, order=1, lat_max=85, **kwar
1421
1430
lat_max = lat_max ,
1422
1431
wave_length = wave_length ,
1423
1432
order = order ,
1424
- ** kwargs
1433
+ ** kwargs ,
1425
1434
)
1426
1435
self .vars [grid_name ] = data_out
1427
1436
@@ -1436,6 +1445,15 @@ def bessel_band_filter(self, grid_name, wave_length_inf, wave_length_sup, **kwar
1436
1445
self .vars [grid_name ] -= data_out
1437
1446
1438
1447
def bessel_high_filter (self , grid_name , wave_length , order = 1 , lat_max = 85 , ** kwargs ):
1448
+ """
1449
+ :param str grid_name: grid to filter, data will replace original one
1450
+ :param float wave_length: in km
1451
+ :param int order: order to use, if > 1 negativ value will be present in kernel
1452
+ :param float lat_max: absolute latitude above no filtering apply
1453
+ :param dict kwargs: look at :py:meth:`RegularGridDataset.convolve_filter_with_dynamic_kernel`
1454
+
1455
+ .. minigallery:: py_eddy_tracker.RegularGridDataset.bessel_high_filter
1456
+ """
1439
1457
logger .debug (
1440
1458
"Run filtering with wave of %(wave_length)s km and order of %(order)s ..." ,
1441
1459
dict (wave_length = wave_length , order = order ),
@@ -1446,7 +1464,7 @@ def bessel_high_filter(self, grid_name, wave_length, order=1, lat_max=85, **kwar
1446
1464
lat_max = lat_max ,
1447
1465
wave_length = wave_length ,
1448
1466
order = order ,
1449
- ** kwargs
1467
+ ** kwargs ,
1450
1468
)
1451
1469
logger .debug ("Filtering done" )
1452
1470
self .vars [grid_name ] -= data_out
@@ -1458,7 +1476,7 @@ def bessel_low_filter(self, grid_name, wave_length, order=1, lat_max=85, **kwarg
1458
1476
lat_max = lat_max ,
1459
1477
wave_length = wave_length ,
1460
1478
order = order ,
1461
- ** kwargs
1479
+ ** kwargs ,
1462
1480
)
1463
1481
self .vars [grid_name ] = data_out
1464
1482
@@ -1688,7 +1706,14 @@ def add_uv_lagerloef(self, grid_height, uname="u", vname="v", schema=15):
1688
1706
1689
1707
def add_uv (self , grid_height , uname = "u" , vname = "v" , stencil_halfwidth = 4 ):
1690
1708
"""Compute a u and v grid
1691
- """
1709
+
1710
+ :param str grid_height: grid name where funtion will apply stencil method
1711
+ :param str uname: future name of u
1712
+ :param str vname: future name of v
1713
+ :param int stencil_halfwidth: largest stencil could be apply
1714
+
1715
+ .. minigallery:: py_eddy_tracker.RegularGridDataset.add_uv
1716
+ """
1692
1717
logger .info ("Add u/v variable with stencil method" )
1693
1718
data = self .grid (grid_height )
1694
1719
h_dict = self .variables_description [grid_height ]
0 commit comments