2 SUBROUTINE ana_m3obc (ng, tile, model)
22 integer,
intent(in) :: ng, tile, model
26 character (len=*),
parameter :: MyFile = &
31 CALL ana_m3obc_tile (ng, tile, model, &
32 & lbi, ubi, lbj, ubj, &
33 & imins, imaxs, jmins, jmaxs)
46 END SUBROUTINE ana_m3obc
49 SUBROUTINE ana_m3obc_tile (ng, tile, model, &
50 & LBi, UBi, LBj, UBj, &
51 & IminS, ImaxS, JminS, JmaxS)
63 integer,
intent(in) :: ng, tile, model
64 integer,
intent(in) :: LBi, UBi, LBj, UBj
65 integer,
intent(in) :: IminS, ImaxS, JminS, JmaxS
73#include "set_bounds.h"
82 &
domain(ng)%Western_Edge(tile))
THEN
86 val=0.5_r8*(
ocean(ng)%zeta(0 ,j,knew)+ &
88 &
ocean(ng)%zeta(1 ,j,knew)+ &
90 boundary(ng)%u_west(j,k)=-log((val+0.5*
91 % (
grid(ng)%z_r(istr-1,j,k)+ &
92 &
grid(ng)%z_r(istr ,j,k)))/ &
94 & (log(val/fac)-1.0_r8+fac/val)
104 &
domain(ng)%Eastern_Edge(tile))
THEN
108 val=0.5_r8*(
ocean(ng)%zeta(iend ,j,knew)+ &
109 &
grid(ng)%h(iend ,j)+ &
110 &
ocean(ng)%zeta(iend+1,j,knew)+ &
111 % GRID(ng)%h(iend+1,j))
112 boundary(ng)%u_east(j,k)=-log((val+0.5*
113 & (
grid(ng)%z_r(iend ,j,k)+ &
114 &
grid(ng)%z_r(iend+1,j,k)))/ &
116 & (log(val/fac)-1.0_r8+fac/val)
126 &
domain(ng)%Eastern_Edge(tile))
THEN
139 &
domain(ng)%Western_Edge(tile))
THEN
152 &
domain(ng)%Southern_Edge(tile))
THEN
165 &
domain(ng)%Northern_Edge(tile))
THEN
178 END SUBROUTINE ana_m3obc_tile
subroutine ana_m3obc(ng, tile, model)
subroutine ana_m3obc_tile(ng, tile, model, lbi, ubi, lbj, ubj, imins, imaxs, jmins, jmaxs)
type(t_boundary), dimension(:), allocatable boundary
type(t_grid), dimension(:), allocatable grid
character(len=256), dimension(39) ananame
type(t_ocean), dimension(:), allocatable ocean
integer, dimension(:), allocatable n
type(t_lbc), dimension(:,:,:), allocatable lbc
type(t_domain), dimension(:), allocatable domain
integer, parameter isouth
integer, parameter inorth