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

Pass `extr%coord_proj` to `set_max_speed`

Avoiding a repeated computation.
parent 73bcbfda
No related branches found
No related tags found
No related merge requests found
......@@ -138,9 +138,9 @@ program test_set_max_speed
call shpclose(hshp)
call create_cont_list
call set_max_speed(e%speed_cont, e%max_speed, cont_list, cont_list_proj, &
n_cont, e%extr%coord, ssh(llc(1):urc(1), llc(2):urc(2)), &
u(llc(1):urc(1), llc(2):urc(2)), v(llc(1):urc(1), llc(2):urc(2)), &
corner_window, step)
n_cont, e%extr%coord, real(e%extr%coord_proj), &
ssh(llc(1):urc(1), llc(2):urc(2)), u(llc(1):urc(1), llc(2):urc(2)), &
v(llc(1):urc(1), llc(2):urc(2)), corner_window, step)
call close_cont_list
call shpc_create(hshpc, shpc_dir = "SHPC", cyclone = cyclone, slice = 0, &
grid_lon_lat = .true.)
......
......@@ -118,7 +118,8 @@ contains
! Done restricting field
call set_max_speed(speed_cont, max_speed, cont_list, cont_list_proj, &
n_cont, extr%coord, ssh(llc(1):urc(1), llc(2):urc(2)), &
n_cont, extr%coord, real(extr%coord_proj), &
ssh(llc(1):urc(1), llc(2):urc(2)), &
u(llc(1):urc(1), llc(2):urc(2)), &
v(llc(1):urc(1), llc(2):urc(2)), corner_window, step)
end if
......
......@@ -5,7 +5,7 @@ module set_max_speed_m
contains
subroutine set_max_speed(speed_cont, max_speed, cont_list, cont_list_proj, &
n_cont, extr_coord, ssh, u, v, corner, step)
n_cont, extr_coord, extr_coord_proj, ssh, u, v, corner, step)
! This procedure defines speed_cont and max_speed. On return,
! speed_cont may be a null ssh contour and max_speed may be set to
......@@ -72,6 +72,9 @@ contains
real, intent(in):: extr_coord(:)
! (2) longitude and latitude of extremum , in rad
real, intent(in):: extr_coord_proj(:) ! (2)
! coordinates of extremum in projection space
real, intent(in):: ssh(:, :), u(:, :), v(:, :)
! The domain should be the bounding box of out_cont, because we do
! not exclude other extrema.
......@@ -86,12 +89,11 @@ contains
! Local:
real, allocatable:: speed(:) ! (n_cont) speed on the contour
integer i, i_outer, ishape
real corner_proj(2), extr_coord_proj(2)
real corner_proj(2)
!---------------------------------------------------------------
corner_proj = (corner - corner_whole) / step + 1.
extr_coord_proj = (extr_coord - corner_whole) / step + 1.
i_outer = n_cont
if (n_cont >= 2) call complete_ssh(cont_list_proj%ssh, n_cont)
......
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