Skip to content
Snippets Groups Projects
  1. Apr 16, 2020
  2. Apr 15, 2020
    • GUEZ Lionel's avatar
      Use `shp_triplet` components for field identifiers · 59b5a302
      GUEZ Lionel authored
      Use the components for field identifiers of a variable of type
      `shp_triplet` instead of storing these field identifiers in variables
      of modules `init_shapefiles_m` and `read_field_indices_m`. The dummy
      argument hshp of procedure `read_field_indices` becomes
      `intent(inout)`.
      59b5a302
    • GUEZ Lionel's avatar
      Create derived type `shp_triplet` · df32aa8f
      GUEZ Lionel authored
      Create derived type `shp_triplet`. Motivation: we need to manipulate
      two triplets of shapefiles in program `eddy_graph`. Use everywhere a
      variable of type `shp_triplet` instead of the three variables
      `hshp_extremum`, `hshp_outermost`, `hshp_max_speed` when all three of
      them appear. Rename character variable `shp_triplet` to
      `shp_triplet_dir`.
      df32aa8f
    • GUEZ Lionel's avatar
      Polish · 35561387
      GUEZ Lionel authored
  3. Apr 08, 2020
    • GUEZ Lionel's avatar
      `test_get_snapshot` to `test_get_dispatch_snap` · fda1e6cd
      GUEZ Lionel authored
      In procedure `dispatch_snapshot`, rename dummy argument m to rank,
      clearer.
      
      Rename program `test_get_snapshot` to `test_get_dispatch_snap` and
      make it call `dispatch_snapshot` instead of `send_snapshot`. The only
      difference in result is that the program now writes files
      `isolated_nodes.txt` and `number_eddies.csv`.
      
      Check in program `test_overlap` that it is run on a single MPI process.
      fda1e6cd
  4. Apr 07, 2020
    • GUEZ Lionel's avatar
      Run MPI programs with mpiexec · d89d6b90
      GUEZ Lionel authored
      Change order of dummy arguments of procedure `get_snapshot` to make it
      more convenient to call with keywords. Rename dummy argument m to
      rank, clearer.
      
      Bug fix in `short_tests_.json`: run `test_read_snapshot` and
      `test_overlap` with `mpiexec -n 1`, else the programs may not be able
      to read standard input.
      d89d6b90
    • Lionel GUEZ's avatar
      Add scripts to compare with Matlab output · 8b804de2
      Lionel GUEZ authored
      Add scripts to compare with Matlab output and script to concatenate shapefiles.
      8b804de2
  5. Mar 06, 2020
    • Lionel GUEZ's avatar
      Add a receive test for program `test_get_snapshot` · d07eaadf
      Lionel GUEZ authored
      On our way to a generalization of script `filter.py`: use a function
      to define the filter.
      
      In script `plot_snapshot.py`, accept a triplet of shapefiles without
      `ishape_last.txt`.
      
      Add a test for program `test_get_snapshot` where one of the processes
      does a reception in procedure `get_snapshot`.
      
      Bug fix in main unit `test_get_snapshot`: we send and receive date k.
      d07eaadf
    • Lionel GUEZ's avatar
      Four dates in `Input/Region_1/SHP_triplet_noise` · c0fbe3c3
      Lionel GUEZ authored
      Add script for concatenation of triplets of shapefiles.
      
      Generalize script `plot_snapshot.py` to read a single date in a
      triplet of shapefiles containing several dates.
      
      Bug fix in `Tests/CMakeLists.txt`: missing source file.
      
      Include four dates in `Tests/Input/Region_1/SHP_triplet_noise`, in
      preparation for a test with `test_get_snapshot`. Main unit
      `test_nearby_extr` must then read the number of shapes for the first
      date in `ishape_last.txt`.
      c0fbe3c3
  6. Mar 05, 2020
    • Lionel GUEZ's avatar
      Generalize main unit `test_get_snapshot` · e1aa5bcc
      Lionel GUEZ authored
      Prepare for a run of `test_get_snapshot` which receives a
      snapshot. Generalize main unit `test_get_snapshot`: it is now
      parallelized; it reads a date index from stdin; it sends a snapshot
      from process 1 to process 0 if it is run with 2 processes.
      
      The logic of the overlap program will be that all processes access the
      triplet of input shapefiles. So modify subroutine
      `read_field_indices`: process 0 reads field indices and broadcasts
      them. This implies that programs `test_overlap`, `test_read_snapshot`
      and `test_read_eddy` use MPI.
      
      Generalize `algorithm.py`.
      
      In program `test_send_recv`, read input SHP triplet from command line
      instead of requiring it to be present in the current directory with
      the name `SHP_triplet_old`. Generalize `test_send_recv`: read
      `ishape_last` from file. In `test_send_recv`, all processes must now
      access the triplet of shapefiles since process 0 reads field
      indices. For the sake of uniformity, read and broadcast k1 from
      process 0.
      e1aa5bcc
  7. Feb 18, 2020
    • Lionel GUEZ's avatar
      First compilation and test of `get_snapshot` · 29ee10af
      Lionel GUEZ authored
      First compilation and test of procedure `get_snapshot`. Change order
      of dummy arguments of procedure `get_snapshot`: make it more
      convenient for call with keywords. Replace dummy arguments periodic
      and `dist_lim` by dummy argument copy. Add dummy arguments
      `ishape_last` and k1. Promote `hshp_extremum`, `hshp_outermost`,
      `hshp_max_speed` from local variables to dummy arguments.
      
      In program `test_read_snapshot`, read input SHP triplet from command
      line instead of requiring it to be present in the current directory
      with the name `SHP_triplet_old`.
      
      Remove directory `Tests/Input/Region_1/SHP_triplet`, which was not used.
      29ee10af
    • Lionel GUEZ's avatar
      Make date index `intent(in)` in `read_snapshot` · 7e9c066b
      Lionel GUEZ authored
      Change of idea: make date index an intent in argument of procedure
      `read_snapshot`. Replace dummy arguments `ishape_first` and scalar
      `ishape_last` by k1 and array `ishape_last`. It is now the task of
      `read_snapshot` to find the ishapes to read. This seems clearer.
      7e9c066b
    • Lionel GUEZ's avatar
      Replace `contents.csv` by `ishape_last.txt` · 67346265
      Lionel GUEZ authored
      Change of idea: instead of storing `date_index` and `ishape_last` in a
      file `contents.csv`, store only `ishape_last` in a file
      `ishape_last.txt`. The `date_index` column was useless and it
      complicated reading the file. The first value of `date_index` can be
      read from one of the three DBF files. Also, to roll with the flow, let
      the lower bound of `ishape_last` in main unit `test_overlap` be 1
      instead of k1.
      
      Change order of actual arguments of `dbf_read_attribute_03` following
      revision of `Shapelib_03`.
      67346265
  8. Feb 07, 2020
    • Lionel GUEZ's avatar
      Bug fix: rank of MPI processes is 0-based · bf3c1053
      Lionel GUEZ authored
      Bug fix in procedure `dispatch_snapshot`: the rank of MPI processes is 0-based.
      
      Bug fix: remove `extr_map_outermost.nc`, which was not used since
      commit ad420d25.
      bf3c1053
    • Lionel GUEZ's avatar
      Use SHP triplets with several snapshots · d023fd3f
      Lionel GUEZ authored
      Organize better the directory `Input`: create sub-directories for regions.
      
      Big change: use SHP triplets that can contain several snapshots. So
      program `test_overlap` reads a single SHP triplet. The dates that
      `test_overlap` should read are now specified in the input
      namelist. SHP triplet directory must now contain a file named
      `contents.csv`. `test_overlap` reads `contents.csv` into variables k1
      and `ishape_last`. So there is no longer any need to read the number
      of entities in one of the shapefiles.
      
      For each region, concatenate SHP triplets for dates 2006/01/01 and
      2006/01/02.
      
      Read namelist from process 0 in program `test_send_recv`: it is
      simpler since it is the default setting of mpiexec and I do not see
      any drawback.
      
      In programs `test_read_snapshot` and `test_send_recv`, just hard code
      for now the ishapes we want to read in the SHP triplet.
      d023fd3f
  9. Jan 28, 2020
    • Lionel GUEZ's avatar
      Generalize `read_snapshot` · d18ad095
      Lionel GUEZ authored
      Generalize `read_snapshot`. Add dummy argments `ishape_first` and
      `ishape_last`. This allows getting a snaphot from a triplet of
      shapefiles containing several snapshots. Consequence: move the call to
      `shp_get_info_03` from `read_snapshot` to `test_overlap`,
      `test_read_snapshot` and `test_send_recv`.
      
      Remove opening and closing of shapefiles from procedure
      `get_snapshot`. Since a triplet of shapefiles can contain several
      snapshots, we do not want to open and close the same shapefiles
      several times from the same MPI process.
  10. Jan 10, 2020
    • Lionel GUEZ's avatar
      Complete `send_snapshot` and `recv_snapshot` · 9fb56f5f
      Lionel GUEZ authored
      Pass argument copy to `read_snapshot` rather than arguments periodic
      and `dist_lim`. Motivation: do not recompute copy at each call of
      `read_snapshot`. `read_snapshot` is going to be called many times in
      overlap program, with always the same value of copy. And we do not
      need the values of periodic and `dist_lim` separately in
      `read_snapshot`.
      
      Complete `send_snapshot` and `recv_snapshot` by sending and receiving
      an entire snapshot. So we need nlon, nlat and copy in `recv_snapshot`
      to allocate `extr_map`. It is better to pass arguments nlon, nlat and
      copy than sending and receiving the shape of `extr_map` with MPI, of
      course, since the shape is the same for all snapshots. In program
      `test_send_recv`, write the entire received snaphot.
      
      Bug fix in `Tests/CMakeLists.txt`: several targets missed
      `${netcdff_INCLUDE_DIR}`.
      
      Create procedure `write_snapshot` from code in main program
      `test_read_snapshot`, because we need to do this also in program
      `test_send_recv`. Note the dissymmetry with `read_snapshot`, which
      does not include the opening and closing of the shapefiles. That is
      because we anticipate calling `read_snapshot` several times with the
      same shapefiles in program overlap.
      
      Change order of dummy arguments of procedure `write_extr_map`. More
      convenient for calling it with keywords from `write_snapshot`.
      9fb56f5f
    • Lionel GUEZ's avatar
      Simplify cmake files · 4ca261bb
      Lionel GUEZ authored
      Simplify cmake files, taking advantage of improved packaging of
      libraries. This also much simplifies the configuration process: the
      user typically has only two directories to specify: `CMAKE_PREFIX_PATH` and
      `fortrangis_INCLUDE_DIR`. Also `Shapelib_03` no longer depends on EZMPI,
      since revision 129a0cc.
      
      Add test for `test_send_recv`.
      4ca261bb
  11. Dec 26, 2019
    • Lionel GUEZ's avatar
      Send and receive a whole eddy in `test_send_recv` · 0b01c42f
      Lionel GUEZ authored
      We need the dummy version of EZMPI for sequential programs linking
      with `Shapelib_03`.
      
      Replace `include_directories` by `target_include_directories` in
      `Tests/CMakeLists.txt`. Motivation: some targets do no use ezmpi. This
      implies adding directories to `target_include_directories` for
      `extraction_eddies`.
      
      In `send_snapshot` and `recv_snapshot`, send and receive a whole
      eddy. Read and write a snapshot in `test_send_recv`.
      0b01c42f
  12. Dec 19, 2019
    • Lionel GUEZ's avatar
      Use library EZMPI · a9f5fa95
      Lionel GUEZ authored
      In procedures `recv_snapshot` and `send_snapshot`, use library EZMPI
      instead of MPI directly.
      
      Rename `receive_snapshot` to `recv_snapshot` for consistency with MPI
      calls. In procedure `send_snapshot`, invert order of dummy arguments
      tag and dest for consistency with MPI calls.
      a9f5fa95
  13. Dec 18, 2019
    • Lionel GUEZ's avatar
      Begin `receive_snapshot` and `send_snapshot` · f2cb5757
      Lionel GUEZ authored
      Fill in procedures `receive_snapshot` and `send_snapshot`. This is
      just a beginning with part of an eddy. Add test program.
      f2cb5757
    • Lionel GUEZ's avatar
      Improve `get_snapshot` · 9adf5c7a
      Lionel GUEZ authored
      hsp arguments in procedure `read_snapshot` can be declared with
      `intent(in)` since they are `intent(in)` in `read_eddy` since commit d815bf76.
      
      Bug fixes in procedure `get_snapshot`: remove duplicated declaration
      of nlon, nlat; add argument `dist_lim`, which must be passed to `read_snapshot`.
      
      In procedure `get_snapshot`, read the triplet of shapefiles from a
      directory named with the date index (for the now moment, we will see
      later for something more efficient). Check that the date index in the
      shapefiles is the date index required.
      
      In procedure `get_var`, take advantage of new procedure `nf95_get_missing`.
      9adf5c7a
  14. Nov 20, 2019
  15. Oct 30, 2019
  16. Oct 28, 2019
  17. Oct 04, 2019
    • Lionel GUEZ's avatar
      Generalize `eddy_dump.py` · 8c9b7b72
      Lionel GUEZ authored
      In script `eddy_dump.py`, do not assume that there is a single date
      index. So find ishape by iterating through values of date index and
      eddy index.
      
      Add a test of overlap in `short_tests.json`.
      8c9b7b72
  18. Oct 03, 2019
    • Lionel GUEZ's avatar
      Bug fixes in `test_overlap` · e8a607ef
      Lionel GUEZ authored
      In procedure `write_eddy`, no need of special treatment for
      interpolated eddy: the outermost contours and max-speed contours are
      defined as null.
      
      Read name of input file on the command line in script `read_overlap.py`.
      
      Add tests with program `test_overlap` in `short_tests.json`.
      
      Bug fix in main unit `test_overlap`: we have to call
      `init_interpolated_eddy`.  In main unit `test_overlap`, change the
      initial value of `flow(2:max_delta)%number_eddies` for more clarity in
      the results. Bug fix in main unit `test_overlap`: valid isolated
      eddies of snasphot 2 are in `flow(max_delta + 1)`, not `flow(2)`.
      e8a607ef
  19. Oct 01, 2019
    • Lionel GUEZ's avatar
      Generalize `test_successive_overlap` · 51c86d55
      Lionel GUEZ authored
      Rename `test_successive_overlap` to `test_overlap`: we will also use
      it for non-successive overlap. Accordingly, add an input variable
      `max_delta` and change the size of flow to `max_delta` + 1. We read
      from snapshots `flow(1)` and `flow(max_delta + 1)`. For
      `flow(2:max_delta)`, we only need to define the component
      `number_eddies`.
      51c86d55
  20. Sep 27, 2019
  21. Sep 24, 2019
    • Lionel GUEZ's avatar
      Add tests for program `test_write_overlap` · 63016959
      Lionel GUEZ authored
      Change the order of dummy arguments of `write_overlap`.
      
      Add tests for program `test_write_overlap`. In program
      `test_write_overlap`, make the eddy identifiers distinct.
      63016959
    • Lionel GUEZ's avatar
      Create procedure `init_interpolated_eddy` · 9a4eaaa4
      Lionel GUEZ authored
      Create procedure `init_interpolated_eddy` so that initialization is
      not repeated needlessly at each call of `write_overlap`. (Problem was
      mentioned in message of commit 10f339d2.)
      9a4eaaa4
    • Lionel GUEZ's avatar
      Use `SHP_triplet` instead of Snapshot · 69200aca
      Lionel GUEZ authored
      Use `SHP_triplet` instead of Snapshot for the name of the directory
      containing the three shapefiles extremum, `outermost_contour` and
      `max_speed_contour`. This is meant as a general name, analogous to a
      new file type. Generally, the shapefiles may contain eddies at
      different dates, not just a snapshot.
      69200aca
Loading