- Apr 03, 2019
-
-
Lionel GUEZ authored
-
- Feb 04, 2019
-
-
Lionel GUEZ authored
spherical_polygon_area to spher_polygon_area. In procedure max_speed_contour_ssh, instead of aborting when the speed is not defined, continue with missing_ssh. Found such a case in November 29th, 2015 data. Added corresponding test. In procedure set_max_speed, if max_speed_contour_ssh returns missing_ssh then we just take the outermost contour as max-speed contour.
-
- Sep 25, 2018
-
-
Lionel GUEZ authored
values at longitude boundaries, in case of periodicity. Add argument "periodic" to procedures get_snapshot and set_all_outerm. Duplicate values at longitude boundaries in ssh, u, v if periodic. set_all_outerm can now call local_extrema with periodic true. In procedure set_all_outerm, we shift the longitudes of outside points if necessary. In program test_get_snapshot, define periodic from step and nlon.
-
- Sep 21, 2018
-
-
Lionel GUEZ authored
internal procedure. In procedure local_extrema, if periodic, pass arrays "field" and "extr_map" with a duplicate column at each bound. Then there is no need to copy to local 3x3 arrays. Add argument my_lbound.
-
- Sep 03, 2018
-
-
Lionel GUEZ authored
reading and spares some disk space: we can reduce the size of the field from 20 to 14 characters. We do not loose precision with this reduction because the order of magnitude of the area is 1e3 km2 or more so the decimal part of the field was 0. Accordingly, change the are for a null contour from - 1 to - 1e6 m2. Bug fix in program test_set_max_speed. No need for width 20 for field "speed".
-
- Aug 31, 2018
-
-
Lionel GUEZ authored
-
- Aug 03, 2018
-
-
Lionel GUEZ authored
amplitude min_amp if the difference between innermost level from local_extrema and ssh extremum is smaller. This is not only a performance improvement but also an improvement of results: the algorithm sometimes finds a contour at just min_amp when before it did not find any: the bisection algorithm converged just below min_amp. Also, as a result, if an outermost contour is found, it is now necessarily of sufficient amplitude.
-
- Jul 23, 2018
-
-
Lionel GUEZ authored
Stdin to Input. Two input dir provided for in tests.json: $input_dir and $large_input_dir. Rename everywhere variable nearby_extr to outside_points to avoid confusion with function nearby_extr. Rename file "nearby_extr.csv" to "outside_points.csv". In procedure nearby_extr, include in the selection extrema with different sign, even if they do not have sufficient amplitude. Bug fix in read_eddy: use the value of read attribute to define e%interpolated.
-
- Jul 13, 2018
-
-
Lionel GUEZ authored
procedure set_all_outerm. The idea is that, in this branch, nearby_extr will eventually include extrema depending not only on them having sufficient amplitude but also on their cyclonicity. Both pieces of information cannot be simply encoded in extr_map.
-
- Apr 06, 2018
-
-
Lionel GUEZ authored
-
Lionel GUEZ authored
-
- Apr 05, 2018
-
-
Lionel GUEZ authored
src_test_get_snapshot. Move field speed from DBF file max_speed_contour to DBF file extremum because it can be associated to either the contour in outermost_contour or in max_speed_contour.
-
- Mar 30, 2018
-
-
Lionel GUEZ authored
instead of defining the component ssh to the ssh of the extremum or to the ssh of the outermost contour, use a missing value flag (1e4). Also, when radius4 >= 2 and the max speed contour is the outermost contour, use missing value flag in the ssh component of max speed contour instead of ssh on outermost contour. This makes clearer output. Add function null_ssh_contour. In procedure get_1_outerm, simplify the comparison of level_try and level_good. So we do not need any longer the dummy argument ssh_extremum.
-
- Mar 22, 2018
-
-
Lionel GUEZ authored
-
- Mar 20, 2018
-
-
Lionel GUEZ authored
-
Lionel GUEZ authored
-
- Jan 29, 2018
-
-
Lionel GUEZ authored
-
- Jan 24, 2018
-
-
Lionel GUEZ authored
For ssh, missing value is huge(0.). We have to take a large value because Contour_531 has an argument zmax for missing values. For velocity, missing value is a quiet NaN. We have to take this because we need to know if the interpolation procedure in mean_speed has not used any missing value and we do not want to alter the interpolation procedure itself. In local_extrema, we accept as local extrema only points with 8 valid values around them. When we look for the maximum speed contour, we are hoping that good contours do not englobe missing values. If this happens, the program aborts. When computing the mean speed on a contour, we are hoping that the interpolation of speed on contour points does not use missing values. If this happens, the program aborts. Draw coastlines in plot_snaphot.py. At the same time, this allows the use of any projection.
-
- Dec 20, 2017
-
-
Lionel GUEZ authored
with some components intent(in) and one component intent(out) was less clear. Also, replace argument ind_targ_extr by argument i. This is simpler both in get_1_outerm and in set_all_outerm. There is now no need to use an eddy in test_get_1_outerm.
-
Lionel GUEZ authored
-
Lionel GUEZ authored
set_all_outerm, for clarity.
-
- Dec 04, 2017
-
-
Lionel GUEZ authored
acceptable. So define flat_extr by a strict inequality in procedure get_snapshot. Procedure set_outermost_contour no longer has a dummy argument noise_around. We no longer call outermost_possible_level so we do not have an artificial discontinuity of results with and without maximum amplitude. We abandon the idea of reducing the amplitude of initial level_good compared to innermost_level: problem of consistence with get_snapshot, and it does not seem worth the trouble, just abandon those problematic extrema. Allow for null outermost_contour instead of aborting. In procedure get_snapshot, s%list_vis(i)%suff_amp is first defined only if flat_extr(i). Also we are no longer sure that set_outermost_contour finds an outermost contour so we have to test this to define s%list_vis(i)%suff_amp. noise_around is now defined only for flat_extr(i) and s%list_vis(i)%suff_amp. Also, since we may not find an outermost contour even if not flat_extr(i), we update s%extr_map after the second call to set_outermost_contour. In procedure local_extrema, we use the mask diff_center instead of mask_center. So we no longer need procedure construct_mask_center. In procedure local_extrema, we ignore one in two adjacent degenerate extrema instead of aborting. In plot_snapshot.py, color extrema and allow for null outermost contour. Synthesize output in test_local_extrema.py.
-
- Nov 17, 2017
-
-
Lionel GUEZ authored
outermost_possible_level. This is especially important if the extremum is one point away from the last point. Bug fix. In procedure set_outermost_contour, take level_good a little bit closer to ssh_extremum than innermost_level because of border points. Contour_531 will not close a contour passing at a point on the border. So if innermost_level corresponds to a point on the border, good_contour at innermost_level finds nothing. Make the program test_good_contour more general: read a NetCDF file instead of calling define_example_reg.
-
- Nov 10, 2017
-
-
Lionel GUEZ authored
-
- Oct 13, 2017
-
-
Lionel GUEZ authored
test_good_contour has more general input. test_inside tests only inside, no loop on radius.
-
- Oct 10, 2017
-
-
Lionel GUEZ authored
procedure get_eddy), with corresponding test. Take into account the fact that derived type polygon became polyline in library Contour_531. Use new procedure null_polyline from library Contour_531. Correct a sneaky bug in mean_speed: the last point in the polygon array is a duplicate of the first point, do not take the last point into account when averaging (and interpolating). Discovered this bug because the mean speed was not exactly the same for equivalent polygons with circular permutation. Change philosophy for the tests: read whole NetCDF variables, prepare different NetCDF files for different geographical regions if needed; read all data from file or namelist; read names of files on command line. Use generic test_program.sh (which is out of this project) instead of the specific tests_detection_eddies.sh.
-
- Sep 25, 2017
-
-
Lionel GUEZ authored
threshold. outermost_contour becomes set_outermost_contour. get_eddy disappears: it will be absorbed in get_snapshot. get_snapshot is temporarily broken so we do not compile test_get_snapshot. set_outermost_contour is in charge of finding nearby_extr and the initial value of level_try (get_outermost_contour was not). The method for this depends on the value of noise_around. The rest of the processing in set_outermost_contour is identical to what was done in get_outermost_contour. Made test_max_speed_contour_ssh more general: longitude-latitude window and eddy identifying number may be chosen at run-time. Made test_set_outermost_contour more general than test_outermost_contour was: longitude-latitude window and eddy identifying number may be chosen at run-time. For both test_max_speed_contour_ssh and test_set_outermost_contour, only the chosen longitude-latitude window is read from the NetCDF files. We have to call local_extrema because set_outermost_contour takes extr_map as an input argument (get_outermost_contour did not) and because longitude-latitude window and eddy identifying number may be chosen at run-time.
-