Skip to content
Snippets Groups Projects
Commit 63016959 authored by Lionel GUEZ's avatar Lionel GUEZ
Browse files

Add tests for program `test_write_overlap`

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.
parent 9a4eaaa4
No related branches found
No related tags found
No related merge requests found
......@@ -4,10 +4,14 @@ then
exit 1
fi
set -xe
set -e
for shapefile in extremum outermost_contour max_speed_contour
do
echo
echo "dbfdump $1/$shapefile:"
dbfdump $1/$shapefile
echo
echo "shpdump $1/$shapefile:"
shpdump $1/$shapefile
done
&main_nml k = 4, delta = 3,
COORD_EXTR_1(1) = 6.2,
coord_extr_2 = 0.1, 1.,
ssh_extr_2 = 1., m = 1 /
&main_nml k = 3, delta = 2,
COORD_EXTR_1(1) = 6.2,
coord_extr_2 = 0.1, 1.,
ssh_extr_2 = 1., m = 1 /
......@@ -333,5 +333,17 @@
"title": "Write_overlap_different",
"stdin_filename" : "$src_dir/Tests/Input/write_overlap_different_nml.txt",
"description" : "Non-successive overlap with different coordinates and ssh."
},
{
"args": ["$src_dir/mkdir_run.sh", "$build_dir/test_write_overlap"],
"title": "Write_overlap_shifting",
"stdin_filename" : "$src_dir/Tests/Input/write_overlap_shifting_nml.txt",
"description" : "Non-successive overlap with different coordinates and ssh, and shifting in longitude."
},
{
"args": ["$src_dir/mkdir_run.sh", "$build_dir/test_write_overlap"],
"title": "Write_overlap_delta_3",
"stdin_filename" : "$src_dir/Tests/Input/write_overlap_delta_3_nml.txt",
"description" : "Different coordinates and ssh, shifting in longitude, delta = 3."
}
]
......@@ -12,13 +12,13 @@ program test_write_overlap
implicit none
integer unit_edgelist, j_interp
integer:: k = 2, delta = 1
integer:: k = 2, delta = 1, m = 0
real:: coord_extr_1(2) = [0., 0.], coord_extr_2(2) = [0., 0.] ! in rad
real:: ssh_extr_1 = 0., ssh_extr_2 = 0.
TYPE(shpfileobject) hshp_extremum ! shapefile extremum
TYPE(shpfileobject) hshp_outermost ! shapefile outermost_contour
TYPE(shpfileobject) hshp_max_speed ! shapefile max_speed_contour
namelist /main_nml/ k, delta, coord_extr_1, ssh_extr_1, coord_extr_2, &
namelist /main_nml/ k, delta, m, coord_extr_1, ssh_extr_1, coord_extr_2, &
ssh_extr_2
!-------------------------------------------------------------------------
......@@ -41,10 +41,10 @@ program test_write_overlap
call init_shapefiles(hshp_extremum, hshp_outermost, hshp_max_speed)
call init_interpolated_eddy
call write_overlap(hshp_extremum, hshp_outermost, hshp_max_speed, &
unit_edgelist, k, delta, i1 = 1, i2 = 1, &
i_interp = [(1, j_interp = 1, delta - 1)], cyclone = .true., &
coord_extr_1 = coord_extr_1, ssh_extr_1 = ssh_extr_1, &
coord_extr_2 = coord_extr_2, ssh_extr_2 = ssh_extr_2, m = 0, w = 0.)
unit_edgelist, k, delta, i1 = 1, i2 = 2, m = m, &
i_interp = 10 + [(j_interp, j_interp = 1, delta - 1)], &
cyclone = .true., coord_extr_1 = coord_extr_1, ssh_extr_1 = ssh_extr_1, &
coord_extr_2 = coord_extr_2, ssh_extr_2 = ssh_extr_2, w = 0.)
close(unit_edgelist)
print *, 'Created file "edgelist.csv".'
CALL shpclose(hshp_extremum)
......
......@@ -116,13 +116,13 @@ contains
= flow(j - delta + 1:j - 1)%number_eddies + 1
call write_overlap(hshp_extremum, hshp_outermost, &
hshp_max_speed, unit_edgelist, k, delta, i1, i2, &
hshp_max_speed, unit_edgelist, k, delta, i1, i2, m, &
flow(j - delta + 1:j - 1)%number_eddies, &
flow(j - delta)%list_vis(i1)%cyclone, &
flow(j - delta)%list_vis(i1)%coord_extr, &
flow(j - delta)%list_vis(i1)%ssh_extr, &
flow(j)%list_vis(i2)%coord_extr, &
flow(j)%list_vis(i2)%ssh_extr, m, &
flow(j)%list_vis(i2)%ssh_extr, &
weight(flow(j - delta)%list_vis(i1), &
flow(j)%list_vis(i2)))
flow(j - delta)%list_vis(i1)%delta_out = delta
......
......@@ -10,10 +10,11 @@ module write_overlap_m
contains
subroutine write_overlap(hshp_extremum, hshp_outermost, hshp_max_speed, &
unit_edgelist, k, delta, i1, i2, i_interp, cyclone, coord_extr_1, &
ssh_extr_1, coord_extr_2, ssh_extr_2, m, w)
unit_edgelist, k, delta, i1, i2, m, i_interp, cyclone, coord_extr_1, &
ssh_extr_1, coord_extr_2, ssh_extr_2, w)
! Writes edges and interpolated eddy between (k - delta, i1) and (k, i2).
! Writes edges and interpolated eddies between (k - delta, i1) and
! (k, i2).
! Libraries:
use nr_util, only: twopi
......@@ -26,12 +27,12 @@ contains
TYPE(shpfileobject), intent(in):: hshp_outermost
! shapefile outermost_contour
TYPE(shpfileobject), intent(in):: hshp_max_speed ! shapefile x_speed_contour
TYPE(shpfileobject), intent(in):: hshp_max_speed
! shapefile max_speed_contour
integer, intent(in):: unit_edgelist ! logical unit for edgelist file
integer, intent(in):: k ! date index
integer, intent(in):: delta
integer, intent(in):: i1
integer, intent(in):: i2
integer, intent(in):: delta, i1, i2, m
integer, intent(in):: i_interp(:) ! (delta - 1)
logical, intent(in):: cyclone
real, intent(in):: coord_extr_1(:) ! (2)
......@@ -41,7 +42,6 @@ contains
! (Note: value attribute not allowed for an array.)
real, intent(in):: ssh_extr_2
integer, intent(in):: m
real, intent(in):: w
! Local:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment