diff --git a/Overlap/Tests/test_get_dispatch_snap.f90 b/Overlap/Tests/test_get_dispatch_snap.f90 index 3a0a1c3cbe30010cec74a37797273deca398f045..9fabee31537cd446a96d8d4b15f2838468294be6 100644 --- a/Overlap/Tests/test_get_dispatch_snap.f90 +++ b/Overlap/Tests/test_get_dispatch_snap.f90 @@ -75,6 +75,13 @@ program test_get_dispatch_snap if (periodic) call assert(2 * dist_lim * step(1) < 180., & "test_get_dispatch_snap dist_lim") copy = merge(dist_lim, 0, periodic) + end if + + call shpc_open(hshp, trim(shpc_dir), rank, pszaccess = "rb") + + if (rank == 0) then + call dbf_read_attribute_03(d_init, hshp%extremum, hshp%extr_date, & + ishape = 0) call read_column(ishape_last, & file = trim(shpc_dir) // "/ishape_last.txt") n_dates = size(ishape_last) @@ -92,9 +99,6 @@ program test_get_dispatch_snap call ezmpi_bcast(n_dates, root = 0) if (rank /= 0) allocate(ishape_last(n_dates)) call ezmpi_bcast(ishape_last, root = 0) - call shpc_open(hshp, trim(shpc_dir), rank, pszaccess = "rb") - if (rank == 0) call dbf_read_attribute_03(d_init, hshp%extremum, & - hshp%extr_date, ishape = 0) call ezmpi_bcast(d_init, root = 0) k_begin = d_init + (rank * n_dates) / n_proc diff --git a/Overlap/Tests/test_overlap.f90 b/Overlap/Tests/test_overlap.f90 index d48ff4f704c70bc8a98d96bcc407d75b4130bbca..27d3f2db0425aad472435ded98eec983a926287c 100644 --- a/Overlap/Tests/test_overlap.f90 +++ b/Overlap/Tests/test_overlap.f90 @@ -66,13 +66,13 @@ program test_overlap corner = corner_deg * deg_to_rad step = step_deg * deg_to_rad allocate(flow(max_delta + 1)) + call shpc_open(hshp, trim(shpc_dir), rank = 0, pszaccess = "rb") + call dbf_read_attribute_03(d_init, hshp%extremum, hshp%extr_date, ishape = 0) call read_column(ishape_last, file = trim(shpc_dir) // "/ishape_last.txt") n_dates = size(ishape_last) call assert(d_init <= [k_test_1, k_test_2] .and. [k_test_1, k_test_2] & < d_init + n_dates, "test_overlap k_test_1, k_test_2") e_overestim = maxval([ishape_last(1) + 1, ediff1d(ishape_last)]) - call shpc_open(hshp, trim(shpc_dir), rank = 0, pszaccess = "rb") - call dbf_read_attribute_03(d_init, hshp%extremum, hshp%extr_date, ishape = 0) open(unit, file = "node_id_param.json", status = "replace", & action = "write") write(unit, fmt = *) '{"e_overestim": ', e_overestim, '}' diff --git a/Overlap/Tests/test_send_recv.f90 b/Overlap/Tests/test_send_recv.f90 index 658e63f2ab7484d77e286c48778385af12e37793..fe160df0f3417b810853f617047baa91107727d4 100644 --- a/Overlap/Tests/test_send_recv.f90 +++ b/Overlap/Tests/test_send_recv.f90 @@ -84,6 +84,13 @@ program test_send_recv if (periodic) call assert(2 * dist_lim * step_deg(1) < 180., & "test_send_recv dist_lim") copy = merge(dist_lim, 0, periodic) + end if + + call shpc_open(hshp, trim(shpc_dir), rank, pszaccess = "rb") + + if (rank == 0) then + call dbf_read_attribute_03(d_init, hshp%extremum, hshp%extr_date, & + ishape = 0) call read_column(ishape_last, & file = trim(shpc_dir) // "/ishape_last.txt") n_dates = size(ishape_last) @@ -98,9 +105,6 @@ program test_send_recv if (rank == 1) allocate(ishape_last(n_dates)) call ezmpi_bcast(ishape_last, root = 0) - call shpc_open(hshp, trim(shpc_dir), rank, pszaccess = "rb") - if (rank == 0) call dbf_read_attribute_03(d_init, hshp%extremum, & - hshp%extr_date, ishape = 0) call ezmpi_bcast(d_init, root = 0) if (rank == 1) call read_snapshot(s, hshp, nlon, nlat, d_init, k = d_init, & corner = corner_deg * deg_to_rad, step = step_deg * deg_to_rad, & diff --git a/Overlap/eddy_graph.f90 b/Overlap/eddy_graph.f90 index e75db8acff11bd8db292e989cb3edf9b48e2ba00..11d536ce7c41f56964d524c23f905799b1aa975e 100644 --- a/Overlap/eddy_graph.f90 +++ b/Overlap/eddy_graph.f90 @@ -91,6 +91,13 @@ program eddy_graph if (periodic) call assert(2 * dist_lim * step_deg(1) < 180., & "eddy_graph dist_lim") copy = merge(dist_lim, 0, periodic) + end if + + call shpc_open(hshp, trim(shpc_dir), rank, pszaccess = "rb") + + if (rank == 0) then + call dbf_read_attribute_03(d_init, hshp%extremum, hshp%extr_date, & + ishape = 0) call read_column(ishape_last, & file = trim(shpc_dir) // "/ishape_last.txt", last = n_dates) if (n_dates == huge(0)) n_dates = size(ishape_last) @@ -115,10 +122,6 @@ program eddy_graph if (rank /= 0) allocate(ishape_last(n_dates)) call ezmpi_bcast(ishape_last, root = 0) call ezmpi_bcast(e_overestim, root = 0) - - call shpc_open(hshp, trim(shpc_dir), rank, pszaccess = "rb") - if (rank == 0) call dbf_read_attribute_03(d_init, hshp%extremum, & - hshp%extr_date, ishape = 0) call ezmpi_bcast(d_init, root = 0) if (rank == 0) then